导航:首页 > 编程语言 > 51单片机按键程序汇编程序

51单片机按键程序汇编程序

发布时间:2022-04-16 14:05:38

① 51单片机汇编语言程序设计:

ORG0000H
LJMPMAIN
ORG0030H
MAIN:
CLR00H
START:
MOV30H,#0FEH
MOV31H,#0FFH
MOVR2,#12
LOOP:
JBP3.2,LOOP1
JNBP3.2,$
CPL00H
SJMPSTART
LOOP1:
JB00H,LOOPR
MOVP0,30H
MOVP1,31H
MOVA,30H
RLCA
PUSHACC
XCHA,31H
RLCA
MOV31H,A
MOVC,ACC.4
POPACC
MOVACC.0,C
MOV30H,A
LCALLDELAY
DJNZR2,LOOP
SJMPSTART
LOOPR:
JBP3.2,LOOPR1
JNBP3.2,$
CPL00H
LJMPSTART
LOOPR1:
MOVP0,30H
MOVP1,31H
MOVA,31H
RRCA
PUSHACC
XCHA,30H
RRCA
MOV30H,A
POPACC
MOVACC.3,C
MOV31H,A
LCALLDELAY
DJNZR2,LOOPR
LJMPSTART
DELAY:
MOVR3,#200
DLY:
MOVR4,#250
DJNZR4,$
DJNZR3,DLY
RET
END

② 求51单片机按键点灯汇编程序,按一下按键灯亮(一直亮),再按一下灭

;以下为一个按键控制一个灯的程序!!!
ORG 0000H
SETB P1.0
START:
JB P1.0,NEXT ;设按键为低电平有效。
JNB P1.0,$
CPL P3.0
NEXT:
SJMP START
END

③ 51单片机用计数器中断实现100以内的按键计数,汇编语言程序

试试下列程序:
ORG 0000H
JMP START
ORG 000BH
JMP T0_INT
;------------------------------
START:
MOV TMOD, #06H
MOV TH0, #255
MOV TL0, #255
MOV IE, #82H
SETB TR0
MOV R2, #0
MOV R3, #0
MOV DPTR, #TAB
;------------------------------
M_LOOP:
MOV A, R3
MOVC A, @A + DPTR
MOV P2, A
MOV A, R2
MOVC A, @A + DPTR
MOV P0, A
SJMP M_LOOP
;------------------------------
T0_INT:
JNB P3.4, T0_INT
INC R3
CJNE R3, #10, T0_END
MOV R3, #0
INC R2
CJNE R2, #10, T0_END
MOV R2, #0
T0_END:
RETI
;------------------------------
TAB: DB 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f
;------------------------------
END

④ 51单片机键盘汇编程序

KEYVAL EQU 30H
KEYSCAN EQU 31H
KEYTM EQU 32H
KEYSEL:
MOV KEYVAL,#0
MOV KEYSCAN,#0EFH
LCALL GETKEY
MOV A,KEYTM
JZ KEYS1
MOV KEYVAL,A
SJMP KEYRTN
KEYS1:
MOV KEYSCAN,#0DFH
LCALL GETKEY
MOV A,KEYTM
JZ KEYS2
CLR C
ADD A,#4
MOV KEYVAL,A
SJMP KEYRTN
KEYS2:
MOV KEYSCAN,#0BFH
LCALL GETKEY
MOV A,KEYTM
JZ KEYS3
CLR C
ADD A,#8
MOV KEYVAL,A
SJMP KEYRTN
KEYS3:
MOV KEYSCAN,#7FH
LCALL GETKEY
MOV A,KEYTM
JZ KEYRTN
CLR C
ADD A,#12
MOV KEYVAL,A
KEYRTN:
RET

;--------------------
GETKEY:
MOV KEYTM,#0
MOV A,KEYSCAN
MOV P3,A
NOP
MOV A,P3
ANL A,#0FH
XRL A,#0FH
JZ NOKEY
MOV R2,#10
LCALL DELAY
MOV A,P3
ANL A,#0FH
XRL A,#0FH
JZ NOKEY
MOV A,P3
ANL A,#0FH
MOV R7,A
SF:
MOV A,P3
ANL A,#0FH
XRL A,#0FH
JNZ SF
MOV A,R7
CJNE A,#0EH,NK1
MOV KEYTM,#1
SJMP NOKEY
NK1:
CJNE A,#0DH,NK2
MOV KEYTM,#2
SJMP NOKEY
NK2:
CJNE A,#0BH,NK3
MOV KEYTM,#3
SJMP NOKEY
NK3:
CJNE A,#07H,NOKEY
MOV KEYTM,#4
NOKEY: RET

