📄 plj100.asm
字号:
;线路板NEWPLJ.PCB
;创建时间2003/6/23
;程序员:康海
;此程序最后位为标志位.
;===显示程序============
KEY1 EQU P1.2;4/8选择
KEY2 EQU P1.1;保持/分压
KEY3 EQU P1.0;计数
KEY4 EQU P1.3;频率
FYJDQ EQU P1.5
LBJDQ EQU P1.6
;========================
A0 EQU P0.3
A1 EQU P0.2
A2 EQU P0.4
A3 EQU P0.5
DAT EQU P0.7
CLK EQU P0.6
GK EQU P1.7
DD EQU P3.7;通道选择100m
;=======================
;======数据读入=========
B0 EQU P0.0;<--26
B1 EQU P0.1;<--27
B2 EQU P0.2;<--28
B3 EQU P0.3;29
B4 EQU P0.4;30
B5 EQU P0.5;31
B6 EQU P0.6;32
B7 EQU P0.7;33
D0 EQU P2.0;45
D1 EQU P2.1;47
D2 EQU P2.2;48
D3 EQU P2.3;49
D4 EQU P2.4;50
D5 EQU P2.5;51
D6 EQU P2.6;52
D7 EQU P2.7;53
;========================
;======通道选择==========
ADRA EQU P3.3;46
ADRB EQU P3.4;59
;========================
;======控制处理==========
CLRD EQU P3.6;57
START EQU P3.2;60
EEND EQU P3.5;58
;========================
;======通讯==============
;RXD EQU P3.0
;TXD EQU P3.1
RT485 EQU P1.4
;======信号输入==========
;FIN EQU 74;0.1--100M
;FSD EQU 56;标准频率100M
;========================
;======通讯用寄存器===============
RECE_BZ BIT 10H
SEND_BZ BIT 11H
RECE_1 BIT 12H
RECE_2 BIT 13H
RECE_3 BIT 14H
RECE_4 BIT 15H
RECE_5 BIT 16H
KEY_BZ BIT 00H
JS_BZ BIT 01H
XS_BZ1 BIT 02H
FY_BZ BIT 03H
LB_BZ BIT 04H
;=================================
TDDIG EQU 25H
TX_TIME EQU 26H;已在乘法中占用
RECE_BTY EQU 27H;已在乘法中占用
LBDIG EQU 28H
ADDH EQU 29H
ADDL EQU 2AH
WR_RDH EQU 2BH
WR_RDL EQU 2CH
DS_TIME EQU 2DH
;===================================
RECEDATA2 EQU 2EH
RECEDATA_3 EQU 2FH
RECEDATA_4 EQU 30H
RECEDATA_5 EQU 31H
RECEDATA_6 EQU 32H
RECEDATA_7 EQU 33H
RECEDATA_8 EQU 34H
RECEDATA_9 EQU 35H
RECEDATA_10 EQU 36H
RECEDATA_11 EQU 37H
;==========================================
MA1_DATAH EQU 38H;通讯数据
MA1_DATAL EQU 39H
MA1DATAH EQU 3AH
GDIG EQU 3BH
MAXSD EQU 3CH
MAZSD EQU 3DH
HCQ1 EQU 3EH
HCQ2 EQU 3FH
;==========================================
;================显示寄存器================
DSPLA_ADD1 EQU 40H;指示灯,HZ//KHZ
DSPLA_ADD2 EQU 41H
DSPLA_ADD3 EQU 42H
DSPLA_ADD4 EQU 43H
DSPLA_ADD5 EQU 44H
DSPLA_ADD6 EQU 45H
DSPLA_ADD7 EQU 46H
DSPLA_ADD8 EQU 47H
DSPLA_ADD9 EQU 48H
;环存49H
;环存4AH
KEYFUN EQU 4BH
XSDIG EQU 4CH
XSDIG1 EQU 4DH
FYDIG EQU 4EH
KDIG EQU 4FH
;=========================================
BCJSQ0 EQU 50H
BCJSQ1 EQU 51H
BCJSQ2 EQU 52H
BCJSQ3 EQU 53H
BZJSQ0 EQU 54H
BZJSQ1 EQU 55H
BZJSQ2 EQU 56H
BZJSQ3 EQU 57H
;==================8单元
CJDIG0 EQU 58H
CJDIG1 EQU 59H
CJDIG2 EQU 5AH
CJDIG3 EQU 5BH
CJDIG4 EQU 5CH
CJDIG5 EQU 5DH
CJDIG6 EQU 5EH
CJDIG7 EQU 5FH
;==================8单元
BZDIG0 EQU 60H
BZDIG1 EQU 61H
BZDIG2 EQU 62H
BZDIG3 EQU 63H
BZDIG4 EQU 64H
BZDIG5 EQU 65H
BZDIG6 EQU 66H
BZDIG7 EQU 67H
;=========================================
SJDIG0 EQU 68H
SJDIG1 EQU 69H
SJDIG2 EQU 6AH
SJDIG3 EQU 6BH
;===============10单元
BCD1 EQU 6CH
BCD2 EQU 6DH
BCD3 EQU 6EH
BCD4 EQU 6FH
BCD5 EQU 70H
BCD6 EQU 71H
BCD7 EQU 72H
BCD8 EQU 73H
BCD9 EQU 74H
BCD10 EQU 75H
BCD11 EQU 76H
kkkk EQU 77H
F_FLAG EQU 79H
C_FLAG EQU 7AH
H_FLAG EQU 7BH
;=======
;LBDIG EQU 7FH
;==============高位RAM=80---FF
BCDF1 EQU 80H
BCDF2 EQU 81H
BCDF3 EQU 82H
BCDF4 EQU 83H
BCDF5 EQU 84H
BCDF6 EQU 85H
BCDF7 EQU 86H
BCDF8 EQU 87H
BCDF9 EQU 88H
BCDF10 EQU 89H
BCDF11 EQU 8AH
BCDF12 EQU 8BH
BCDF13 EQU 8CH
BCDF14 EQU 8DH
BCDF15 EQU 8EH
BCDF16 EQU 8FH
BCDF17 EQU 90H
BCDF18 EQU 91H
BCDF19 EQU 92H
BCDF20 EQU 93H
;===============================================
fas1 equ 0f0h
;=============================================
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP TIM0
ORG 001BH
LJMP TIM1
;ORG 0023H;GGGGGGGGGGGGGGGGGGGGGGG
;LJMP RD_TX
;=========================================
MAIN: LCALL WDT_DOG
LCALL SETUP;
MOV DSPLA_ADD1,#20
MOV DSPLA_ADD2,#11
MOV DSPLA_ADD3,#2
MOV DSPLA_ADD4,#3
MOV DSPLA_ADD5,#4
MOV DSPLA_ADD6,#5
MOV DSPLA_ADD7,#6
MOV DSPLA_ADD8,#7
MOV DSPLA_ADD9,#8
; setb p1.4
LOOP: lcall txfg
LCALL DSPLA
; mov r5,#0ffh
p980: lcall txfg
; djnz r5,p980
LJMP LOOP
PDNX9: mov xsdig,#00h
LCALL DSPLA
ljmp loop
;=============================================
DSPLATEMP1: MOV A,DSPLA_ADD1
CLR C
SUBB A,#32
JC PPPUI
MOV DSPLA_ADD1,#32
LJMP JKHG
PPPUI: MOV DSPLA_ADD1,#20
JKHG: ;MOV XSDIG1,#00H
LJMP DSPLATEMP
;============================================
PFGQ: SETB FYJDQ
LJMP STP
PPPY: SETB LBJDQ
LJMP STP1
;============================================
DSPLA: LCALL WDT_DOG
lcall txfg
;======================
MOV A,GDIG
cjne a,#8,khj
;JZ KHJ
SETB DD
LJMP PPPR
KHJ: CLR DD
PPPR: MOV A,FYDIG
CJNE A,#00H,PFGQ
CLR FYJDQ
;====================
STP: MOV A,LBDIG
CJNE A,#00H,PPPY
CLR LBJDQ
STP1: CLR GK
MOV A,R0
MOV HCQ1,A
MOV A,R7
MOV HCQ2,A
DJNZ KDIG,PQW
LCALL KEY
MOV KDIG,#40H
PQW: CLR A0
CLR A2
CLR A1
CLR A3
MOV A,KEYFUN
;CJNE A,#02H,ST
;MOV DSPLA_ADD1,#64
ST: JNZ PRE;DSPLATEMP;A不为零转移
;===============显示判断
DSPLAW: ; setb p1.4
; jb p1.4,sf
mov xsdig1,#0
ljmp dsplatemp1
; MOV A,XSDIG
JZ DSPLATEMP1
sf: LCALL DSPLA4;4位显示
SETB XS_BZ1
ljmp dsplatemp1
LJMP PRE
;=======================
DSPLATEMP: MOV A,DSPLA_ADD1
; mov a,#20
ADD A,FYDIG
MOV DSPLA_ADD1,A
MOV A,DSPLA_ADD1
ADD A,LBDIG
MOV DSPLA_ADD1,A
MOV A,DSPLA_ADD1
ADD A,GDIG
MOV DSPLA_ADD1,A
; mov dspla_add1,#24
;=================================
PRE:
;MOV DSPLA_ADD3,DSPLA_ADD1;gggggggggggggggggggg
MOV R7,#10
MOV R0,#DSPLA_ADD1
MOV DPTR,#TAB
DSP1: MOV A,R7
CJNE A,#1,PPW
MOV A,#00H
LJMP DENG
PPW: MOV A,@R0
MOVC A,@A+DPTR
;MOV A,#0C0H
DENG: CLR CLK
CLR C
RLC A
MOV DAT,C ;1
SETB CLK
NOP
CLR CLK
RLC A
MOV DAT,C ;2
SETB CLK
NOP
CLR CLK
RLC A
MOV DAT,C ;3
SETB CLK
NOP
CLR CLK
RLC A
MOV DAT,C ;4
SETB CLK
NOP
CLR CLK
RLC A
MOV DAT,C ;5
SETB CLK
NOP
CLR CLK
RLC A
MOV DAT,C ;6
SETB CLK
NOP
CLR CLK
RLC A
MOV DAT,C ;7
SETB CLK
NOP
CLR CLK
RLC A
MOV DAT,C ;8
SETB CLK
NOP
CLR CLK
LCALL WAY;置位
LCALL DELAY10;关闭
; LCALL DELAY10;关闭
lcall wdt_dog;
LCALL DELAY10;关闭
; LCALL DELAY10;关闭
lcall wdt_dog;
LCALL DELAY10;关闭
lcall wdt_dog;
LCALL DELAY10;关闭
;LCALL DELAY10;关闭
CLR A0
SETB A1
CLR A2
SETB A3
DSP2: INC R0
DJNZ R7,DSP1
SETB GK
MOV A,HCQ1
MOV R0,A
MOV A,HCQ2
MOV R7,A
RET
DSPLAEND: RET
TAB: DB 0EBH,88H,0B3H,0BAH,0D8H,7AH,7BH,0A8H ;0-----7
DB 0FBH,0FAH;9
DB 0EFH,8CH,0B7H,0BEH,0DCH,7EH,7FH,0ACH,0FFH,0FEH
DB 10H,50H,30H,70H,18H,58H,38H,78H,14H,54H,34H,74H
DB 80H,0C0H,0A0H,0E0H,88H,0C8H,0A8H,0e8H,84H,0C4H,0A4H,0E4H;KHZ///HZ//HZLP//HZFY
DB 0FFH,0EFH,0F7H,0FCH,0B9H,0DEH,0F9H,0F1H
DB 40H,73H,76H,00H,00H,00H,00H,00H,00H,00H
DB 71H,63H,0D9H,43H,9BH,0F1H ;F,C,H,L,D,p
;========================================================
WAY: MOV A,R7
CJNE A,#10,WAY9;指示灯
SETB A0
CLR A1
CLR A2
CLR A3
RET
WAY9: MOV A,R7;8
CJNE A,#9,WAY8
MOV A,XSDIG1
CJNE A,#4,PF
RET
PF: CLR A0
SETB A1
CLR A2
CLR A3
RET
WAY8: MOV A,R7;7
CJNE A,#8,WAY1
MOV A,XSDIG1
CJNE A,#4,PF1
RET
PF1: SETB A0
SETB A1
CLR A2
CLR A3
RET
WAY1: CJNE A,#7,WAY2;6
MOV A,XSDIG1
CJNE A,#4,PF2
RET
PF2: CLR A0
CLR A1
SETB A2
CLR A3
RET
WAY2: CJNE A,#6,WAY3;5
MOV A,XSDIG1
CJNE A,#4,PF3
MOV A,DSPLA_ADD5
CLR C
SUBB A,#10
JNC PF3
RET
PF3: SETB A0
CLR A1
SETB A2
CLR A3
RET
WAY3: CJNE A,#5,WAY4;4
SETB A0
CLR A1
CLR A2
SETB A3
RET
WAY4: CJNE A,#4,WAY5;3
SETB A0
SETB A1
SETB A2
CLR A3
RET
WAY5: CJNE A,#3,WAY6;2
CLR A0
CLR A1
CLR A2
SETB A3
RET
WAY6: CJNE A,#2,WAY7;1
CLR A0
SETB A1
SETB A2
CLR A3
WAY7: RET
;=====================================================
;初始化,波特率9600,8位数据,1位停止
;=====================================================
SETUP: ; CLR SOUND;蜂鸣器
CLR RT485;========
MOV TMOD,#21H
MOV SCON,#50H
MOV TH0,#09EH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -