资源描述:
《fatfs sd卡底层程序之图片显示》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、FATFsSD卡底层程序之图片显示硬件环境:DAXIA32学习板STM32F103VC72MHz编程环境:MDK3.80a主程序://***********************************************************************************//*函数名称:MAIN//*功 能:从SD卡读BMP图片并显示//*编 写:Bunagi//*修 改:2010/9/4//**************************************************************************
2、*********intmain(void){ FATFSfs;DIRdir;FILfil;FILINFOfno;FRESULTres;charBuf[512];u8i;charFilSearchCount[10][13];//文件名检索存放ChipHalInit();ChipOutHalInit();Lcd_Init();TFT_X=0;TFT_Y=0;BG_COLOR=WHITE;TFTFill(WHITE);SysTickDelay(1000);TFTShowString16(TFT_X,TFT_Y,"图片显示测试",RED);while(!GET_DOWN());TFT
3、_X=0;TFT_Y=0;TFTFill(BLACK);//************************************************f_mount(0,&fs);if(!FilSearch(&fs,&dir,"","BMP",FilSearchCount)){ TFTShowString16(TFT_X,TFT_Y,"检索目录失败!",RED); while(1);}else{ for(i=0;i<10;i++) { if(FilSearchCount[i][0]!=0) { TFTShowString16(TFT_X,TFT_Y,&FilSea
4、rchCount[i][0],RED); TFT_Y+=16; } }}for(;;){ for(i=0;i<10;i++) { if(FilSearchCount[i][0]!=0) if(!BMPDisp(&fil,&dir,&fno,&FilSearchCount[i][0],&Buf,239,319)) TFTShowString16(TFT_X,TFT_Y,"打开图片失败!",RED); while(!GET_DOWN()); } TFT_X=0; TFT_Y=0; TFTShowString16(TFT_X,TFT_Y,"图片已播放结
5、束!",RED); while(!GET_UP());}while(1);}//***********************************************************************************//*函数名称:NameCompare//*功 能:字符串比较比较0X2E前的字符(文件名比较)//*输入参数:str1,str2//*输出参数:TRUE两字符串相同 FALSE两字符串不同//*编 写:Bunagi//*修 改:2010/9/4//****************************************
6、*******************************************boolNameCompare(u8*str1,u8*str2){u8i=13;u8flag;while(--i){ if(str1[i]==0x2e)flag=i;}for(i=0;i7、ad//*功 能:读SD卡里BMP文件的头512字节数据,并填充进BMP信息数据结构里//*输入参数:bfinfo//* binfo//* Buf//*输出参数:无//*编 写:Bunagi//*修 改:2010/9/4//***********************************************************************************