最开始使用
单片机的时候,我们使用延时操作的时候使用一个延时函数,而这个函数是通过不断的循环,来消耗单片机的时间以此达到延时的目的。我们知道对于51来说,默认12MHz晶振。我们可以根据频率和时间的关系计算出麦种周期。 Tosc=1/12Mhz。 同时呢。我们的还知道运行一操作需要几个机器周几或者数个机器周期。而机器周期又时时钟周期的12倍。所以可以算出一个机器周期的时间为Tm=12*Tosc 。可以算出运行时间为1微秒。所以我们就是while(i--)while(j--);消耗时间。C语言的学习中我们写的一个程序时显示一个 hello word! 在单片机的最开始是通过点亮小灯。呵呵。 让小灯一闪一闪的。很有成就感。接着点亮2个 8个小灯,还玩出许多花样。这样就以为学会了单片机。开始自己动手做了一单片机控制许多个继电器。没想到成了。
那时还用的汇编,真的以为自己了不起。接着就在网上找了许多
电路图和程序照着做。那时就那本事,现在还是那个本事。工作的原因完全与单片机不沾边,随后我辞了工作,又开始每天晚上学习单片机。
看到了数码管、独立按键、矩阵按键等等,看了一遍回过头再看了一遍这一边比上一次有所思考。鉴于专业背景与文化程度低的缘故学的很吃力。晚上看完第二天就忘了,就这样反反复复还是忘。
就这样,,,
学习就此中断在这里,写了这篇自我感想。而我正好在看定时器中断这块。思索着程序进入定时器中断程序后,如果中断程序很长。那么在这段时间中定时还在不在运行?如果在运行中,那么中断程序还没有运行完,又产生一个中断会发生什么问题。(写到这里才是我的疑惑所在希望各位给予解答)中断程序多长为好呢?会不会对时序产生影响
看了你的解释,良心作答值得点赞。 非常感谢对我疑问的一一解答。
一周热门 更多>