[求助]关于CH376读过程的疑问~~挺多问题,希望study可以帮忙解决下

我对CH376本次编程的思路是采用串口中断,像检测U盘是否在线,初始化U盘,写U盘,创建文件等一系列都已解决(自认为已解决),但是读文件的过程中遇到了问题

问题如下: 1.提供的函数中有一个中断确认函数,如果是异步串口中断方式连接的话,所给函数是根据RI判断是否中断,如果有RI=1则确认有中断,然后将RI=0..相当于就是检测串口中断,既然有串口中断,必然会有接收到的数据,该数据有意义没? 2.读块函数中我写完CMD01_RD_USB_DATA0命令后,随即在中断中将接收到的数据放入缓冲区,其中第一个数为块长度,其他为接收到的实际数据,当实际接收到的数据个数等于第一个数的大小时关闭串口中断,思路就是这样,但是,读到的数据长度是正确的,但是随后读出的数据个数不对,我写的函数要求读某一文件(大小肯定大于200字节)200字节,但是,就只读了62个数CH376就不在发送数据了~~~

我头快炸了,请高手帮忙解决下,如果我的思路不对的话,请求高手指出,以便于我改正,谢谢

1. 当CH376产生中断的时候,在INT引脚拉低的同时串口会返回一个状态码,该状态码只作为一个中断标志,没有其他意义,当单片机接收到该数据的时候 表示有中断产生,单片机要把自身的串口接收标志清除掉。避免以后影响接收数据。 2. 单片机在接收CH376返回的数据块时,一定不要做其他的事情,否则会丢数据,除非串口使用的是中断方式接收。


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