DSP进行SCI串口通信最后一个数据丢失

[复制链接]
hudi008 发表于 2018-11-1 22:27 | 显示全部楼层
数据还未及时发送出去,新的数据又把发送缓冲区的老数据覆盖了
pixhw 发表于 2018-11-1 22:28 | 显示全部楼层
硬件还是软件的问题呢?
lzmm 发表于 2018-11-1 22:28 | 显示全部楼层
等待发送缓冲区空才能发送下一个字符
sdlls 发表于 2018-11-1 22:28 | 显示全部楼层
串口是不是有问题呢?
febgxu 发表于 2018-11-1 22:28 | 显示全部楼层
这个有什么问题吗?
xiaoyaodz 发表于 2018-11-1 22:28 | 显示全部楼层
这个你的代码怎么编写的呢?
fentianyou 发表于 2018-11-1 22:28 | 显示全部楼层
单步调试运行可以吗?
ruhwa 发表于 2018-12-4 10:04 | 显示全部楼层
我是初学者 也遇到了一样的问题
   p=send_str;
   while(*p!='\0')
   {
        
          
                SciaRegs.SCITXBUF = *p;               
                while(SciaRegs.SCICTL2.bit.TXRDY == 0)
                {
                }
            p++;
               
   }
因为没有确认发送缓冲器和移位寄存器都为空 只是检测TXRDY是否为0 所以最后一位总会丢掉
改成 while((SciaRegs.SCICTL2.bit.TXRDY == 0)||(SciaRegs.SCICTL2.bit.TXEMPTY==0)) 问题解决了 希望有所参考
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部