ch395Q在獲取版本號(hào)時(shí),MCU通過串口成功將指令發(fā)送出去,但是CH395不返回?cái)?shù)據(jù)。
1、通過DEBUG軟件連接ch395q,給ch395q發(fā)送獲取版本號(hào)指令,ch395q可以成功返回?cái)?shù)據(jù),請(qǐng)問問題有可能出在哪里?
2、前期波特率MCU設(shè)置為9600了。
ch395Q在獲取版本號(hào)時(shí),MCU通過串口成功將指令發(fā)送出去,但是CH395不返回?cái)?shù)據(jù)。
1、通過DEBUG軟件連接ch395q,給ch395q發(fā)送獲取版本號(hào)指令,ch395q可以成功返回?cái)?shù)據(jù),請(qǐng)問問題有可能出在哪里?
2、前期波特率MCU設(shè)置為9600了。
MCU串口發(fā)送的是16進(jìn)制的0x57+0xAB+0x01嗎?要注意這三個(gè)字節(jié)間的時(shí)間間隔不可以超過40ms,否則這一幀命令碼無效。
手邊有邏輯分析儀的話可以抓個(gè)時(shí)序郵件發(fā)來看一下(郵箱:lq@wch.cn),后續(xù)可郵件交流。
使用的程序是嚴(yán)格按照貴司的程序參考例程來寫的,發(fā)送順序嚴(yán)格執(zhí)行16進(jìn)制的0x57+0xAB+0x01。是不是在程序初始化時(shí)需要通過程序配置SEL 和 TXD 引腳?
我還單獨(dú)測(cè)試了MCU的接收,也是一切正常,單獨(dú)用DEBUG測(cè)試CH395q,一切正常,所以我懷疑是我程序的CH395q代碼初始化有問題?
上電復(fù)位期間,會(huì)檢測(cè)SEL腳和TXD腳,這兩個(gè)腳懸空或加上拉代表選擇串口通信。讀取版本號(hào)的操作和是否初始化無關(guān),只要芯片正常供電工作并且接口模式選擇正確對(duì)應(yīng),就可以讀到版本號(hào)。
因?yàn)镈EBUG395測(cè)試正常,所以唯一不同的就是串口時(shí)序部分,建議抓個(gè)時(shí)序看下。
ch395q的txd引腳和MCU的rxd引腳在PCB上一直是連接的,這個(gè)是不是沒影響?
沒有影響
你好,手頭沒有邏輯分析儀,剛拿示波器抓波形分析了,MCU發(fā)送完3個(gè)字節(jié)的數(shù)據(jù)后,CH395Q返回?cái)?shù)據(jù)了,而且返回的版本號(hào)是0x4A,所以CH395Q應(yīng)該是跑起來了,那就問題出在我的MCU串口接收代碼上了。
版本號(hào)0x4A沒有問題,可以排查下串口接收部分的代碼,我們例程中有串口部分的驅(qū)動(dòng),可以參考下。
也可以把相關(guān)測(cè)試代碼郵件發(fā)來我們這邊協(xié)助看一下。(郵箱:lq@wch.cn)