久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
MCU+FATFS讀出W25Q32數(shù)據(jù)后如何處理?
[打印本頁]
作者:
ringhui
時間:
2020-10-12 23:44
標(biāo)題:
MCU+FATFS讀出W25Q32數(shù)據(jù)后如何處理?
我使用的時W25Q32,目前把STATIC_CONFIG[]里面的內(nèi)容存儲在config.ini中,然后讀出來的時ASC碼,我想把ASC碼轉(zhuǎn)為對應(yīng)的文字信息,比如我想讀取前面幾個字符是不是"ADDR",目前只能使用if(read_buffer[ i]==0x41&&read_buffer[i+1]==0x44&&read_buffer[i+2]==0x44),請問怎樣轉(zhuǎn)化為對應(yīng)的字符串.[ i]
我使用了網(wǎng)上的CharToHex(unsigned char bHex)的MCU程序讀出來也無法直接使用.
下面是我的程序,求助大神幫我解決一下.
/////////////////////////////////////////////////////////////////////
//函 數(shù) 名:HexToChar()
//功能描述:把16進制轉(zhuǎn)換為ASCII字符
//函數(shù)說明:
//調(diào)用函數(shù):
//全局變量:
//輸 入:16進制
//返 回:ASCII字符
/////////////////////////////////////////////////////////////////////
unsigned char HexToChar(unsigned char bChar)
{
if((bChar>=0x30)&&(bChar<=0x39))
{
bChar -= 0x30;
}
else if((bChar>=0x41)&&(bChar<=0x46))//大寫字母
{
bChar -= 0x37;
}
else if((bChar>=0x61)&&(bChar<=0x66))//小寫字母
{
bChar -= 0x57;
}
else
{
bChar = 0xff;
}
return bChar;
}
int main(void)
{
FIL fil; //文件對象
static FRESULT res; //FRESULT函數(shù)公共結(jié)果代碼
char write_buffer[512]; //寫文件緩沖區(qū)
char read_buffer[512]; //讀文件緩沖區(qū)
UINT counter;
u8 i=0;
u8 j=0;
char k;
u8 key=0;
u16 temp=0;
u32 dtsize,dfsize;
u8 table[512];
u8 STATIC_CONFIG[]="ADDR:1|SOUND:ON|CODE:123456|VER:V1.00";
Board_Init();
System_Init();
menu_flag=0;
SPI_Flash_Init();
if(exfuns_init())
{
LCD12864_ShowString(0,0,"FATFS Memory Error!\0");
}
res=f_mount(1,fs[1]); //掛載FLASH.
do
{
temp++;
res=exf_getfree("1:",&dtsize,&dfsize);//得到FLASH剩余容量和總?cè)萘?br /> delay_ms(200);
}while(res&&temp<20);//連續(xù)檢測20次
if(res==0X0D)//文件系統(tǒng)不存在
{
LCD12864_ShowString(0,0,"Flash Disk Formatting...\0"); //格式化FLASH
res=f_mkfs(1,1,4096);//格式化FLASH,1,盤符;1,不需要引導(dǎo)區(qū),8個扇區(qū)為1個簇
if(res==0)
{
LCD_CLR();
LCD12864_ShowString(0,0, "OK");//標(biāo)志格式化成功
res=exf_getfree("1:",&dtsize,&dfsize);//重新獲取容量
}
}
if(res!=FR_OK)
{
while(1)
{
LCD_CLR();
delay_ms(200);
LCD12864_ShowString(0,1,"FATFS ERROR\0");
delay_ms(200);
};
}
res = f_open(&fil,"1:config.ini",FA_READ | FA_WRITE | FA_OPEN_EXISTING); //打開驅(qū)動器0上的源文件
if(res == FR_NO_FILE) //如果文件不存在則新建文件
{
res = f_open(&fil,"1:config.ini",FA_READ | FA_WRITE | FA_OPEN_ALWAYS);
if(res == FR_OK)
{
res = f_lseek(&fil,0);
if(res != FR_OK)
{
LCD_CLR();
LCD12864_ShowString(0,1,"f_lseek ERROR\0");
while(1);
}
res = f_write(&fil,STATIC_CONFIG,(sizeof(STATIC_CONFIG)-1),&counter); //將緩沖器中的內(nèi)容寫入源文件
if(res!=FR_OK || counter==0)
{
LCD_CLR();
LCD12864_ShowString(0,1,"f_write ERROR\0");
while(1);
}
}
}
res = f_lseek(&fil,0); //移動讀指針到文件首
res = f_read(&fil,read_buffer,50,&counter);
if(res != FR_OK || counter == 0)
{
LCD_CLR();
LCD12864_ShowString(0,1,"f_read ERROR\0");
while(1);
}
f_close(&fil);
LCD_CLR();
// for(i=0;i<counter;i++)
// {
// table[ i]=HexToChar(read_buffer[ i]);
// }
k=HexToChar(read_buffer[0]);
for(i=0;i<counter;i++)
{
if(read_buffer[ i]==0x41&&read_buffer[i+1]==0x44&&read_buffer[i+2]==0x44)
// if(k=="A")
{
for(j=0;j<4;j++)
{
TIM_Cmd(TIM4, ENABLE);
while(1);
}
;
}
}
while(1)
{
;
}
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国内精品视频一区二区三区
|
亚洲性爰
|
午夜黄色影院
|
日本又色又爽又黄又高潮
|
日本中文在线
|
国产精品99久久久久久宅男
|
国产福利在线免费观看
|
成年免费大片黄在线观看一级
|
欧美日韩亚洲国产
|
欧美中文一区
|
国产精品大片在线观看
|
国产精品96久久久久久
|
操操网站
|
国产精品成人品
|
2一3sex性hd
|
亚洲在线高清
|
欧美黑人一区二区三区
|
国产91久久久久
|
亚洲视频二区
|
福利网址
|
国产1区2区在线观看
|
久久精品在线
|
奇米久久久
|
久久99深爱久久99精品
|
欧美一区二区三区在线播放
|
国产精品免费小视频
|
国产成人免费视频
|
伊人久久国产
|
国产精品亚洲欧美日韩一区在线
|
天天爽夜夜骑
|
日本电影免费完整观看
|
天天色综网
|
激情黄色在线观看
|
精品一区二区三区免费毛片
|
天天干成人网
|
91久久精品一区
|
亚洲成人综合在线
|
亚洲电影第三页
|
成人黄在线观看
|
涩涩视频在线观看
|
av影音在线
|