微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 《手把手教你学51单片机-C语言》之六 中断与数码管动态显示

《手把手教你学51单片机-C语言》之六 中断与数码管动态显示

时间:11-19 来源:互联网 点击:

然实际上发生这种情况的概率很低,但另外一种情况就常见的多了,那就是出于某种原因我们暂时关闭了总中断,即EA=0,执行完一段代码后又重新使能了总中断,即EA=1,那么在这段时间里就很可能有多个中断都发生了,但因为总中断是关闭的,所以它们当时都得不到响应,而当总中断再次使能后,它们就会在同时请求响应了,很明显,这时也必需有个先后顺序才行,这就是非抢占优先级的作用了——如表6-3中,谁优先级最高先响应谁,然后按编号排队,依次得到响应。

抢占优先级和非抢占优先级的协同,可以使单片机中断系统有条不紊的工作,既不会无休止的嵌套,又可以保证必要时紧急任务得到优先处理。在后续的学习过程中,中断系统会与我们如影随形,处处都有它的身影,随着学习的深入,相信你对它的理解也会更加的深入。

1.1练习题

1、掌握C语言数组的概念、定义和应用。

2、掌握if语句和switch语句的用法及区别,编程的时候能够正确选择使用哪个语句。

3、彻底理解中断的原理和应用方法,关闭教程自己独立把本章节程序编写完毕并且下载到实验板上实践。

4、尝试修改程序,让我们的数码管只显示有效位,也就是高位的0不显示。

5、尝试写一个从999999开始倒计时的程序,并且改用定时器T1的中断来完成,通过写这个程序,熟练掌握定时器和中断的应用。


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top