
2021年单片机系统开发之利用中断控制8盏灯的循环点亮.docx
14页精品word 可编辑资料 - - - - - - - - - - - - -.-单片机应用系统开发作业利用中断掌握 8 盏灯把戏闪耀学校:理工高校专业:信息对抗技术学号: 1411050121. . word.zl-第 1 页,共 11 页 - - - - - - - - - -精品word 可编辑资料 - - - - - - - - - - - - -.-:吴志飞1.系统设计要求:设晶振频率为 12MHZ ,利用中断系统使主程序 P0 口进展把戏显示;显示规律为:(1) ) P0 口连接 8 个 LED ,依次左移闪亮;(2) ) 当按下 INT1 时, 8 个 LED 灯依次右移闪亮;(3) ) 当按下 INT0 时, 8 个灯闪亮 5 次;2.系统设计分析:单片机的最小系统 +8 盏 LED 灯+ 排电阻;本系统涉及到两个外中断,中断优先级,左移右移等问题;在 设计时可能要设计中断优先级;左移右移需要用到两个移位指令 RL 和 RR ;3.系统原理图设计:系 统 所 需 原 件 为 单 片 机 AT89C51, 瓷 片 电 容 CAP30pf , 晶 振CRYSTAL12MHZ ,电解电容 CAP-ELEC,电阻 RES,发光二极管 LED8. . word.zl-第 2 页,共 11 页 - - - - - - - - - -精品word 可编辑资料 - - - - - - - - - - - - -.-只,排电阻 RESPACK-8 以及开关 SWITCH;利用中断掌握 8 盏 LED灯把戏闪耀的原理图如 1.1所示;图 1.1 利用中断制 8 盏 LED 灯把戏闪耀原理图4.系统流程图设计 :开 始中断设置开中断为否发生中断Y中断 0?中断 1?中断 0调用中断子程序 0中断 1调用中断子程序 1NLED左移闪亮结 束. . word.zl-图 1.2 利用中断掌握 8 盏灯把戏闪耀流程图第 3 页,共 11 页 - - - - - - - - - -精品word 可编辑资料 - - - - - - - - - - - - -.-中断子程序 0爱护现场LED闪亮 5 次复原现场中断返回中断子程序 1爱护现场LED右移闪亮复原现场中断返回5.系统源程序设计:汇编源程序:ORG 0000HAJMP START ORG 0003H AJMP INTR0. . word.zl-第 4 页,共 11 页 - - - - - - - - - -精品word 可编辑资料 - - - - - - - - - - - - -.-ORG 0013H AJMP INTR1START:MOV IE、#85HMOV IP、#01H MOV TCON、#00HMOV SP、#60H MOV P0、#0FFHMOV P3、#0FFH MOV A、#0FEHLP1: MOV P0、ARL ALCALL DELAY SJMP LP1INTR0:PUSH ACCPUSH PSW MOV R1、#10 MOV A、#00HXH: MOV P0、A LCALL DELAY CPL ADJNZ R1、 XH POP PSW POP ACC RETIINTR1:PUSH ACCPUSH PSW MOV A、#7FH. . word.zl-第 5 页,共 11 页 - - - - - - - - - -精品word 可编辑资料 - - - - - - - - - - - - -.-MOV R2、#16 XH1: MOV P0、ALCALL DELAYRR A DJNZ R2、 XH1POP PSW POP ACC RETIDELAY: MOV R7、#20 DELAY1: MOV R6、#20 DELAY2: MOV R5、#248DJNZ R5、$ DJNZ R6、DELAY2 DJNZ R7、DELAY1RETENDC 语言源程序:#include
