永发信息网

高分求每一行意思(单片机。是每一行的哦)谢谢~~~~

答案:2  悬赏:0  手机版
解决时间 2021-01-11 04:02
  • 提问者网友:且恨且铭记
  • 2021-01-10 03:24
高分求每一行意思(单片机。是每一行的哦)谢谢~~~~
最佳答案
  • 五星知识达人网友:傲气稳了全场
  • 2021-01-10 04:48
ORG 0000H ;定义当前位置为 0000H
MAIN: MOV P2,#0FEH ;传送 接口2,立即数0FEH
MOV P0,#0F9H ;传送 接口0,立即数0F9H
LCALL DELAY ;长调用 DELAY
MOV P2,#0FDH ;传送 接口2,立即数0FDH
MOV P0,#0A4H ;传送 接口0,立即数0A4H
LCALL DELAY ;长调用 DELAY
MOV P2,#0FBH ;传送 接口2,立即数0FBH
MOV P0,#0B0H ;传送 接口0,立即数0B0H
LCALL DELAY ;长调用 DELAY
MOV P2,#0F7H ;传送 接口2,立即数0F7H
MOV P0,#99H ;传送 接口0,立即数99H
LCALL DELAY ;长调用 DELAY
LJMP MAIN ;长转移到 MAIN,

DELAY:MOV R1,#2 ;传送 通用寄存器1,立即数2
D1:MOV R2,#248 ;传送 通用寄存器2,立即数248
DJNZ R2,$ ;减一不为0转移 通用寄存器2,到本行
DJNZ R1,D1 ;减一不为0转移 通用寄存器1,D1
RET ;子程序返回

END ;END
(2)ORG 0000H ;(2)ORG 0000H
SMKEY: ;
MOV P1,#03H ;传送 接口1,立即数03H
MOV A,P1 ;传送 寄存器A,接口1
ANL A,#03H ;逻辑-与 寄存器A,立即数03H
CJNE A,#03H,HKEY ;比较-不等转移 寄存器A,立即数03H,
SJMP SMKEY ;短转移到 SMKEY
HKEY: ;
LCALL DELAY ;长调用 DELAY
MOV A,P1 ;传送 寄存器A,接口1
ANL A,#03H ;逻辑-与 寄存器A,立即数03H
MOV R0,A ;传送 通用寄存器0,A
CJNE A,#03H,WKEY ;比较-不等转移 寄存器A,立即数03H,
SJMP SMKEY ;短转移到 SMKEY
WKEY: ;
MOV P1,#01CH ;传送 接口1,立即数01CH
MOV A,P1 ;传送 寄存器A,接口1
ANL A,#01CH ;逻辑-与 寄存器A,立即数01CH
ORL A,R0 ;逻辑-或 寄存器A,通用寄存器0
LJMP JS ;长转移到 JS,
D3: LCALL DELAY ;长调用 DELAY,
LJMP SMKEY ;长转移到 SMKEY

ORG 2000H ;定义当前位置为 2000H
TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H ;程序空间定义数据 0C0H,0F9H,
DELAY:MOV R6,#20 ;传送 通用寄存器6,立即数20
D1: MOV R7,#228 ;传送 通用寄存器7,立即数228
DJNZ R7,$ ;减一不为0转移 通用寄存器7,到本行
NOP ;空操作
DJNZ R6,D1 ;减一不为0转移 通用寄存器6,D1
RET ;RET
JS: CLR C ;清0 进位标志/累加位
RR A ;循环右移 寄存器A
RR A ;循环右移 寄存器A
ANL A,#0FH ;逻辑-与 寄存器A,立即数0FH
RR A ;循环右移 寄存器A
ANL A,#0FH ;逻辑-与 寄存器A,立即数0FH
MOV B,A ;传送 B,寄存器A
MOV A,#04H ;传送 寄存器A,立即数04H
SUBB A,B ;带进位减法 寄存器A,B
MOV R1,A ;传送 通用寄存器1,寄存器A