⑤ 51 单片机 键盘扫描 汇编程序

矩阵就是送高低电平来确定你按下的是哪一个按键,基本就是给高四位送高,低四位送设低,读出在哪一行(或列),然后反转再确认在那一列(或行),这不就确定了第几行,第几列的按键被按下了。

⑥ 急求,51单片机走马灯+按键暂停这个用汇编语言编一个程序,图

ORG0000H
LJMPMAIN
ORG0030H
MAIN:
JBP1.0,MAIN1
JNBP1.0,$
MOVP0,#0FCH
SJMPMAIN
MAIN1:
JBP1.1,MAIN2
JNBP1.1,$
MOVP0,#0F3H
SJMPMAIN
MAIN2:
JBP1.2,MAIN3
JNBP1.2,$
MOVP0,#0CFH
SJMPMAIN
MAIN3:
JBP1.3,MAIN
JNBP1,3,$
MOVP0,#3FH
SJMPMAIN
END

⑦ 51单片机汇编语言编程独立按键

四个按键,定义如下:

KEY1 BIT P3.0
KEY2 BIT P3.1
KEY3 BIT P3.2
KEY4 BIT P3.3

按键处理程序:
;-----------------------------------
READ_KEY:

JB KEY1, K2
CALL DELAY
JB KEY1, K2
JNB KEY1, $

PUSH ACC
INC 75H
MOV A, 75H
CJNE A, #10, ZINT01
MOV 75H, #0
ZINT01:
POP ACC

JMP K_EXIT
;---------------
K2: JB KEY2, K3
CALL DELAY
JB KEY2, K3
JNB KEY2, $

PUSH ACC
INC 76H
MOV A, 76H
CJNE A, #10, ZINT01
MOV 76H, #0
ZINT01:
POP ACC

JMP K_EXIT
;---------------
K3: JB KEY3, K4
CALL DELAY
JB KEY3, K4
JNB KEY3, $

PUSH ACC
DEC 75H
MOV A, 75H
CJNE A, #255, ZINT03
MOV 75H, #9
ZINT03:
POP ACC

JMP K_EXIT
;---------------
K4: JB KEY4, K_EXIT
CALL DELAY
JB KEY4, K_EXIT
JNB KEY4, $

PUSH ACC
DEC 76H
MOV A, 76H
CJNE A, #255, ZINT04
MOV 76H, #9
ZINT04:
POP ACC

K_EXIT:
RET
;---------------
DELAY:
DJNZ R7, $
DJNZ R7, $
RET
;-----------------------------------

⑧ 51单片机汇编语言按键如何编程

编程时,要把整个程序,分解成一个一个模块。
一个模块,只包括一个功能。
那么,KEY 模块:
读出按键、消除抖动、读取键值,返回键值。
键值包括:00H、08H... 20H,FFH(无键)。
这个 KEY 模块,到这就完了。
按键如何处理,则是另外的模块。
楼主流程图,包罗万象,好像是个主程序。不好弄。

⑨ 51单片机汇编语言编程

这么简单的要求,不用大动干戈。 看看下面的程序,是不是最简单: ORG 0000H SETB TR0 ;启动T0 MOV R2, #250 ;定时计数初值 LOOP: MOV TH0, #(8192 - 8000) / 32 ;

⑩ 51单片机用汇编语言编制程序

数码管显示XX,并保持...

----
显示 XX ?

阅读全文

与51单片机按键程序汇编程序相关的资料

热点内容
看帧率app如何使用 浏览:523
从DHC服务器租用IP地址 浏览:473
编译怎么学 浏览:329
数码管显示0到9plc编程 浏览:665
服务器是为什么服务的 浏览:765
java定义数据类型 浏览:874
安卓pdf手写 浏览:427
什么是app开发者 浏览:284
android闹钟重启 浏览:101
程序员失职 浏览:518
在云服务器怎么改密码 浏览:586
服务器pb什么意思 浏览:940
51驾驶员的是什么app 浏览:670
php静态变量销毁 浏览:886
编程买苹果电脑 浏览:762
flac算法 浏览:499
reactnative与android 浏览:665
程序员是干什么的工作好吗 浏览:258
kbuild编译ko 浏览:471
条件编译的宏 浏览:566