打印
[DSP编程]

2812 SciA能正常发送但是不能接收

[复制链接]
3803|32
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Mr5Tao|  楼主 | 2016-9-30 09:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用2812和迪文的工业串口屏通信,目前的情况是我同时用了SciA和SciB,SciB接收外部数据,SciA和串口屏通信,现在2812把数据发送给串口屏功能正常,但是不能接收它发回来的信息,我用标志位检测了,接收的子程序运行了,但是SciA接收缓冲寄存器里面没有接收到。初始化中接收已经使能了的,请教大神这可能是什么原因?

相关帖子

沙发
JY-DX-JY| | 2016-9-30 09:52 | 只看该作者
SCIB可以正常接收吗?两个对比一下。

使用特权

评论回复
板凳
Mr5Tao|  楼主 | 2016-9-30 10:59 | 只看该作者
JY-DX-JY 发表于 2016-9-30 09:52
SCIB可以正常接收吗?两个对比一下。

SciB可以正常接收,它们的区别在于,SciB只是接收不发送,而SCIA既接收又发送。还有SCIB接收的是字符型,SCIA接收的是HEX十六进制

使用特权

评论回复
地板
Mr5Tao|  楼主 | 2016-9-30 11:01 | 只看该作者
JY-DX-JY 发表于 2016-9-30 09:52
SCIB可以正常接收吗?两个对比一下。

而且SCIA和SCIB初始化也是一模一样的

使用特权

评论回复
5
JY-DX-JY| | 2016-9-30 11:02 | 只看该作者
感觉不应该呀。你说的那些应该不影响的,我感觉应该还有其他原因。

使用特权

评论回复
6
Mr5Tao|  楼主 | 2016-9-30 11:05 | 只看该作者
JY-DX-JY 发表于 2016-9-30 11:02
感觉不应该呀。你说的那些应该不影响的,我感觉应该还有其他原因。

我对比了一下串口屏的数据格式和SCIA的格式是一样的,格式这块应该没什么问题,而且SCIA的发送和接收我也都是分开了的

使用特权

评论回复
7
JY-DX-JY| | 2016-9-30 11:11 | 只看该作者
Mr5Tao 发表于 2016-9-30 11:01
而且SCIA和SCIB初始化也是一模一样的

怎么能一模一样呢。还有SCIA的那两个引脚也要初始化为复用功能吧

使用特权

评论回复
8
长的帅怪我落| | 2016-9-30 11:24 | 只看该作者
首先直接屏连上电脑,直接用串口调试助手接手屏发的数据,看是否能正常收到;然后2812的scia和scib,直接连电脑,电脑直接发送数据看2812是否能接收到;然后判断是哪里出了问题,我估计是你程序那里初始化设置有问题,方便贴出代码

使用特权

评论回复
9
Mr5Tao|  楼主 | 2016-9-30 15:21 | 只看该作者
JY-DX-JY 发表于 2016-9-30 11:11
怎么能一模一样呢。还有SCIA的那两个引脚也要初始化为复用功能吧

这个我已经做了的,我的意思是功能设置都是一样的,代码肯定不一样的

使用特权

评论回复
10
Mr5Tao|  楼主 | 2016-9-30 15:24 | 只看该作者
长的帅怪我落 发表于 2016-9-30 11:24
首先直接屏连上电脑,直接用串口调试助手接手屏发的数据,看是否能正常收到;然后2812的scia和scib,直接连 ...

这个办法可以一试,放假了,节后试试,谢谢指点。

使用特权

评论回复
11
长的帅怪我落| | 2016-9-30 15:31 | 只看该作者
Mr5Tao 发表于 2016-9-30 15:24
这个办法可以一试,放假了,节后试试,谢谢指点。

现在才30号,才下午3点30.怎么就放假了!!拉仇恨是不是

使用特权

评论回复
12
zhangmangui| | 2016-9-30 22:22 | 只看该作者
建议先找个很简单的工程  就是实现2812串口的自发自收
上位机串口助手下发命令   2812收到后上发给上位机
这个功能实现了    问题就解决了

使用特权

评论回复
13
zhangmangui| | 2016-9-30 22:24 | 只看该作者

使用特权

评论回复
14
Mr5Tao|  楼主 | 2016-10-6 23:11 | 只看该作者
长的帅怪我落 发表于 2016-9-30 15:31
现在才30号,才下午3点30.怎么就放假了!!拉仇恨是不是

呵呵,要放假了,没心思上班了嘛,就差不多就等于下班了呗

使用特权

评论回复
15
Mr5Tao|  楼主 | 2016-10-8 10:47 | 只看该作者
zhangmangui 发表于 2016-9-30 22:24
参考我的分享
https://bbs.21ic.com/icview-1010062-1-1.html

谢谢分享,感觉里面很多东西都值得我学习

使用特权

评论回复
16
Mr5Tao|  楼主 | 2016-10-8 10:49 | 只看该作者
zhangmangui 发表于 2016-9-30 22:22
建议先找个很简单的工程  就是实现2812串口的自发自收
上位机串口助手下发命令   2812收到后上发给上位机
...

正在逐步寻找问题所在,感觉上也是某个细节没注意,应该问题不大

使用特权

评论回复
17
zhangmangui| | 2016-10-8 21:51 | 只看该作者
Mr5Tao 发表于 2016-10-8 10:49
正在逐步寻找问题所在,感觉上也是某个细节没注意,应该问题不大

解决了记得分享哦

使用特权

评论回复
18
Mr5Tao|  楼主 | 2016-10-10 14:12 | 只看该作者
zhangmangui 发表于 2016-10-8 21:51
解决了记得分享哦

我现在用电脑串口助手通过RS232和DSP是可以实现通信的,就是用串口助手发,让DSP接收,DSP可以接收,但是困扰我的只能在程序固化后在线仿真的时候才能正常接收,去掉仿真器后就不能正常接受了,不知道是什么原因

使用特权

评论回复
19
Mr5Tao|  楼主 | 2016-10-10 15:26 | 只看该作者
zhangmangui 发表于 2016-10-8 21:51
解决了记得分享哦

我看了你以前关于这个问题的帖子,整个程序里面我没有用Delay延时,都是用的定时器控制的

使用特权

评论回复
20
Mr5Tao|  楼主 | 2016-10-10 15:50 | 只看该作者
zhangmangui 发表于 2016-10-8 21:51
解决了记得分享哦

而且,我的问题是烧写到FLASH以后再仿真正常,断掉仿真器直接运行就不行

使用特权

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

本版积分规则

5

主题

86

帖子

0

粉丝