按键控制显示
2016-01-25 11:44
211 查看
;51单片机硬件连接电路如下:
;P1.3 和 P1.4 各接一个按键;
;P0.0 和 P0.3 各接一个发光二极管;
;P2.0~P2.7 和 P3.0~P3.7 各接一个数码管。
;要求1:两个发光二极管一亮一灭,按一下按键后,这个灭另一个亮,一直这样反复。
;要求2:按一下按键,数码管从0.0变为1.1、再变为2.2,……,到9.9,再到0.0,反复循环。
;求51单片机汇编语言程序,麻烦哪位高手赐教。
;悬赏分:5 解决时间:2010-11-11 19:47
;===============================================
;程序如下:
ORG 0000H
CLR P0.0
MOV R3, #0
CALL DISPLAY
;------------------------------
K1:
JB P1.3, K2
CALL DELAY ;延时
JB P1.3, K2 ;消抖
CPL P0.0
CPL P0.3
;------------------------------
K2:
JB P1.4, K1
CALL DELAY ;延时
JB P1.4, K1 ;消抖
INC R3
CJNE R3, #10, DISP
MOV R3, #0
DISP:
CALL DISPLAY
SJMP K1
;------------------------------
DELAY: MOV R6, #0
LOOP: MOV R7, #0
DJNZ R7, $
DJNZ R6, LOOP
RET
;------------------------------
DISPLAY:
MOV A, R3
MOV DPTR, #TAB
MOVC A, @A+DPTR
MOV P3, A
CLR ACC.7 ;加上小数点
MOV P2, A
RET
TAB:
DB 0C0H,0F9H,0A4H,0B0H, 99H
DB 92H, 82H,0F8H, 80H, 90H
;------------------------------
END
;===============================================
;仿真电路如下:
![](http://img.bimg.126.net/photo/BeyszzCWGA19hJ8COETurw==/4583819995750140198.jpg)
;图片链接:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/album/item/8dd9ee94991ec0427af480f6.html
;===============================================
提问者对于答案的评价:非常感谢!!!!!!!
原题网址:http://zhidao.baidu.com/question/196317708.html
;===============================================
;P1.3 和 P1.4 各接一个按键;
;P0.0 和 P0.3 各接一个发光二极管;
;P2.0~P2.7 和 P3.0~P3.7 各接一个数码管。
;要求1:两个发光二极管一亮一灭,按一下按键后,这个灭另一个亮,一直这样反复。
;要求2:按一下按键,数码管从0.0变为1.1、再变为2.2,……,到9.9,再到0.0,反复循环。
;求51单片机汇编语言程序,麻烦哪位高手赐教。
;悬赏分:5 解决时间:2010-11-11 19:47
;===============================================
;程序如下:
ORG 0000H
CLR P0.0
MOV R3, #0
CALL DISPLAY
;------------------------------
K1:
JB P1.3, K2
CALL DELAY ;延时
JB P1.3, K2 ;消抖
CPL P0.0
CPL P0.3
;------------------------------
K2:
JB P1.4, K1
CALL DELAY ;延时
JB P1.4, K1 ;消抖
INC R3
CJNE R3, #10, DISP
MOV R3, #0
DISP:
CALL DISPLAY
SJMP K1
;------------------------------
DELAY: MOV R6, #0
LOOP: MOV R7, #0
DJNZ R7, $
DJNZ R6, LOOP
RET
;------------------------------
DISPLAY:
MOV A, R3
MOV DPTR, #TAB
MOVC A, @A+DPTR
MOV P3, A
CLR ACC.7 ;加上小数点
MOV P2, A
RET
TAB:
DB 0C0H,0F9H,0A4H,0B0H, 99H
DB 92H, 82H,0F8H, 80H, 90H
;------------------------------
END
;===============================================
;仿真电路如下:
![](http://img.bimg.126.net/photo/BeyszzCWGA19hJ8COETurw==/4583819995750140198.jpg)
;图片链接:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/album/item/8dd9ee94991ec0427af480f6.html
;===============================================
提问者对于答案的评价:非常感谢!!!!!!!
原题网址:http://zhidao.baidu.com/question/196317708.html
;===============================================
相关文章推荐
- 九度OJ 题目1043:Day of Week
- 春天里
- 基于51单片机的脉搏测量仪
- 复合键在4×4 矩阵式键盘中的应用方法
- MyEclipse开发REST Web Service
- 单片机C语言编程:按键、计数及显示
- Java关键字transient和volatile小结
- VIM强大插件列表
- PC(Personal Computer),个人计算机,关于它诞生的传奇
- 单片机IO引脚驱动能力的提高
- 使用拦截器实现权限管理
- JS良好的编程习惯
- 关于51单片机IO引脚的驱动能力与上拉电阻
- 关于51单片机中的RAM、SFR和位地址的问题
- 用两片74HC138设计一个4-16译码器
- 重新敲一遍代码,胜过Ctrl+C和Ctrl+V
- 数学建模Word排版——样式
- has no public methods called onEvent
- AndroidStudio打包出现"xxx" is not translated in "zh" (Chinese) [MissingTranslation]
- typedef 的作用域