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

[复制链接]
1435|27
手机看帖
扫描二维码
随时随地手机跟帖
Varus|  楼主 | 2018-10-27 20:49 | 显示全部楼层 |阅读模式
最近在做两个dsp进行SCI串口通信,通过422总线通信,现在问题是DSP程序中发送缓冲寄存器SCITXBUF中的数值(即DSP发送的最后一个数)和DSP --MAX488的发送引脚信号的最后一值不一样,也就是软件发送的最后一个数据和硬件发送的最后一个数据不一样,硬件发送的最后一个数据始终为FF,之前调试也遇到过最后一个数据丢失的问题(就是1号DSP给2号DSP发数,2号DSP少接收一个数),请问有做过类似的或者有知道的不呢

相关帖子

zhangmangui| | 2018-10-27 21:00 | 显示全部楼层
你最好先确定一下是发送端没发出来还是接收端丢了数       我觉得应该是发送端没发出来

使用特权

评论回复
zhangmangui| | 2018-10-27 21:01 | 显示全部楼层
你排查一下代码     SCI硬件不存在问题      不行自发自收测试一下DSP端

使用特权

评论回复
Snow7| | 2018-10-27 21:08 | 显示全部楼层
一般串口中断有“发送空”“发送完成”。前者刚把数据填入发送寄存器并开始物理发送起始位;后者物理发送停止位完成

使用特权

评论回复
android2| | 2018-10-27 22:13 | 显示全部楼层
方空为低电平代表起始位,发送完成为高电平代表停止位吗?

使用特权

评论回复
拉克丝| | 2018-10-27 22:24 | 显示全部楼层
贴一下串口发送代码就知道了

使用特权

评论回复
lefeng| | 2018-10-27 22:28 | 显示全部楼层
最后一个数值在硬件上测为什么不对呢

使用特权

评论回复
kkzz| | 2018-11-1 22:24 | 显示全部楼层
发送的数据量很小?

使用特权

评论回复
hudi008| | 2018-11-1 22:25 | 显示全部楼层
发送缓冲区的数据溢出

使用特权

评论回复
lzmm| | 2018-11-1 22:25 | 显示全部楼层
在每一个字符发送后检测状态位

使用特权

评论回复
minzisc| | 2018-11-1 22:25 | 显示全部楼层
硬件复位了?

使用特权

评论回复
selongli| | 2018-11-1 22:26 | 显示全部楼层
串口发送必须先检测状态

使用特权

评论回复
fentianyou| | 2018-11-1 22:26 | 显示全部楼层
必须检测发送状态是否完成

使用特权

评论回复
xiaoyaodz| | 2018-11-1 22:26 | 显示全部楼层
也许是因为某个特殊原因,使第二个数据覆盖了

使用特权

评论回复
febgxu| | 2018-11-1 22:27 | 显示全部楼层
通讯数据错误?

使用特权

评论回复
sdlls| | 2018-11-1 22:27 | 显示全部楼层
楼主的代码呢?

使用特权

评论回复
pixhw| | 2018-11-1 22:27 | 显示全部楼层
不好判断是什么问题

使用特权

评论回复
selongli| | 2018-11-1 22:27 | 显示全部楼层
否则第一个字节无法发出

使用特权

评论回复
kkzz| | 2018-11-1 22:27 | 显示全部楼层
通信波特率有关

使用特权

评论回复
minzisc| | 2018-11-1 22:27 | 显示全部楼层
保证首个数据发送时,不出现覆盖的情况。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

155

主题

703

帖子

1

粉丝