[51单片机] 定时周期太短怎么办

[复制链接]
3567|29
 楼主| 尚善励挚 发表于 2014-7-11 16:12 | 显示全部楼层
ad123456 发表于 2014-7-11 14:39
1us的机器,20us的定时中断,不到10条指令就一次中断,打算做什么?换更快的mcu吧,再不行更高的时 ...

有道理
link8001 发表于 2014-7-11 16:14 | 显示全部楼层
interrupt 1 using 1 加using能稍稍提高进入中断的速度
 楼主| 尚善励挚 发表于 2014-7-11 16:30 | 显示全部楼层
yhn1973 发表于 2014-7-11 08:42
都什么年代了还用这么慢的CPU

推荐几款呗
ayb_ice 发表于 2014-7-11 16:31 | 显示全部楼层
link8001 发表于 2014-7-11 16:14
interrupt 1 using 1 加using能稍稍提高进入中断的速度

不见得

如果中断代码本身很简单,反而会适得其反
忘记梦 发表于 2014-7-11 16:35 | 显示全部楼层
8位机,做微妙级别的,太理想了
yhn1973 发表于 2014-7-11 18:07 | 显示全部楼层
尚善励挚 发表于 2014-7-11 16:30
推荐几款呗

若在51中选的话,STC15系列的或C8051F系列的都可以,我用C8051F340做过发100KHz带S曲线自动加减速的运动控制定位脉冲,5us进一次定时中断。
link8001 发表于 2014-7-12 08:25 | 显示全部楼层
ayb_ice 发表于 2014-7-11 16:31
不见得

如果中断代码本身很简单,反而会适得其反

如果中断代码本身很简单,R0到R7没有使用,进入中断后不用PUSH R0到R7,那using也没用,与原来速度一样;P
moyue 发表于 2014-7-13 11:54 | 显示全部楼层
尚善励挚 发表于 2014-7-11 16:10
修改了 但是效果不怎么样啊

可以参考STC例程,在中断中对计数寄存器进行加相同参数操作,这样就可以了
天风立马 发表于 2014-7-13 20:18 | 显示全部楼层
真执着。你不想换MCU就试着用大点的晶振吧。你知道1us的机器周期,对20us就产生中断的中断意味着什么?能给你留多少时间执行中断?-->你的中断能写几条指令?-->你不想用汇编可以,但你必须知道你的这几条指令对应几条汇编,执行需要多长时间?-->这几条指令能完成你想实现的功能吗?-->除了这个中断你还想干什么?又有多少时间能利用?
你确定你的实现方式是合理的?何不拿出你的目的,让大神们帮你出主意,告诉你怎么实现更好。
Adu0227 发表于 2014-7-17 09:37 | 显示全部楼层
换单片机吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部