单片机实验四报告_外中断实验_第1页
单片机实验四报告_外中断实验_第2页
单片机实验四报告_外中断实验_第3页
单片机实验四报告_外中断实验_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选文档为南昌大学实验报告学生姓名:学号:专业班级:14实验类型:?验证?综合 设计?创新 实验日期:2018.05.29实验成绩:实验四外中断实验(一)实验目的1.掌握单片机外部中断原理;2.掌握数码管动态显示原理。(二)设计要求1.使用外部中断0和外部中断1;2.在动态数码管上显示中断0次数,中断1用作次数清0,数码管采用74HC595驱动。(三)实验原理1中断所谓中断是指程序执行过程中,允许外部或内部时间通过硬件打断程序的执行,使其转向为处 理外部或内部事件的中断服务程序中去,完成中断服务程序后,CPU返回继续执行被打断的程序。如下图所示,一个完整的中断过程包括四个步骤:中断请求、中断响

2、应、中断服务与中断返回。当中断请求源发出中断请求时,如果中断请求被允许的话,单片机暂时中止当刖正在执行的王 程序,转到中断处理程序处理中断服务请求。 中断服务请求处理完后,再回到原来被中止的程序之处 (断电),继续执行被中断的主程序。如果单片机没有终端系统,单片机的大量时间可能会浪费在是否有服务请求发生的查询操作上, 即不论是否有服务请求发生,都必须去查询。因此,采用中断技术大大地提高了单片机的工作效率和 实时性。2.IAP15W4K58S4单片机的中断请求IP、IAP15W4K58S4单片机的中断系统有21个中断请求源,2个优先级,可实现二级中断服务嵌套。 由IE、IE2、INT_CLKO等

3、特殊功能寄存器控制 CPU是否相应中断请求;由中断优先级高存器 IP2安排各中断源的优先级;同优先级内 2个以中断同时提出中断请求时,由内部的查询逻辑确定其 响应次序。中断请求源中的 外部中断0 (INTO )和外部中断1 (INT1 )详述如下:(1)外部中断0(INT0):中断请求信号由P3.2引脚输入。通过IT0来设置中断请求的触发方式。 当IT0为“ 1”时,外部中断0为下降沿触发;当IT0为“0”时,无论是上升沿还是下降沿,都会引 发外部中断0。一旦输入信号有效,则置位IE0标志,向CPU申请中断。(2)外部中断1(INT1):中断请求信号由P3.3引脚输入。通过IT1来设置中断请求

4、的触发方式。 当IT1为“ 1”时,外部中断1为下降沿触发;当IT1为“0”时,无论是上升沿还是下降沿,都会引 发外部中断1。一旦输入信号有效,则置位 E1标志,向CPU申请中断。中断源是否有中断请求,是由中断请求标志来表示的。在IAP15W4K58S4单片机中,外部中断0、外部中断1等请求源的中断请求标志分别由 特殊功能寄存器TCON和SCON控制,格式如下:(1)TCON寄存器中的中断请求标志。TCON为定时器T0与T1的控制寄存器,同时也锁存 T0 和T1的溢出中断请求标志及外部中断 0和外部中断1的中断请求标志等。格式如下图所示:D7 D6 D5 D4 D3 D2 D1 D0TCONT

5、F1TR1tf0TR0IR1IT1IE0IT0位地址8FH8DH8BH8AH89H88H88H与中断有关的各标志位功能如下:TF1: T1的溢出中断请求标志。T1被启动计数后,从初值做加1计数,计满溢出后由硬件 置位TFI,同时向CPU发出中断请求,此标志一直保持到CPU响应中断后才由硬件自动清0。 也可由软件查询该标志,并由软件清 0。此标志一直保持到 CPU响应中断后才由硬件自动清TF0: T0的溢出中断请求标志。T0被启动计数后,从初值做加1计数,计满溢出后由硬件 置位TF0,同时向CPU发出中断请求,0。0。也可由软件查询该标志,并由软件清IE1:外部中断1的中断请求标志。当 位IE1

6、,外部中断1向CPU申请中断。0。INT1( P3.3)引脚的输入信号满足中断触发要求时,置 中断响应后中断请求标志自动清IT1:外部中断1(INT1)中断触发方式控制位。当(IT1)=1时,外部中断1为下降沿触发方式。 在这种方式下,若CPU检测到INT1出现下降沿信号,则认为有中断申请,随即使IE1标志置位。中断响应后中断请求标志会自动清 0,无须做其他处理。当(T1)=0时,外部中断1为 上升沿触发和下降沿触发触发方式。在这种方式下,无论CPU检测到INT1引脚出现下降沿信号还是上升沿信号,都认为有中断申请,随即使IE1标志置位。中断响应后中断请求标志会自动清0,无须做其他处理。0。IE

7、0:外部中断0的中断请求标志。当INT0(P3.2)引脚的输入信号满足中断触发要求时,置 位IE0,外部中断0向CPU申请中断。中断响应后中断请求标志自动清IT0:外部中断0的中断触发方式控制位。当(IT0)=1时,外部中断1为下降沿触发方式。在 这种方式下,若CPU检测到INT0(P3.2)出现下降沿信号,则认为有中断申请,随即使IE0标志置位。中断响应后中断请求标志会自动清0,无须做其他处理。当(IT0)=0时,外部中断0为上升沿触发和下降沿触发触发方式。在这种方式下,无论CPU检测到INT0(P3.2)引脚出现下降沿信号还是上升沿信号,都认为有中断申请,随即使IE0标志置位。中断响应后中

8、断请求标志会自动清0,无须做其他处理。(2)SCON寄存器中的中断请求标志。SCON是串行口控制寄存器,其低 2位TI和RI锁存串行 口1的发送中断请求标志和接收中断请求标志格式如下:D7 D6 D5 D4 D3 D2 D1 D098H中断请求标志和接收中断请求标志的功能如下:TI:串行口 1发送中断请求标志。CPU将数据写入发送缓冲器 SBUF时,就启动发送,每 发送完一个串行帧,硬件将使 TI置位。但CPU响应中断时并不清除TI,必须由软件清除。RI:串行口 1接收中断请求标志。在串行口 1允许接收时,每接收完一个串行帧,硬件将使 RI置位。同样,CPU在响应中断时不会清除RI,必须由软件

9、清除。CPU对任何中断请求都不接受,因EA=1时,CPU开放中断,但5个中断源的中断请求是否 状态决定。格式如下:中断请求源中的外部中断 0 (INT0)和外部中断1( INT1)等都是可屏蔽中断,由片内的中断 允许寄存器IE控制,可对中断的开放和关闭实现两级控制。所谓两级控制,就是有一个总的开关中 断控制位EA( IE.7位),当EA=0时,所有的中断请求被屏蔽, 此称EA为系统中断允许总开关控制位;当 允许,还要由其对应的 中断请求允许控制位D7 D6 D5D4 D3 D2 D1 D0IEEAET2ESET1EX1ET0EX0A8H位地址AFHADHACHABHAAHA9HA8H其中EX1

10、是外部中断1中断允许位,EX1=0,禁止外部中断1中断;EX1=1,允许外部中断1中 断。EX0是外部中断0中断允许位,EX0=0,禁止外部中断0中断;EX0=1,允许外部中断0中断。另外,单片机中的中断请求源还具有两个中断优先级,存放在特殊功能寄存器IP中,只要利用程序改变其内容就可以对各个中断源的中断优先级进行控制,其格式如下:D7 D6 D5 D4 D3 D2 D1 D0IPPT2PSPT1PX1PT0PX0位地址BDHBCHBBHBAHB9HB8HB8H其中PX1是外部中断1的中断优先级控制位,PX1=1,外部中断1为高优先级;PX1=0,外部中 断1为低优先级。PX0是外部中断0的中

11、断优先级控制位,PX0=1,外部中断0为高优先级;PX0=1, 外部中断0为低优先级。根据上述原理分析,单片机要相应中断请求,首先要使IE寄存器中的中断总允许位EA=1,再使外部中断0和1所对应的中断请求标志为1和中断允许位为1即可。本实验要求对中断0计数再利 用中断1清0,只需要在中断0的中断服务子程序加上一个计数器,在中断 1的中断服务子程序对该 计数器清0,最后利用数码管显示该计数器的值便可实现。(四)实验设备硬件:PC机、USB数据传输线、STC单片机综合实验箱软件:兼容51单片机的Keil uvision5集成开发环境、STC-ISP单片机烧录软件(五)实验结果实验源代码如(七)所示

12、。对代码进行编译,提示0错误0警告,生成hex文件。RebuLldTflrgct 1Linking. ”.crtitino hcx file Cxcm . VOfcjectBMntexiuptcounL. .0bijrt;t3Tnttrrupt_t;ouT:t - 0 Er=or(3几 胃arninmia). BkjJrId IxiM 丄A匚,藝d; OOljOOiOi将单片机试验箱和电脑通过 USB数据线连接,打开STC-ISP检测串口甲片机贸号-引卿超Uta串是 KSe-SERIAL CH34U (口313)轲宿ftft疲特军2400歸疲特車115200-点击点开程序文件,选择刚才生成的

13、hex文件,点击下载程序,烧录成功J I nte rru pt_coiJnt.h e xLJ丄电1乂腐rawi十B刪冃叨WI J弭看门狗定时器分频系数2560空闲状态时停止看门狗计频下裁腐S连意帶助wTX.n谁昌tri渗月E日日 辭煤 I 号需4K&6S4-EniS 附無节孵固件版本号-7.3.5111 OSWx11 ObilDk0 033*按作成丈I (2018-0.-07 23 42 36)000,其他位消隐。按(六)结果讨论与心得体会结果分析讨论:将程序烧录至单片机后,可观察到数码管的高三位显示 下SW17 (外部中断0),数码管对此计数,当按下 SW18 (外部中断1),数码管显示00

14、0,即定时器 清零,与预期效果一致,完成实验。心得体会:通过本次实验,我掌握了外部中断的原理,学会了利用按键来产生中断,还了解了 如何使用数码管显示,希望通过自己多次尝试能在今后实验中熟练使用外部中断并将其运用到其他方 面0(七)附录:实验源代码P4DATA0C0HP5DATA0C8HP4M1DATA0xB3P4M0DATA0xB4P 5M1DATA0xC9P 5M0DATA0xCA*/P_ HC595_SERBITP 4.0P_ HC595_RCLK BITP 5.4P_ HC595_SRCLK BITP 4.3LED8DATA30Hdis play_i ndexDATA38HINT0 en

15、tDATA39H*/*/ORG0000HLJMPF_Mai nORG0003HLJMPF_INT0_I nterru ptORG0013HLJMPF_INT1 _ln terru pt*/ORG0100HF_Ma in:CLRMOVP4M1,MOVP4M0,MOVP 5M1,MOVP 5M0,MOVdis play_i ndex.#0MOVR0,#LED8MOVR2,#8CLRIE1CLRlEOSETBEX1SETBEXOSETBITOSETBIT1SETBEAMOVINTO_cnt,#0L_Ma inLoop:LCALLF_delay_msLCALLF_Dis playSca nLJMPL_

16、Ma inLoopF_delay_ms:D1:MOVR2,#20MOVR3,#20D2:DJNZR3,D2DJNZR2,D1RETT_Dis play:DB 03FH,006H,05BH,04FH,066H,06DH,07DH,007H,07FH,06FH,077H,07CH,039H,05EH,079H,071H;DB 000HT_COM:DB 020H,040H,080H;P USH02HMOVR2,#8L_Sen d_595_Lo op:RLCAMOVP_ HC595_SER, CSETBP_ HC595_SRCLKCLRP_ HC595_SRCLKDJNZR2,L_Send_59POP02HRET)_Loop ;F_Se nd_595:F_Dis playSca n:P USHDPHP USHDPLP USH00HMOVA,INT0_c ntMOVB,#100ABDIVMOVLED8+0,MOVA,#10A,ABXCHDIVMOVLED8+1,MOVLED8+2,MOVDPTR,#T_COMMOVA,dis play_i ndex;MOVCA,A+DPTR ;CPLALCALLF_Se nd_595MOVDP TR,#T_Display ;MOVA,dis play_i ndex;ADDA,#LED8;MOVR0,A;MOVA,R0;MOVCA,A+

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论