2812 SciA能正常发送但是不能接收
用2812和迪文的工业串口屏通信,目前的情况是我同时用了SciA和SciB,SciB接收外部数据,SciA和串口屏通信,现在2812把数据发送给串口屏功能正常,但是不能接收它发回来的信息,我用标志位检测了,接收的子程序运行了,但是SciA接收缓冲寄存器里面没有接收到。初始化中接收已经使能了的,请教大神这可能是什么原因? SCIB可以正常接收吗?两个对比一下。 JY-DX-JY 发表于 2016-9-30 09:52SCIB可以正常接收吗?两个对比一下。
SciB可以正常接收,它们的区别在于,SciB只是接收不发送,而SCIA既接收又发送。还有SCIB接收的是字符型,SCIA接收的是HEX十六进制 JY-DX-JY 发表于 2016-9-30 09:52
SCIB可以正常接收吗?两个对比一下。
而且SCIA和SCIB初始化也是一模一样的 感觉不应该呀。你说的那些应该不影响的,我感觉应该还有其他原因。 JY-DX-JY 发表于 2016-9-30 11:02
感觉不应该呀。你说的那些应该不影响的,我感觉应该还有其他原因。
我对比了一下串口屏的数据格式和SCIA的格式是一样的,格式这块应该没什么问题,而且SCIA的发送和接收我也都是分开了的 Mr5Tao 发表于 2016-9-30 11:01
而且SCIA和SCIB初始化也是一模一样的
怎么能一模一样呢。还有SCIA的那两个引脚也要初始化为复用功能吧 首先直接屏连上电脑,直接用串口调试助手接手屏发的数据,看是否能正常收到;然后2812的scia和scib,直接连电脑,电脑直接发送数据看2812是否能接收到;然后判断是哪里出了问题,我估计是你程序那里初始化设置有问题,方便贴出代码 JY-DX-JY 发表于 2016-9-30 11:11
怎么能一模一样呢。还有SCIA的那两个引脚也要初始化为复用功能吧
这个我已经做了的,我的意思是功能设置都是一样的,代码肯定不一样的 长的帅怪我落 发表于 2016-9-30 11:24
首先直接屏连上电脑,直接用串口调试助手接手屏发的数据,看是否能正常收到;然后2812的scia和scib,直接连 ...
这个办法可以一试,放假了,节后试试,谢谢指点。 Mr5Tao 发表于 2016-9-30 15:24
这个办法可以一试,放假了,节后试试,谢谢指点。
现在才30号,才下午3点30.怎么就放假了!!拉仇恨是不是 建议先找个很简单的工程就是实现2812串口的自发自收
上位机串口助手下发命令 2812收到后上发给上位机
这个功能实现了 问题就解决了 参考我的分享
https://bbs.21ic.com/icview-1010062-1-1.html 长的帅怪我落 发表于 2016-9-30 15:31
现在才30号,才下午3点30.怎么就放假了!!拉仇恨是不是
呵呵,要放假了,没心思上班了嘛,就差不多就等于下班了呗 zhangmangui 发表于 2016-9-30 22:24
参考我的分享
https://bbs.21ic.com/icview-1010062-1-1.html
谢谢分享,感觉里面很多东西都值得我学习 zhangmangui 发表于 2016-9-30 22:22
建议先找个很简单的工程就是实现2812串口的自发自收
上位机串口助手下发命令 2812收到后上发给上位机
...
正在逐步寻找问题所在,感觉上也是某个细节没注意,应该问题不大 Mr5Tao 发表于 2016-10-8 10:49
正在逐步寻找问题所在,感觉上也是某个细节没注意,应该问题不大
解决了记得分享哦 zhangmangui 发表于 2016-10-8 21:51
解决了记得分享哦
我现在用电脑串口助手通过RS232和DSP是可以实现通信的,就是用串口助手发,让DSP接收,DSP可以接收,但是困扰我的只能在程序固化后在线仿真的时候才能正常接收,去掉仿真器后就不能正常接受了,不知道是什么原因 zhangmangui 发表于 2016-10-8 21:51
解决了记得分享哦
我看了你以前关于这个问题的帖子,整个程序里面我没有用Delay延时,都是用的定时器控制的 zhangmangui 发表于 2016-10-8 21:51
解决了记得分享哦
而且,我的问题是烧写到FLASH以后再仿真正常,断掉仿真器直接运行就不行
页:
[1]
2