⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 51单片机曼码解码程序.txt

📁 用8051单片机读取em4100数据的程序
💻 TXT
字号:
TLL EQU 2DH
TLH EQU 42H
THL EQU 62H
THH EQU 81H
TDL EQU 88H
TDL1 EQU 2AH
BLK1 EQU 70H ;读出数据缓存
OK BIT 79H
OUT BIT P1.1
CFE BIT P1.2

ORG 0000H
LJMP RD_D
ORG 0050H

RD_D:
MOV A,R6
PUSH ACC
MOV A,R7
PUSH ACC
LCALL EDGEM
JB OK,RD_OK

RD_D0:
CLR OK
LJMP RD_D

RD_OK:
NOP

RD_D1:
MOV R0,#BLK1 ;读到BLK1

RD_DL0:
MOV R6,#0BH ;位计数---R6*R5

RB_L:
CLR A
MOV @R0,A

RD_DL1:
MOV R5,#05H

RD_DL2:
JB OUT,RD_DL5
MOV A,#00H

RD_DL3:
CJNE A,#TDL1,RD_DL4
LJMP RD_D0

RD_DL4:
JB OUT,RD_DLK
INC A
SJMP RD_DL3

RD_DL5:
MOV A,#00H

RDDL5:
CJNE A,#TDL1,RD_DL6
LJMP RD_D0

RD_DL6:
JNB OUT,RD_DLK
INC A
SJMP RDDL5

RD_DLK:
MOV C,OUT
CPL C
MOV A,@R0
RLC A
MOV @R0,A
MOV R1,#TDL ;延时TNEXT
DJNZ R1,$
DJNZ R5,RD_DL2
INC R0
DJNZ R6,RB_L
SETB OK

RDRET:
POP ACC
MOV R7,A
POP ACC
MOV R6,A
SJMP $

EDGEM:
MOV R7,#00H

EDGE0:
MOV R1,#08H
NOP
DJNZ R7,EDGE1

EDGER:
CLR OK
RET

EDGE1:
JNB OUT,$
MOV DPTR,#0000H

EDGE2:
INC DPTR
JB OUT,EDGE2
MOV A,DPH
JNZ EDGER
MOV A,DPL
CLR C
SUBB A,#THL
JC EDGE0
MOV A,DPL
CLR C
SUBB A,#THH
JNC EDGER

EDGE3:
JNB OUT,$
MOV DPTR,#0000H

EDGE4:
INC DPTR
JB OUT,EDGE4
MOV A,DPL
CLR C
SUBB A,#TLH
JNC EDGE0
MOV A,DPH
JNZ EDGER
MOV A,DPL
CLR C
SUBB A,#TLL
JC EDGER
MOV A,DPL
CLR C
SUBB A,#TLH
JNC EDGE0
DJNZ R1,EDGE3
MOV R1,#TDL
DJNZ R1,$
SETB OK
RET

MOV P0,BLK1
END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -