用P89C669串口連接CH376, 使用mInitCH376Host()這個(gè)函數(shù)初始化時(shí), 發(fā)現(xiàn)初始化不成功.
一步步的調(diào)試, 發(fā)現(xiàn)uchar duCH376_DATA(void)這個(gè)函數(shù)沒有讀到數(shù)據(jù), 求分析問題出在哪里?
mInitCH376Host()這個(gè)函數(shù)前兩步是先寫CMD11_CHECK_EXIST, 再寫0x65, 這個(gè)過程對不?
用P89C669串口連接CH376, 使用mInitCH376Host()這個(gè)函數(shù)初始化時(shí), 發(fā)現(xiàn)初始化不成功.
一步步的調(diào)試, 發(fā)現(xiàn)uchar duCH376_DATA(void)這個(gè)函數(shù)沒有讀到數(shù)據(jù), 求分析問題出在哪里?
mInitCH376Host()這個(gè)函數(shù)前兩步是先寫CMD11_CHECK_EXIST, 再寫0x65, 這個(gè)過程對不?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
用P89C669串口連接CH376, 使用mInitCH376Host()這個(gè)函數(shù)初始化時(shí), 發(fā)現(xiàn)初始化不成功.
一步步的調(diào)試, 發(fā)現(xiàn)uchar duCH376_DATA(void)這個(gè)函數(shù)沒有讀到數(shù)據(jù), 求分析問題出在哪里?
mInitCH376Host()這個(gè)函數(shù)前兩步是先寫CMD11_CHECK_EXIST, 再寫0x65, 這個(gè)過程對不?
? ? ? ? ? ?
mInitCH376Host() 已經(jīng)包含你說的那兩個(gè)步驟了。直接在主函數(shù)調(diào)用即可。
UINT8mInitCH376Host( void ) ?/* 初始化CH376 */
{
UINT8res;
CH376_PORT_INIT( ); ?/* 接口硬件初始化 */
xWriteCH376Cmd( CMD11_CHECK_EXIST ); ?/* 測試單片機(jī)與CH376之間的通訊接口 */
xWriteCH376Data( 0x65 );
res = xReadCH376Data( );
//xEndCH376Cmd( ); ?// 并口方式不需要
if ( res != 0x9A ) return( ERR_USB_UNKNOWN ); ?/* 通訊接口不正常,可能原因有:接口連接異常,其它設(shè)備影響(片選不唯一),串口波特率,一直在復(fù)位,晶振不工作 */
xWriteCH376Cmd( CMD11_SET_USB_MODE ); ?/* 設(shè)備USB工作模式 */
xWriteCH376Data( 0x05 );
mDelayuS( 20 );
res = xReadCH376Data( );
//xEndCH376Cmd( ); ?// 并口方式不需要
if ( res == CMD_RET_SUCCESS ) return( USB_INT_SUCCESS );
else return( ERR_USB_UNKNOWN ); ?/* 設(shè)置模式錯(cuò)誤 */
}
另外,應(yīng)用例程沁恒已經(jīng)給出了,直接拿過來改就好了,不用自己多做繁瑣的處理。剛才所說的函數(shù)在para_hw.c里,例程在沁恒官網(wǎng)直接搜索CH376,找到相關(guān)的EVT.ZIP文件下載即可