用P89C669串口连接CH376, 使用mInitCH376Host()这个函数初始化时, 发现初始化不成功.
一步步的调试, 发现uchar duCH376_DATA(void)这个函数没有读到数据, 求分析问题出在哪里?
mInitCH376Host()这个函数前两步是先写CMD11_CHECK_EXIST, 再写0x65, 这个过程对不?
用P89C669串口连接CH376, 使用mInitCH376Host()这个函数初始化时, 发现初始化不成功.
一步步的调试, 发现uchar duCH376_DATA(void)这个函数没有读到数据, 求分析问题出在哪里?
mInitCH376Host()这个函数前两步是先写CMD11_CHECK_EXIST, 再写0x65, 这个过程对不?
用P89C669串口连接CH376, 使用mInitCH376Host()这个函数初始化时, 发现初始化不成功.
一步步的调试, 发现uchar duCH376_DATA(void)这个函数没有读到数据, 求分析问题出在哪里?
mInitCH376Host()这个函数前两步是先写CMD11_CHECK_EXIST, 再写0x65, 这个过程对不?
mInitCH376Host() 已经包含你说的那两个步骤了。直接在主函数调用即可。
UINT8mInitCH376Host( void ) /* 初始化CH376 */
{
UINT8res;
CH376_PORT_INIT( ); /* 接口硬件初始化 */
xWriteCH376Cmd( CMD11_CHECK_EXIST ); /* 测试单片机与CH376之间的通讯接口 */
xWriteCH376Data( 0x65 );
res = xReadCH376Data( );
//xEndCH376Cmd( ); // 并口方式不需要
if ( res != 0x9A ) return( ERR_USB_UNKNOWN ); /* 通讯接口不正常,可能原因有:接口连接异常,其它设备影响(片选不唯一),串口波特率,一直在复位,晶振不工作 */
xWriteCH376Cmd( CMD11_SET_USB_MODE ); /* 设备USB工作模式 */
xWriteCH376Data( 0x05 );
mDelayuS( 20 );
res = xReadCH376Data( );
//xEndCH376Cmd( ); // 并口方式不需要
if ( res == CMD_RET_SUCCESS ) return( USB_INT_SUCCESS );
else return( ERR_USB_UNKNOWN ); /* 设置模式错误 */
}
另外,应用例程沁恒已经给出了,直接拿过来改就好了,不用自己多做繁琐的处理。刚才所说的函数在para_hw.c里,例程在沁恒官网直接搜索CH376,找到相关的EVT.ZIP文件下载即可