用ch340c,在9600波特率下(再高就无法正常接收)。
接口置'1'
等待接收'0'
等待定时器标志位
接收8位数据到数组
等待定时器标志位
等待接收'1'
循环接收10个字节
把接收到的数据发送出去(发送函数绝对正确)
模拟接收,就是不知道两个字节之间到底是不是2进制'1'连接起来的,我接收到的数据中间数据对但ch340发过来数据头和尾不对,头应该是0尾应该是1但是乱码了
追答两个字节之间的空闲时间为1。模拟串口接收的波特率很难控制准确,利用定时器定时方法需要用中断,可中断也会带来误差,波特率再高确实就难做了。
这是作业要求的吗,必须要模拟串口接收,即麻烦又难做,何苦呢,有现成的串口不用,图什么?