打印

关于单片机串口中断问题,请教。

[复制链接]
2424|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lidake|  楼主 | 2012-6-14 16:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 lidake 于 2012-6-15 09:20 编辑

大家好,如题。

不知道大家有没有遇到一种情况,就是单片机做“中转站”,把接收到的数据再发出去。

当然我知道可以用扫描的方法实现。

但是今天我试验了,用中断的方法,大意是接收到一组数据后,在接收中断中直接调用2个处理数据的函数,数据处理完毕,又在接收中断里,启动了发送中断。我这样试验后,发现时不时的会死机,而且有时数据处理明显不正确(因为处理后的结果都一样了!)。

请问,确实不能这样写吗?

其实我是想问,在接收中断里调用一些函数,并且在接收中断没有退出的情况下,申请发送中断,会偶尔造成死机和正常函数数据不对(结果固定)(函数绝对没问题,拿到中断外就一切OK)等现象吗?

相关帖子

沙发
jin1song| | 2012-6-14 16:55 | 只看该作者
在主程序中用查询方式试试。

使用特权

评论回复
板凳
ningling_21| | 2012-6-14 20:17 | 只看该作者
应该是程序的问题...

使用特权

评论回复
地板
lidake|  楼主 | 2012-6-15 09:17 | 只看该作者
你的意思是,单片机中,接收中断未完全退出的时候,申请发送中断是可以的? 3# ningling_21

使用特权

评论回复
5
lidake|  楼主 | 2012-6-15 09:19 | 只看该作者
其实我是想问,在接收中断里调用一些函数,并且在接收中断没有退出的情况下,申请发送中断,会偶尔造成死机等现象吗? 2# jin1song

使用特权

评论回复
6
ningling_21| | 2012-6-15 10:35 | 只看该作者
你的意思是,单片机中,接收中断未完全退出的时候,申请发送中断是可以的? 3# ningling_21
lidake 发表于 2012-6-15 09:17


只要串口是全双工的,发送和接收可以同时进行互不影响...

使用特权

评论回复
7
lidake|  楼主 | 2012-6-16 10:28 | 只看该作者
会不会是中断嵌套,然后又调用函数引起的问题??? 6# ningling_21

使用特权

评论回复
8
mage心寒| | 2012-6-16 10:35 | 只看该作者
发送不要用中断,接收用中断就好了。。

使用特权

评论回复
9
lidake|  楼主 | 2012-6-16 10:56 | 只看该作者
是这样的,我这里对接收过来的数据很铭感,希望接收完毕后,在没执行其他语句前,马上就发出去,所以,我就把发送中断申请在接收中断里面了。为了接收中断完毕后,不走其他语句,马上发送。 8# mage心寒

使用特权

评论回复
10
lidake|  楼主 | 2012-6-17 13:31 | 只看该作者
自己顶一下,希望大家多发言,多交流。

使用特权

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

本版积分规则

14

主题

90

帖子

0

粉丝