本帖最后由 oldfish01234 于 2019-3-26 15:45 编辑
SC92F8003,定时器0
目前的设置是 EA = 1, ET0 = 1, TR0 = 1 而且也已经看到 TF0 已经置位了
换句话说,定时器0在运行状态,定时器0的中断已经打开,总中断也已经打开,并且可以看到定时器0的中断标志置位
仿真看,TH0 和 TL0 的数值也在不断更新
但是啊 它就是不进中断函数啊!!!
我的定时器0是用来做系统的tick的,所以现在整个系统停摆...
我有用到外部中断,配合定时器1来抓一些脉冲的宽度,我看到使用注意事项里有提到外部中断的时候不可以操作TCON
所以,我的定时器1是常开的,TH1 TL1 不断的跑,每次外部中断发生的时候 读一下TH1 TL1,并记录下来,在下次外部中断的时候 再读TH1,TL1,与上次的记录做差来获取脉冲宽度
外部中断中,只有读TH1 TL1,没有读写过TCON
这样操作应该不会导致定时器0不进中断吧
还请帮忙指点一下解决问题方向,不胜感激 |