首页 流水灯实验

流水灯实验

举报
开通vip

流水灯实验流水灯实验 流水灯实验 以下程序是根据第一次实验,简化了以前完成的课程设计而成两个代码,一个是利用循环来 控制的led灯循环亮起,其中R1,R2是循环次数的控制;第二个是LED灯从两边向中间亮, 再从中间向两边亮,采用了在单个循环周期内枚举赋值的方法,和实验课程设计原稿中采用 了类似的方法。由于两个代码都在实验室经过了LED的仿真,所以没有再用medwin来仿 真。 ==================流水循环灯简化程序================== LED1 EQU P1.0 ;第1个数码管对应的引脚...

流水灯实验
流水灯实验 流水灯实验 以下程序是根据第一次实验,简化了以前完成的课程设计而成两个代码,一个是利用循环来 控制的led灯循环亮起,其中R1,R2是循环次数的控制;第二个是LED灯从两边向中间亮, 再从中间向两边亮,采用了在单个循环周期内枚举赋值的方法,和实验课程设计原稿中采用 了类似的方法。由于两个代码都在实验室经过了LED的仿真,所以没有再用medwin来仿 真。 ==================流水循环灯简化程序================== LED1 EQU P1.0 ;第1个数码管对应的引脚 LED2 EQU P1.1 ;第2个数码管对应的引脚 LED3 EQU P1.2 ;第3个数码管对应的引脚 LED4 EQU P1.3 ;第4个数码管对应的引脚 LED5 EQU P1.4 ;第5个数码管对应的引脚 LED6 EQU P1.5 ;第6个数码管对应的引脚 LED7 EQU P1.6 ;第7个数码管对应的引脚 LED8 EQU P1.7 ;第8个数码管对应的引脚 ORG 0000H ;程序开始 LJMP MAIN ORG 0030H MAIN: MOV R2,#07H MOV R1,#07H MOV SP, #30H LCALL REST LCALL PRO_LED LJMP MAIN REST: MOV P0, #00H MOV P1, #0FFH RET PRO_LED: MOV A,#0FEH MOV P1,A ACALL DELAY D1: DEC R1 RL A MOV P1,A ACALL DELAY CJNE R1, #00H, D1 D2: DEC R2 RR A MOV P1,A ACALL DELAY CJNE R2, #00H, D2 SJMP MAIN DELAY: PUSH PSW ;保护PSW寄存器 CLR PSW.3 SETB PSW.4 ;重新设置寄存器组别 MOV R0, #02H ;延时常数 MOV R1, #0F9H ;延时常数 MOV R2, #02H ;延时常数 DL1: DJNZ R0, DL1 ;延时循环1 MOV R0, #0F9H DL2: DJNZ R1, DL1 ;延时循环2 MOV R0, #0F9H MOV R1, #0F9H DL3: DJNZ R2, DL1 ;延时循环3 NOP ;修正演示精度 POP PSW ;恢复PSW寄存器 RET END =============从两边向中间亮,再从中间向两边亮=========== LED1 EQU P1.0 ;第1个数码管对应的引脚 LED2 EQU P1.1 ;第2个数码管对应的引脚 LED3 EQU P1.2 ;第3个数码管对应的引脚 LED4 EQU P1.3 ;第4个数码管对应的引脚 LED5 EQU P1.4 ;第5个数码管对应的引脚 LED6 EQU P1.5 ;第6个数码管对应的引脚 LED7 EQU P1.6 ;第7个数码管对应的引脚 LED8 EQU P1.7 ;第8个数码管对应的引脚 ORG 0000H ;程序开始 LJMP MAIN ;跳转到主程序 ORG 0030H MAIN: MOV R2,#07H;主程序从30H开始 MOV R1,#07H MOV SP, #30H ;初始化堆栈 LCALL REST ;调用初始化程序,进行初始化 LCALL PRO_LED ;调用LED显示程序 LJMP MAIN REST: MOV P0, #00H ;初始化程序 MOV P1, #0FFH RET PRO_LED: MOV A,#081H MOV P1,A ACALL DELAY MOV A,#042H MOV P1,A ACALL DELAY MOV A,#024H MOV P1,A ACALL DELAY MOV A,#018H MOV P1,A ACALL DELAY MOV A,#024H; MOV P1,A ACALL DELAY ;CLR P1 MOV A,#042H MOV P1,A ACALL DELAY ;CLR P1 MOV A,#081H MOV P1,A ACALL DELAY SJMP PRO_LED DELAY: PUSH PSW ;保护PSW寄存器 CLR PSW.3 SETB PSW.4 ;重新设置寄存器组别 MOV R0, #02H ;延时常数 MOV R1, #0F9H ;延时常数 MOV R2, #02H ;延时常数 DL1: DJNZ R0, DL1 ;延时循环1 MOV R0, #0F9H DL2: DJNZ R1, DL1 ;延时循环2 MOV R0, #0F9H MOV R1, #0F9H DL3: DJNZ R2, DL1 ;延时循环3 NOP ;修正演示精度 POP PSW ;恢复PSW寄存器 RET END
本文档为【流水灯实验】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_266065
暂无简介~
格式:doc
大小:17KB
软件:Word
页数:0
分类:生活休闲
上传时间:2017-12-20
浏览量:17