单片机实验四报告外中断实验_第1页
单片机实验四报告外中断实验_第2页
单片机实验四报告外中断实验_第3页
单片机实验四报告外中断实验_第4页
单片机实验四报告外中断实验_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

南昌大学试验汇报学生姓名:学号:专业班级:试验类型:⃞验证⃞综合■设计⃞创新试验日期:.05.29试验成绩:试验四外中断试验(一)试验目的1.掌握单片机外部中断原理;2.掌握数码管动态显示原理。(二)设计规定1.使用外部中断0和外部中断1;2.在动态数码管上显示中断0次数,中断1用作次数清0,数码管采用74HC595驱动。(三)试验原理1.中断所谓中断是指程序执行过程中,容许外部或内部时间通过硬件打断程序的执行,使其转向为处理外部或内部事件的中断服务程序中去,完毕中断服务程序后,CPU返回继续执行被打断的程序。如下图所示,一种完整的中断过程包括四个环节:中断祈求、中断响应、中断服务与中断返回。当中断祈求源发出中断祈求时,假如中断祈求被容许的话,单片机临时中断目前正在执行的主程序,转到中断处理程序处理中断服务祈求。中断服务祈求处理完后,再回到本来被中断的程序之处(断电),继续执行被中断的主程序。假如单片机没有终端系统,单片机的大量时间也许会挥霍在与否有服务祈求发生的查询操作上,即不管与否有服务祈求发生,都必须去查询。因此,采用中断技术大大地提高了单片机的工作效率和实时性。2.IAP15W4K58S4单片机的中断祈求IAP15W4K58S4单片机的中断系统有21个中断祈求源,2个优先级,可实现二级中断服务嵌套。由IE、IE2、INT_CLKO等特殊功能寄存器控制CPU与否对应中断祈求;由中断优先级高存器IP、IP2安排各中断源的优先级;同优先级内2个以中断同步提出中断祈求时,由内部的查询逻辑确定其响应次序。中断祈求源中的外部中断0(INT0)和外部中断1(INT1)详述如下:(1)外部中断0(INT0):中断祈求信号由P3.2引脚输入。通过IT0来设置中断祈求的触发方式。当IT0为“1”时,外部中断0为下降沿触发;当IT0为“0”时,无论是上升沿还是下降沿,都会引起外部中断0。一旦输入信号有效,则置位IE0标志,向CPU申请中断。(2)外部中断1(INT1):中断祈求信号由P3.3引脚输入。通过IT1来设置中断祈求的触发方式。当IT1为“1”时,外部中断1为下降沿触发;当IT1为“0”时,无论是上升沿还是下降沿,都会引起外部中断1。一旦输入信号有效,则置位E1标志,向CPU申请中断。中断源与否有中断祈求,是由中断祈求标志来表达的。在IAP15W4K58S4单片机中,外部中断0、外部中断1等祈求源的中断祈求标志分别由特殊功能寄存器TCON和SCON控制,格式如下:(1)TCON寄存器中的中断祈求标志。TCON为定期器T0与T1的控制寄存器,同步也锁存T0和T1的溢出中断祈求标志及外部中断0和外部中断1的中断祈求标志等。格式如下图所示:D7D6D5D4D3D2D1D0TCONTF1TR1TF0TR0IR1IT1IE0IT088H位地址8FH—8DH—8BH8AH89H88H与中断有关的各标志位功能如下:TF1:T1的溢出中断祈求标志。T1被启动计数后,从初值做加1计数,计满溢出后由硬件置位TFI,同步向CPU发出中断祈求,此标志一直保持到CPU响应中断后才由硬件自动清0。也可由软件查询该标志,并由软件清0。TF0:T0的溢出中断祈求标志。T0被启动计数后,从初值做加1计数,计满溢出后由硬件置位TF0,同步向CPU发出中断祈求,此标志一直保持到CPU响应中断后才由硬件自动清0。也可由软件查询该标志,并由软件清0。IE1:外部中断1的中断祈求标志。当INT1(P3.3)引脚的输入信号满足中断触发规定期,置位IE1,外部中断1向CPU申请中断。中断响应后中断祈求标志自动清0。IT1:外部中断1(INT1)中断触发方式控制位。当(IT1)=1时,外部中断1为下降沿触发方式。在这种方式下,若CPU检测到INT1出现下降沿信号,则认为有中断申请,随虽然IE1标志置位。中断响应后中断祈求标志会自动清0,不必做其他处理。当(T1)=0时,外部中断1为上升沿触发和下降沿触发触发方式。在这种方式下,无论CPU检测到INT1引脚出现下降沿信号还是上升沿信号,都认为有中断申请,随虽然IE1标志置位。中断响应后中断祈求标志会自动清0,不必做其他处理。IE0:外部中断0的中断祈求标志。当INT0(P3.2)引脚的输入信号满足中断触发规定期,置位IE0,外部中断0向CPU申请中断。中断响应后中断祈求标志自动清0。IT0:外部中断0的中断触发方式控制位。当(IT0)=1时,外部中断1为下降沿触发方式。在这种方式下,若CPU检测到INT0(P3.2)出现下降沿信号,则认为有中断申请,随虽然IE0标志置位。中断响应后中断祈求标志会自动清0,不必做其他处理。当(IT0)=0时,外部中断0为上升沿触发和下降沿触发触发方式。在这种方式下,无论CPU检测到INT0(P3.2)引脚出现下降沿信号还是上升沿信号,都认为有中断申请,随虽然IE0标志置位。中断响应后中断祈求标志会自动清0,不必做其他处理。(2)SCON寄存器中的中断祈求标志。SCON是串行口控制寄存器,其低2位TI和RI锁存串行口1的发送中断祈求标志和接受中断祈求标志格式如下:D7D6D5D4D3D2D1D0TCON——————TIRI98H位地址——————99H98H中断祈求标志和接受中断祈求标志的功能如下:TI:串行口1发送中断祈求标志。CPU将数据写入发送缓冲器SBUF时,就启动发送,每发送完一种串行帧,硬件将使TI置位。但CPU响应中断时并不清除TI,必须由软件清除。RI:串行口1接受中断祈求标志。在串行口1容许接受时,每接受完一种串行帧,硬件将使RI置位。同样,CPU在响应中断时不会清除RI,必须由软件清除。中断祈求源中的外部中断0(INT0)和外部中断1(INT1)等都是可屏蔽中断,由片内的中断容许寄存器IE控制,,可对中断的开放和关闭实现两级控制。所谓两级控制,就是有一种总的开关中断控制位EA(IE.7位),当EA=0时,所有的中断祈求被屏蔽,CPU对任何中断祈求都不接受,因此称EA为系统中断容许总开关控制位;当EA=1时,CPU开放中断,但5个中断源的中断祈求与否容许,还要由其对应的中断祈求容许控制位状态决定。格式如下:D7D6D5D4D3D2D1D0IEEA—ET2ESET1EX1ET0EX0A8H位地址AFH—ADHACHABHAAHA9HA8H其中EX1是外部中断1中断容许位,EX1=0,严禁外部中断1中断;EX1=1,容许外部中断1中断。EX0是外部中断0中断容许位,EX0=0,严禁外部中断0中断;EX0=1,容许外部中断0中断。此外,单片机中的中断祈求源还具有两个中断优先级,寄存在特殊功能寄存器IP中,只要运用程序变化其内容就可以对各个中断源的中断优先级进行控制,其格式如下:D7D6D5D4D3D2D1D0IP——PT2PSPT1PX1PT0PX0B8H位地址——BDHBCHBBHBAHB9HB8H其中PX1是外部中断1的中断优先级控制位,PX1=1,外部中断1为高优先级;PX1=0,外部中断1为低优先级。PX0是外部中断0的中断优先级控制位,PX0=1,外部中断0为高优先级;PX0=1,外部中断0为低优先级。根据上述原理分析,单片机要对应中断祈求,首先要使IE寄存器中的中断总容许位EA=1,再使外部中断0和1所对应的中断祈求标志为1和中断容许位为1即可。本试验规定对中断0计数再运用中断1清0,只需要在中断0的中断服务子程序加上一种计数器,在中断1的中断服务子程序对该计数器清0,最终运用数码管显示该计数器的值便可实现。(四)试验设备硬件:PC机、USB数据传播线、STC单片机综合试验箱软件:兼容51单片机的Keiluvision5集成开发环境、STC-ISP单片机烧录软件(五)试验成果试验源代码如(七)所示。对代码进行编译,提醒0错误0警告,生成hex文献。将单片机试验箱和电脑通过USB数据线连接,打开STC-ISP检测串口点击点开程序文献,选择刚刚生成的hex文献,点击下载程序,烧录成功(六)成果讨论与心得体会成果分析讨论:将程序烧录至单片机后,可观测到数码管的高三位显示000,其他位消隐。按下SW17(外部中断0),数码管对此计数,当按下SW18(外部中断1),数码管显示000,即定期器清零,与预期效果一致,完毕试验。心得体会:通过本次试验,我掌握了外部中断的原理,学会了运用按键来产生中断,还理解了怎样使用数码管显示,但愿通过自己多次尝试能在此后试验中纯熟使用外部中断并将其运用到其他方面。(七)附录:试验源代码P4 DATA 0C0H ;P5 DATA 0C8H ; P4M1 DATA 0xB3 ;P4M0 DATA 0xB4 ;P5M1 DATA 0xC9 ;P5M0 DATA 0xCA ;;******************************************************/P_HC595_SER BIT P4.0 ;P_HC595_RCLK BIT P5.4 ;P_HC595_SRCLK BIT P4.3 ;;******************************************************/LED8 DATA 30H ;display_index DATA 38H ;INT0_cnt DATA 39H ;;******************************************************/ ORG 0000H ; LJMP F_Main ; ORG 0003H ; LJMP F_INT0_Interrupt ; ORG 0013H ; LJMP F_INT1_Interrupt ;;******************************************************/ ORG 0100H ;F_Main: CLR A ; MOV P4M1, A ; MOV P4M0, A ; MOV P5M1, A ; MOV P5M0, A ; MOV display_index, #0 ; MOV R0, #LED8 ; MOV R2, #8 ; CLR IE1 ; CLR IE0 ; SETB EX1 ; SETB EX0 ; SETB IT0 ; SETB IT1 ; SETB EA ; MOV INT0_cnt, #0 ;L_MainLoop: LCALL F_delay_ms ; LCALL F_DisplayScan ; LJMP L_MainLoop ;F_delay_ms:MOV R2, #20 ;D1: MOV R3, #20 ;D2:DJNZ R3, D2 ; DJNZ R2, D1 ; RETT_Display: ;DB 03FH,006H,05BH,04FH,066H,06DH,07DH,007H,07FH,06FH,077H,07CH,039H,05EH,079H,071H;DB 000HT_COM:DB 020H,040H,080H;F_Send_595: PUSH 02H ; MOV R2, #8 ;L_Send_595_Loop: RLC A ; MOV P_HC595_SER, C ; SETB P_HC595_SRCLK ; CLR P_HC595_SRCLK ; DJNZ R2, L_Send_595_Loop ; POP 02H ;RETF_DisplayScan: PUSH DPH ; PUSH DPL ; PUSH 00H ; MOV A, INT0_cnt ; MOV B, #100 ; DIV AB MOV LED8+0, A ; MOV A, #10 ; XCH A, B ; DIV AB ; MOV LED8+1, A ; MOV LED8+2, B ;MOV DPTR, #T_COM ;

温馨提示

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

评论

0/150

提交评论