📄 test_read.asm
字号:
;;=======报警系统===========
SDA EQU P3.6
SCL EQU P3.7
phonenum EQU 03H ;电话个数
ORG 0000H
LJMP main
ORG 0013H
JMP INTPT1
org 000bh
ljmp time0
org 001bh
ljmp time1
ORG 0020H
main:
CLR EA
MOV TMOD,#11H
SETB ET0
setb et1
MOV A,#00H
MOV B,A
MOV R0,#20H
CLR_RAM:
MOV @R0,A
INC R0
CJNE R0,#80H,CLR_RAM
mov sp,#60h
MAIN1:
MOV 3AH,#00H ;电话表指针
MOV 37H,#00h
MOV IP,#02H
clr IT1
mov tl0,#0b0h
mov th0,#3ch
mov tl1,#0b0h
mov th1,#3ch
mov P0,#0ffh
mov P1,#0ffh
MOV P2,#0FFH ;p2.6 换为低电平驱动
MOV P3,#0FEH
SETB EA
setb tr1
;=========测试按键================
JNB P3.1,L2
MOV 30H,#16H
LCALL delay10ms
JNB P3.1,L2
MOV 30H,#16H
LCALL delay10ms
JNB P3.1,L2
LJMP pre_set ;进入预置
L2:
JB P3.2,Next0 ;中断0 如果语音一直为低 就挂机
MOV 30H,#16H
LCALL delay10ms
JB P3.2,Next0
MOV 30H,#16H
LCALL delay10ms
JB P3.2,Next0
lcall handfree;非低点评拨号因
;-------------------------------------------
Next0:
JNB P3.4,NEXT1
MOV 30H,#10
LCALL delay10ms
JNB P3.4,NEXT1
MOV 30H,#10
LCALL delay10ms
JNB P3.4,NEXT1
setb 00h ;为开关中断1的标志
NEXT1:
JNB P3.5,NEXT2
MOV 30H,#16H
LCALL delay10ms
JNB P3.5,NEXT2
MOV 30H,#16H
LCALL delay10ms
JNB P3.5,NEXT2
clr 00h
;-------------------------------------------
NEXT2:
JNB 00H,NEXTMAIN
SETB EX1
ljmp NEXTMAIN1
NEXTMAIN:
CLR EX1
NEXTMAIN1:
NOP
NOP
LJMP MAIN1
;=====================预置
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -