实验四:中断系统一、实验目的- 掌握单片机中中断系统的原理及使用方法。
- 熟悉51单片机的汇编指令。
- 熟练并掌握定时中断1的编程。
- 掌握单片机中断优先级的概念。
二、实验设备STC89C52单片机实验板、串口下载线、USB连接线、电脑 三、实验原理及内容实验原理: 对于单片机来讲,中断是指CPU在处理某一事件A时,发生了另一事件B,请求CPU迅速去处理(中断发生);CPU接到中断请求后,暂停当前正在进行的工作(中断响应),转去处理事件B(执行相应的中断服务程序),待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回),这一过程称为中断。 中断 CPU正在执行主程序的过程中,由于CPU之外的某种原因,有必要暂停主程序的执行,转而去执行相应的处理(中断服务)程序。待处理程序结束之后,再返回原程序断点处继续运行的过程。 中断源 可以引起中断的事件称为中断源。单片机中也有一些可以引起中断的事件。MCS-51单片机中共有5种中断源:两个外部中断( 、 )、两个定时/计数器中断(T0、T1)和一个串行口中断。 中断系统 实现中断过程的软、硬件系统。 主程序与中断服务程序 CPU正在执行的当前程序称为主程序;中断发生后,转去对突发事件的处理程序称为中断服务程序。 中断优先级 当多个中断源同时申请中断时,为了使CPU能够按照用户的规定先处理最紧急的事件,然后再处理其他事件,就需要中断系统设置优先级机制。通过设置优先级,排在前面的中断源称为高级中断,排在后面的称为低级中断。设置优先级以后,若有多个中断源同时发出中断请求时,CPU会优先响应优先级较高的中断源。如果优先级相同,则将按照它们的自然优先级顺序响应默认优先级较高的中断源。 五个中断源默认的自然优先级是由硬件的查询顺序决定的,由高到低的顺序依次是:外部中断0、定时/计数器0中断、外部中断1、定时/计数器1中断、串行口中断。中断源的优先级需由用户在中断优先级寄存器IP中设定。 中断嵌套 当CPU响应某一中断源请求而进入该中断服务程序中处理时,若更高级别的中断源发出中断申请,则CPU暂停执行当前的中断服务程序,转去响应优先级更高的中断,等到更高级别的中断处理完毕后,再返回低级中断服务程序,继续原先的处理,这个过程称为中断嵌套。在51单片机的中断系统中,高优先级中断能够打断低优先级中断以形成中断嵌套,反之,低级中断则不能打断高级中断,同级中断也不能相互打断。 实验步骤: 软件操作过程参考实验一。
实验接线图: 外部中断电路图: 程序代码(汇编版): - ORG 0000H
- LJMP MAIN
- ORG 001BH ;定时中断入口地址
- LJMP INSER
- ORG 0030H
-
- MAIN: MOV TMOD , #10H
- MOV TH1 , #04CH ;装入定时器初值
- MOV TL1 , #000H
- SETB EA ;打开总中断
- SETB ET1 ;允许定时器/计数器1 中断
- SETB TR1 ;开启定时器/计数器1 中断
- HERE: SJMP HERE ;原地踏步
-
- ORG 0200H
- INSER: MOV TH1 , #04CH
- MOV TL1 , #000H
- INC A
- CJNE A , #20 , LOOP ;每隔20*50MS 一秒发声
- CPL P1.5
- MOV A , #00H
- LOOP: RETI
- END
复制代码 4、实验收获与体会本次试验我们做的是试验定时中断1使 蜂铃器发声的实验,并且成功完成了此次实验。 本次试验令我们获益匪浅。做实验时,一定要亲力亲为,务必要将每个步骤,每个细节弄清楚,弄明白,实验后,还要复习,思考,这样,你的印象才深刻,记得才牢固,否则,过后不久你就会忘得一干二净,这还不如不做。通过这次试验,使课堂中书本上的一些理论知识与实践相结合,更加深刻了我对单片机这门课的认识,巩固了我的理论知识。
完整单片机实验报告下载(word格式 可编辑):
http://www.51hei.com/bbs/dpj-88784-1.html
|