你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 1164|回复: 0

【stm32系统错误】大家来帮忙看看

[复制链接]

8

主题

49

回帖

0

蝴蝶豆

中级会员

最后登录
2020-1-17
发表于 2013-2-24 00:49:11 | 显示全部楼层 |阅读模式
我写了一个在内存卡中读取数据并发送的程序,程序编译没有任何错误,但是一下载到STM32中串口就发送系统错误的信息。
>>>>>>>>>>>>>>>>>>>>>>>SYSTEM ERROR</pp>>SYSTEM ERRORFileNameLen[1];
 
    Buffer[9]=(unsigned char)Buf->FileName[0];
 Buffer[10]=(unsigned char)Buf->FileName[1];
 Buffer[11]=(unsigned char)Buf->FileName[2];
    Buffer[12]=(unsigned char)Buf->FileName[3];
 Buffer[13]=(unsigned char)Buf->FileName[4];
// LCD_Str_CH_P(240,10,"缓冲区赋值成功",0);
    // LCD_Str_O_P(300, 10, "Buffer ready", 0); 
 f_mount(1,&Datafs);
 Datares=f_open(&Datafsrc,tmp_name,FA_READ);
 if(Datares==FR_OK)
 {
 //LCD_Str_CH_P(260,10,"成功打开文件",0);
 LCD_Str_O_P(300, 10, "openfile", 0);
 for(;;)
 {
     
             //这里分段是从i=0开始
  if(iSegment) //如果分段不满
    {
   j=1000;
  Buffer[14]=j&0x00ff; 
  Buffer[15]=(j>>8)&0x00ff;
  Buffer[16]=Buffer[14];
  Buffer[17]=Buffer[17];
      Datares=f_read(&Datafsrc,&Buffer[18],1000,&mybw);
// USART1_printf(USART1,"%s",Buffer);//发送mms 
   Buffer[5]=i;
   Buffer[5]=i;      //到这里,Buffer的头部分已经准备好了
    }
    if(i==Buf->Segment)  //如果分段满   5,   0,1,2,3,4,5  实际有六段,5段为满1000的,最后一段为不满1000的
  {          //这时候DataLen[0]=5,假如Buffer=5800,那么,满1000的有5段,不满1000的为最后一段
  Buffer[14]=Buf->DataLen[1]&0x00ff; 
  Buffer[15]=(Buf->DataLen[1]>>8)&0x00ff;
  Buffer[16]=Buffer[14];
  Buffer[17]=Buffer[17];
  Datares=f_read(&Datafsrc,&Buffer[18],Buf->DataLen[0],&mybw);
//  USART1_printf(USART1,"%s",Buffer);
  break;
 // for()
  } 
   i++;
  
   }
 }
  f_close(&Datafsrc);
}
 
asvdvcsdv.jpg
回复

使用道具 举报

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版