急!CH376 读不了文件

老大们,我有两个问题哈 一个是,为什么我调用了CH376GetIntStatus()之后,也就是获取中断状态并取消中断请求,但为什么我之后还可以无限次的读到相同的中断状态码呢?

//描述: 获取中断状态并取消中断请求 //名称: CH376GetIntStatus //输入参数: 无 //输出参数: 无 //返回值: u8 -- 中断状态码 //说明: 无 u8 CH376GetIntStatus(void) { u8 u8Temp; xWriteCH376Cmd(CMD01_GET_STATUS); DelayMs(50); u8Temp = xReadCH376Data( ); //xEndCH376Cmd( ); return u8Temp; }

还有一个问题是,调用下面的函数读取文件内容,其他的部分略去(都正常),为什么一直无法读出 CMD01_RD_USB_DATA0 命令 应有的输出数据?读出的数据依旧是调用CMD2H_BYTE_READ返回的中断状态0x1D(此中断状态已用CH376GetIntStatus()读取并取消)? //描述: 从当前主机端点的接收缓冲区读取数据块,返回长度 //名称: CH376ReadBlock //输入参数: pu8Buf -- 数据缓冲器指针 //输出参数: 无 //返回值: u8 -- 数据长度 //说明: 无 u8 CH376ReadBlock(u8 *pu8Buf) { u8 u8Len, u8Temp; xWriteCH376Cmd( CMD01_RD_USB_DATA0 ); u8Len = u8Temp = xReadCH376Data( ); // 获取长度 if (u8Temp) { do { *pu8Buf = xReadCH376Data(); pu8Buf++; }while (--u8Temp); } // xEndCH376Cmd( ); return u8Len; }

先在此谢谢各位大虾了哈

读写文件,我们都提供函数,直接调用就好了,根据硬件连接,修改底层接口,移植我们的例程,最好先不要自己写程序


只有登录才能回复,可以选择微信账号登录