MOV B,R0 ;传送 B,通用寄存器0
MOV A,#02H ;传送 寄存器A,立即数02H
SUBB A,B ;带进位减法 寄存器A,B
MOV R0,A ;传送 通用寄存器0,寄存器A

MOV A,R0 ;传送 寄存器A,通用寄存器0
MOV B,#03H ;传送 B,立即数03H
MUL AB ;两数相乘 AB
ADD A,R1 ;两数相加 寄存器A,通用寄存器1
MOV P2,#8BH ;传送 接口2,立即数8BH
MOV DPTR,#2000H ;传送 DPTR,立即数2000H
MOVC A,@A+DPTR ;程序存储器-读 寄存器A,A+DPTR指向的单元的内容
MOV P0,A ;传送 接口0,寄存器A
LJMP D3 ;长转移到 D3

END ;END
(3)org 0000h ;(3)org 0000h
LJMP START ;长转移到 START
ORG 0023H ;定义当前位置为 0023H
LJMP PINTS ;长转移到 PINTS
ORG 0100H ;定义当前位置为 0100H
START: ;
SETB EA ;位-置1 EA
CLR ET1 ;清0 ET1
SETB ES ;位-置1 ES
ANL TMOD,#0FH ;逻辑-与 TMOD,立即数0FH
ORL TMOD,#20H ;逻辑-或 TMOD,立即数20H
MOV TH1,#0FDH ;传送 TH1,立即数0FDH
MOV TL1,#0FDH ;传送 TL1,立即数0FDH
SETB TR1 ;位-置1 TR1
MOV SCON,#50H ;传送 SCON,立即数50H
MOV PCON,#00H ;传送 PCON,立即数00H
SJMP $ ;短转移到 到本行
PINTS: ;
MOV A,SBUF ;传送 寄存器A,SBUF
CLR RI ;清0 RI
CJNE A,#02H,P55 ;比较-不等转移 寄存器A,立即数02H,
MOV R0,#0 ;传送 通用寄存器0,立即数
MOV DPTR,#TAB1 ;传送 DPTR,立即数TAB1
AGAIN: ;
MOV A,R0 ;传送 寄存器A,通用寄存器0
MOVC A,@A+DPTR ;程序存储器-读 寄存器A,A+DPTR指向的单元的内容
MOV SBUF,A ;传送 SBUF,寄存器A
WAITI: ;
JNB TI,WAITI ;位为0转移到 TI,WAITI
CLR TI ;清0 TI
INC R0 ;加1 通用寄存器0
CJNE R0,#05H,AGAIN ;比较-不等转移 通用寄存器0,立即数05H,
SJMP QT ;短转移到 QT
P55: ;
CJNE A,#55H,QT ;比较-不等转移 寄存器A,立即数55H,
MOV DPTR,#TAB2 ;传送 DPTR,立即数TAB2
MOV R0,#0 ;传送 通用寄存器0,立即数
AGAIN2: ;
MOV A,R0 ;传送 寄存器A,通用寄存器0
MOVC A,@A+DPTR ;程序存储器-读 寄存器A,A+DPTR指向的单元的内容
MOV SBUF,A ;传送 SBUF,寄存器A
WAITI2: ;
JNB TI,WAITI2 ;位为0转移到 TI,WAITI2
CLR TI ;清0 TI
INC R0 ;加1 通用寄存器0
CJNE R0,#20,AGAIN2 ;比较-不等转移 通用寄存器0,立即数20,
QT: ;
RETI ;中断返回

TAB1:DB 48H,45H,4CH,4CH,4FH ;程序空间定义数据 48H,45H,
TAB2:DB 'T','H','I','S',' ','I','S',' ','A',' ','W','E','L','L',' ','B','E','G','I','N' ;程序空间定义数据 'T','H',
END ;END
全部回答
  • 1楼网友:毛毛
  • 2021-01-10 04:54
呵呵,就算有人说出来,您能看懂吗!如果一个手脚灵活的人却需要别人一口口的喂饭吃,他能说出放的味道吗
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