找回密码
 立即注册

QQ登录

只需一步,快速开始

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

单片机定时器和中断不够用怎么办?

  [复制链接]
跳转到指定楼层
楼主
ID:463139 发表于 2019-5-26 05:54 来自触屏版 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
大佬帮我出出主意吧
我芯片用的是stc89c52RC单片机 问:T0用于外部计数中断每1s,T1用于10ms的定时中断数码管刷新,现在还需要wifi通信,那么需要波特率发生器和定时中断,但是定时器只剩下T2了该怎么办?还有51的波特率发生器默认是T1,我知道是可以改的,就是想再确认下。资源不够用我该怎么变通?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:530392 发表于 2019-5-26 10:17 | 只看该作者
用中断查询的方法,不过这个需要另加驱动,直接连肯定是不行的(我试过,当时搞了一晚上没搞出来,血的教训,一定要加驱动!)
回复

使用道具 举报

板凳
ID:94031 发表于 2019-5-26 10:28 | 只看该作者
把波特率发生器用T2,腾出T1干别的用。
回复

使用道具 举报

地板
ID:213173 发表于 2019-5-26 11:17 | 只看该作者
如果对外部计数脉冲频率不是很高不必非得用T0外部计数中断,随便用哪个IO口,在主函数中查询即可。数码管动态刷新也不必非得用定时器精确定时,只要主循环周期基本稳定也可以用计数法计时刷新数码管。
回复

使用道具 举报

5#
ID:56665 发表于 2019-5-26 11:24 | 只看该作者
一个定时中断产生N个软件定时器,用这个办法试试。
回复

使用道具 举报

6#
ID:160500 发表于 2019-5-26 11:32 | 只看该作者
根据自己的需要,把不是必须中断和使用定时器的用软件模拟,必须用中断的做好优先级,相同优先级的通过一个与门接到int端,中断程序里判断是哪个外设请求的中断,做相应处理。定时器只能针对一个事件计数或定时,软件必须针对情况作出判断和处理,实在不能绕开,就换芯片或加外部扩展
回复

使用道具 举报

7#
ID:490330 发表于 2019-5-26 11:57 | 只看该作者
其实可以用两个单片机的。。如果项目允许你可以试试
回复

使用道具 举报

8#
ID:511890 发表于 2019-5-26 16:44 | 只看该作者
中断可以复用呀。比如单倍的中断处理通讯,双倍的中断处理数码管刷新。只需加一个全局变量和一个if语句罢了。还有外部中断也可以考虑。
回复

使用道具 举报

9#
ID:530034 发表于 2019-5-26 18:09 | 只看该作者
不必非得用T0外部计数中断,随便用哪个IO口,在主函数中查询即可。数码管动态刷新也不必非得用定时器精确定时,只要主循环周期基本稳定也可以用计数法计时刷新数码管。
回复

使用道具 举报

10#
ID:530034 发表于 2019-5-26 18:11 | 只看该作者
用两个单片机  就行了
回复

使用道具 举报

11#
ID:45330 发表于 2019-5-26 20:33 | 只看该作者
能做10ms定时,100个10ms就是1s了
回复

使用道具 举报

12#
ID:52944 发表于 2019-5-27 08:40 | 只看该作者
单片机外设不够,换其它单片机啊
回复

使用道具 举报

13#
ID:714012 发表于 2020-5-25 17:53 | 只看该作者
13856449865 发表于 2019-5-26 10:17
用中断查询的方法,不过这个需要另加驱动,直接连肯定是不行的(我试过,当时搞了一晚上没搞出来,血的教训 ...

另加驱动什么意思,要是用Proteus仿真直接按照这个图不可以?
回复

使用道具 举报

14#
ID:401564 发表于 2020-5-26 09:11 | 只看该作者
难道数码管中断不能用T2,一定要用T1吗?
回复

使用道具 举报

15#
ID:319023 发表于 2020-5-26 10:43 | 只看该作者
一个定时器可以用代码处理到N个软件定时器。 或者换功能强大的单片机添加单片机个数。  
回复

使用道具 举报

16#
ID:170800 发表于 2023-11-2 15:50 | 只看该作者
初学入门,但我想思路可以有:统一各定时需求初值基准THL0H、TH0L,两个定时需求都需要打开计时器TR0=1;然后据不同的触发条件打开其相应计数开关,中断计数够后,由触发条件程序进行要处理,并复零;
回复

使用道具 举报

17#
ID:195496 发表于 2023-11-3 22:30 | 只看该作者
51速度太慢了,你这多个任务不如早点换上别的单片机
回复

使用道具 举报

18#
ID:517951 发表于 2023-11-4 07:22 | 只看该作者
T0用于外部计数中断每1s,T1用于10ms的定时中断数码管刷新.   
这两个功能可以合并为用一个T0或T1来完成.   多想想办法, 办法总比困难多.
回复

使用道具 举报

19#
ID:382454 发表于 2023-11-4 14:21 | 只看该作者
两个定时器够多了,可以用一个定时器做成时基,
如果你的要求真不达不到,可以选用高级点的单片机,STC官方大把。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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