找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7613|回复: 5
打印 上一主题 下一主题
收起左侧

单片机定时器中断和串口中断的问题!

[复制链接]
跳转到指定楼层
楼主
ID:157612 发表于 2017-1-4 12:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
51单片机电子钟程序中,我想用串口通讯发送PC时间给单片机受时,用串口中断接收数据,如2017-01-014 WEN 10:00:00,我用串口助手把上述数据发过去,得到的数据有长有短,无法正确受时,我试了一下,发现:如果定时器中断(读取DS1302数据并显示在1602上)或串口中断(接受受时并写在DS1302内)内的语句多的,就会出现这种情况, 请问如何解决!

评分

参与人数 1黑币 +5 收起 理由
开发组 + 5 很给力!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩

相关帖子

回复

使用道具 举报

沙发
ID:7485 发表于 2017-1-4 18:59 | 只看该作者
中断里面尽量少放内容,否则如果中断内的程序运行时又产生中断就会混乱。
回复

使用道具 举报

板凳
ID:1 发表于 2017-1-5 01:10 | 只看该作者
把你的程序发上来看看!!
回复

使用道具 举报

地板
ID:157877 发表于 2017-1-5 08:52 | 只看该作者
程序问题把
回复

使用道具 举报

5#
ID:324374 发表于 2018-9-22 21:43 | 只看该作者
在51单片机默认的中断优先级里串口中断的优先级在定时器的后面,在你执行串口中断时,你的T0,T1定时器可能会将串口中断打断,使串口中断时数据接收受到影响,数据就会丢失,或者产生乱码。解决方法:可以试一下将串口中断的优先级调高。具体程序修正:添加PS=1;语句在你的定时器初始化里。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

6#
ID:387733 发表于 2018-9-23 08:22 | 只看该作者
不是非要在中断里面完成的任务尽量不要放在中断内,有些可以在中断内设置标志,在中断外处理
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表