本帖最后由 小小步伐 于 2017-5-4 22:21 编辑 要发送的数据为 AA 05 17 FF FF FF FF 18 55 而我的串口发送的数据为 54 05 17 FF FF FF FF 18 55 发送过程中关闭了中断也没有用, 第一个字节有问题, 有哪位大神知道什么原因? |
是第一次,还是每次都是这样? |
仔细检查下程序,感觉刚开始多发了个0 |
模拟串口?肯定是你时序没写对。也没不贴源码,咋给你分析错误 |
签到签到,模拟串口 很多年前用51做过 |
发送前先清空发送标志位 |
初始化完模拟串口,先发个0试试 |
模拟串口?肯定是你时序没写对。 |
后面都没有问题就主要检查初始化什么的了 |
先发送一位无用数据,如何. |
AA 变成 54 从二进制分析 你应该 是 1010 1010 变成 0101 0100 , 从表面上分析 应该是丢了1位 ,相当于左移一位. 高位移走 低位补0 ,第一字节起始位没有处理好 |
模拟串口?肯定是你时序没写对 |
初始化完成后先清除SR1寄存器的TC位 |
解决了没啊,我也碰到一样的问题。只在单片机复位后第一次发送的时候第一个字节发生错误,以后发送全部正常 |