[STM32F1] 读取SD卡TXT文件,并通过esp8266发送

[复制链接]
3017|54
 楼主| bqyj 发表于 2019-9-1 20:32 | 显示全部楼层 |阅读模式
读取SD卡TXT文件,每次读一个扇区,并通过esp8266发送,但是现在只能发送TXT内容的一半,请问大家遇到过这种情况吗?
 楼主| bqyj 发表于 2019-9-1 20:32 | 显示全部楼层
void  txt_trans(u8 *pname)
{
          FATFS FatFs;   /* Work area (filesystem object) for logical drive */
          UINT brr        ;
    u8 ress;
    FRESULT fr;     /* FatFs return code */
    u8 *databuf;                                //Ò»ÐÐÊý¾Ý»º´æÇøµØÖ·        
        
   
    FIL fil;        /* File object */
    databuf=(u8*)pic_memalloc(512);               

        
    /* Register work area to the default drive */
    f_mount(&FatFs, "", 0);
        
    /* Open a text file */
    fr = f_open(&fil,(const TCHAR*)pname, FA_READ);

    /* Read all lines and display it */
                 
             for (;;)
         {                                                                                                                                
           memset(databuf,0,512);   
                                         ress=f_read(&fil,databuf,512, &brr);  
                                         if(ress==FR_OK)
                                                 {
                                           atk_8266_wifiap_send(databuf);
                                                 }
         
                                         if(f_eof(&fil)) {break;} // over
         }
                        
    /* Close the file */
    f_close(&fil);
          pic_memfree(databuf);         
        
}
 楼主| bqyj 发表于 2019-9-1 20:36 | 显示全部楼层

我发现是 wifi发送数据 函数 的问题,因为我每次都是发送512个字节,但是txt不一定是512的整数。
atk_8266_wifiap_send(databuf);
songqian17 发表于 2019-9-1 20:39 | 显示全部楼层
有统计吗,是发到什么关键字失败了
 楼主| bqyj 发表于 2019-9-1 20:42 | 显示全部楼层
没有特定关键字,就是只能发一半。我发现是 wifi发送数据 函数 的问题,因为我每次都是发送512个字节,但是txt不一定是512的整数。
huwr 发表于 2019-9-1 20:45 | 显示全部楼层

是不是数据太多了。
huanghuac 发表于 2019-9-1 20:47 | 显示全部楼层

以前udp传输txt也是有问题。
 楼主| bqyj 发表于 2019-9-1 20:50 | 显示全部楼层
不太懂。。。
wenfen 发表于 2019-9-1 21:03 | 显示全部楼层
可能数据太大存在问题。
zhuhuis 发表于 2019-9-1 21:06 | 显示全部楼层

UDP传输大小有限制吗,换TCP试试
tian111 发表于 2019-9-1 21:09 | 显示全部楼层

那就每次发512个,然后接着读发送
songqian17 发表于 2019-9-1 21:12 | 显示全部楼层
可能是某个缓存区有有限制。
chenho 发表于 2019-9-1 21:14 | 显示全部楼层

UDP传输大小是多少
chuxh 发表于 2019-9-1 21:19 | 显示全部楼层
那就先发一半呗,或者看看是什么问题
huwr 发表于 2019-9-1 21:21 | 显示全部楼层
不能分开发吗,非要一次发一大串?
songqian17 发表于 2019-9-1 21:24 | 显示全部楼层
发完一组重新装填继续发。
chenho 发表于 2019-9-1 21:26 | 显示全部楼层

把大文件分成小于512的,连续发
gongche 发表于 2019-9-1 21:29 | 显示全部楼层

分开发送不行吗
chenho 发表于 2019-9-1 21:31 | 显示全部楼层

以前见过都是分为1024一个块,然后发送。
wenfen 发表于 2019-9-1 21:36 | 显示全部楼层
怎么情况,先用串口发送试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则

390

主题

4526

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部