打印

串口部分单独拿出来调通放入整个程序不行

[复制链接]
1000|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yinxiangh|  楼主 | 2015-1-8 21:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

写程序时,把串口部分单独拿出来调通后 才放入整个程序与其他部分融合,单独调试串口时 收发都正确,但是放到整个程序中,只能连续发送数据 不能连续接收数据
沙发
yinxiangh|  楼主 | 2015-1-8 21:26 | 只看该作者
只有软件复位一次,才能接收到一个数据,否则接收不到数据

使用特权

评论回复
板凳
pangb| | 2015-1-8 21:27 | 只看该作者
接收用队列处理
中断接收直接入队列...

使用特权

评论回复
地板
yinxiangh|  楼主 | 2015-1-8 21:27 | 只看该作者
队列处理什么意思呀 现在情况是 不管是否接受到数据 都没有进入到接收中断中 但是仿真器显示接收中断标志位为1,发送就可以进入中断

使用特权

评论回复
5
chenjunt| | 2015-1-8 21:28 | 只看该作者
状态机都会搞  串口却没有搞好?

使用特权

评论回复
6
ousj| | 2015-1-8 21:29 | 只看该作者
2楼说的是类似modbus方法吧?

使用特权

评论回复
7
morrisk| | 2015-1-8 21:30 | 只看该作者
我就知道有个0x86 0x68的串行发送包 自己做的数据传输

使用特权

评论回复
8
yinxiangh|  楼主 | 2015-1-8 21:30 | 只看该作者
可能是某些部分影响串口 使他的接收标志位一直置1 不能清零 而且所发送的数据已经进入缓存区了 但是找不出是哪部分

使用特权

评论回复
9
zyf部长| | 2015-1-8 21:31 | 只看该作者
我也遇到了这样的问题,采用中断接受一个字节发送一个字节,但是接受了一个字节却连续发送,鼓捣了好几天

使用特权

评论回复
10
小小猫咪| | 2015-1-8 21:31 | 只看该作者
仔细检查程序,重点分析你的程序逻辑是否有BUG

使用特权

评论回复
11
kangzj| | 2015-1-8 21:33 | 只看该作者
应该是程序有小问题,LZ那么多事情都过了,这个应该不是问题了吧

使用特权

评论回复
12
zwll| | 2015-1-8 21:34 | 只看该作者
变量 或者标志位 用过之后 没清零吧 我也犯过此类错误

使用特权

评论回复
13
chuxh| | 2015-1-8 21:35 | 只看该作者
可以把串口的那部分程序放上来

使用特权

评论回复
14
juventus9554| | 2015-1-8 21:35 | 只看该作者
你可以连接上“RS232串口数据采集及分析器”,从电脑上查看到线路上跑的数据对不对,问题出在哪,同时还可用这个查看一下你的时序是否正确。

使用特权

评论回复
15
yinxiangh|  楼主 | 2015-1-8 21:36 | 只看该作者
好的,我明白了

使用特权

评论回复
16
yinxiangh|  楼主 | 2015-1-8 21:36 | 只看该作者
结贴啦

使用特权

评论回复
17
hnkf118| | 2015-1-10 16:03 | 只看该作者
软件问题。 没从整体上 分配资源。单独调试通过,不一定等于整个项目里面就能正常使用。这个是要花点时间来钻的。希望你成功

使用特权

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

本版积分规则

723

主题

7134

帖子

2

粉丝