打印

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

[复制链接]
2246|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 | 只看该作者
一般串口中断有“发送空”“发送完成”。前者刚把数据填入发送寄存器并开始物理发送起始位;后者物理发送停止位完成

使用特权

评论回复
5
android2| | 2018-10-27 22:13 | 只看该作者
方空为低电平代表起始位,发送完成为高电平代表停止位吗?

使用特权

评论回复
6
拉克丝| | 2018-10-27 22:24 | 只看该作者
贴一下串口发送代码就知道了

使用特权

评论回复
7
lefeng| | 2018-10-27 22:28 | 只看该作者
最后一个数值在硬件上测为什么不对呢

使用特权

评论回复
8
kkzz| | 2018-11-1 22:24 | 只看该作者
发送的数据量很小?

使用特权

评论回复
9
hudi008| | 2018-11-1 22:25 | 只看该作者
发送缓冲区的数据溢出

使用特权

评论回复
10
lzmm| | 2018-11-1 22:25 | 只看该作者
在每一个字符发送后检测状态位

使用特权

评论回复
11
minzisc| | 2018-11-1 22:25 | 只看该作者
硬件复位了?

使用特权

评论回复
12
selongli| | 2018-11-1 22:26 | 只看该作者
串口发送必须先检测状态

使用特权

评论回复
13
fentianyou| | 2018-11-1 22:26 | 只看该作者
必须检测发送状态是否完成

使用特权

评论回复
14
xiaoyaodz| | 2018-11-1 22:26 | 只看该作者
也许是因为某个特殊原因,使第二个数据覆盖了

使用特权

评论回复
15
febgxu| | 2018-11-1 22:27 | 只看该作者
通讯数据错误?

使用特权

评论回复
16
sdlls| | 2018-11-1 22:27 | 只看该作者
楼主的代码呢?

使用特权

评论回复
17
pixhw| | 2018-11-1 22:27 | 只看该作者
不好判断是什么问题

使用特权

评论回复
18
selongli| | 2018-11-1 22:27 | 只看该作者
否则第一个字节无法发出

使用特权

评论回复
19
kkzz| | 2018-11-1 22:27 | 只看该作者
通信波特率有关

使用特权

评论回复
20
minzisc| | 2018-11-1 22:27 | 只看该作者
保证首个数据发送时,不出现覆盖的情况。

使用特权

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

本版积分规则

155

主题

703

帖子

1

粉丝