完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
小弟菜鸟,初学FatFs,闭门几日略有理解,昨夜便想将原子哥的SD卡读字库存入Flash,结果呢。。。当然是不成功~不知道哪里有错,今天贴出来,大家帮我找找问题啊~理解较浅,代码凌乱,高手勿喷啊,编译提示2个警告,无错误。
const char *folder[2]={"SYSTEM","FONT", }; //系统文件定义const char *sysfile[3]={ "GBK16.FON","GBK12.FON","UNI2GBK.SYS", };//字节0~3, 记录UNI2GBKADDR;字节4~7 ,记录UNI2GBKADDR的大小//字节8~11, 记录FONT16ADDR ;字节12~15,记录FONT16ADDR的大小//字节16~19,记录FONT12ADDR ;字节20~23,记录FONT12ADDR的大小//字体存放,从100K处开始//100K,存放UNICODE2GBK的转换码 u32 FONT16ADDR ;//16字体存放的地址u32 FONT12ADDR ;//12字体存放的地址u32 UNI2GBKADDR;//UNICODE TO GBK 表存放地址 //更新字体文件//返回值:0,更新成功;// 其他,错误代码.//发烧友@ALIENTEK//V1.1#ifdef EN_UPDATE_FONTu8 temp[512]; //零时空间u8 Update_Font(void){BYTE buffer[512];FATFS fs;FIL fl;FRESULT res;UINT r;DIR dir;FILINFO finfo;char dir_patch[50]={""}; TCHAR FILENAME[13];TCHAR FILENAME2[13];TCHAR SYSNAME[13];u8 fileflag=0;u8 fileflag2=0;u8 i;float prog;u8 t;u32 tempsys[2]; //临时记录文件起始位置和文件大小/*u32 fcluster=0; u32 i;//u8 temp[512]; //零时空间 在这里定义,会内存溢出 FileInfoStruct FileTemp;//零时文件夹 */ //得到根目录的簇号f_mount(0,&fs);res = f_opendir(&dir,dir_patch);if(res == FR_OK){while(f_readdir(&dir,&finfo)== FR_OK){if (res != FR_OK || finfo.fname[0] == 0) break;if (finfo.fattrib & AM_DIR){ SYSNAME = finfo.fname;i++; } }} for(i=0;i<13;i++)//循环读出文件名,然后与特定文件名比较匹配,下同{if((const char*)SYSNAME==folder[0]){res = f_opendir(&dir,(TCHAR*)folder[1]);if(res != FR_OK)return 1;else{while(f_readdir(&dir,&finfo)== FR_OK){ if (res != FR_OK || finfo.fname[0] == 0) break; if (finfo.fattrib & AM_ARC) { fileflag = 0; FILENAME = finfo.fname; i++; }}} }else fileflag++;if(fileflag == 13){fileflag = 0;return 2;}} for(i=0;i<13;i++){if((const char*)FILENAME==sysfile[2]){LCD_ShowString(20,90,"Write UNI2GBK to FLASH...");LCD_ShowString(108,110,"%");f_open(&fl,"0:/SYSTEM/FONT/UNI2GBK.SYS",FA_OPEN_EXIStiNG | FA_READ);while(1){res=f_read(&fl,buffer,sizeof(buffer),&r); if(res||r==0) continue; }if(i |
|
相关推荐
1个回答
|
|
仿真器跟踪一下,看看在哪里出错的,对症下药才是,否则一把抓,很难定位.
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1883 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1661 浏览 1 评论
1148 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
762 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1720 浏览 2 评论
1964浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
790浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
614浏览 3评论
631浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
593浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-13 05:27 , Processed in 0.579982 second(s), Total 44, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号