CH376S讀寫測(cè)試失敗

對(duì)CH376S進(jìn)行復(fù)寫測(cè)試,主要是為了驗(yàn)證讀寫函數(shù)是否正常使用,測(cè)試發(fā)現(xiàn)寫入CHECK_EXIST命令以后再寫入數(shù)據(jù)0xaa,然后進(jìn)行讀取,讀到的數(shù)據(jù)還是0xaa.測(cè)試失敗。命令的返回值應(yīng)該是寫入值的按位取反才對(duì),也就是讀到的數(shù)據(jù)應(yīng)該是0x55。請(qǐng)問(wèn)這可能是什么原因造成的??

? ? xWriteCH376Cmd(CHECK_EXIST);? ? ? ? ??//發(fā)送命令

? ? xWriteCH376Data(0xaa);? ? ? ? ??//寫入數(shù)據(jù)0xaa

? ? temp = xReadCH376Data();? ? ? ? ??//讀取寫入數(shù)據(jù)取反結(jié)果,即0xaa取反應(yīng)為0x55

? ? if(temp == 0x55) printf("測(cè)試工作狀態(tài):成功\n");//打印測(cè)試結(jié)果

? ? else printf("測(cè)試工作狀態(tài):失敗%d\n",temp);



你用的是什么通訊接口?發(fā)送命令的時(shí)序?qū)Σ粚?duì)?一般命令執(zhí)行時(shí)間是1.5us,等待1.5us再讀數(shù)據(jù)看看。


并口進(jìn)行通信,我的時(shí)鐘頻率是160M



void xWriteCH376Cmd(unsigned char command)

{


? ? //A0

? ? PIO_USB_A0=1;


? ? //DB DIR output

? ? PIO_USB_DB_DIR=0xff;


? ? PIO_USB_DB=command;

? ? delay();


? ? PIO_USB_CS=0;

? ? PIO_USB_WR=0;

? ? delay();

? ? PIO_USB_WR=1;

? ? PIO_USB_CS=1;


}




/*?

?* === ?FUNCTION ?========================================================

?* ? ? ? ? Name: ?delay

?* ?Description: ?

?* =======================================================================

?*/

void delay(void)

{

? ? int i;

? ? for(i=0;i<100;i++);

}

/*?

?* === ?FUNCTION ?========================================================

?* ? ? ? ? Name: ?xWriteCH376Data

?* ?Description: ?

?* =======================================================================

?*/


void xWriteCH376Data(unsigned char data)

{

? ?//A0

? ?PIO_USB_A0=0;


? ?//DB DIR output

? ?PIO_USB_DB_DIR=0xff;


? ?PIO_USB_DB=data; ??

? ?delay();

? ?PIO_USB_CS=0;

? ?PIO_USB_WR=0;

? ?delay();

? ?PIO_USB_WR=1;

? ?PIO_USB_CS=1;


}




/*?

?* === ?FUNCTION ?========================================================

?* ? ? ? ? Name: ?xReadCH376Data

?* ?Description: ?

?* =======================================================================

?*/


unsigned char xReadCH376Data(void)

{

? ? unsigned char data=0;

? ? ?//A0

? ? PIO_USB_A0=0;

? ??

? ? //DB DIR output

? ? PIO_USB_DB_DIR=0;

? ? PIO_USB_CS=0;

? ? PIO_USB_RD=0;

? ? delay();

? ? data=PIO_USB_DB;

? ? delay();

? ? PIO_USB_RD=1;

? ? PIO_USB_CS=1;


? ? return data;

}



讀寫函數(shù)如下


你的讀寫函數(shù)開(kāi)頭最好初始化一下,例如加上CS=1,RD=1,WR=1;另外你把時(shí)鐘速度放慢一點(diǎn)事實(shí),我之前說(shuō)過(guò)一條命令響應(yīng)時(shí)間至少1.5us,這個(gè)你要保證。


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频