📄 小区联网报警接收中心源程序.txt
字号:
硬件:asm [gplxw] [24次] 01-6-11 下午 05:12:19
;--------------------------
;小区联网报警接收中心源程序
;
;
;最后更新:2001-03-25
;--------------------------
ORG 000h
ajmp main
ORG 100H
Busy EQU p3.3
;Busy EQU p2.4
test_key equ p2.4
SDA EQU p1.0
SCL EQU p1.1
CS EQU P3.0
DI EQU P1.6
DO EQU P1.5
CLK EQU P1.7
ss EQU p3.2
mosi equ p3.5
sclk equ p2.3
int equ p3.4
commh EQU 21h
DATAL EQU 22H
DATAH EQU 23H
ADDRESS EQU 24h
TEMR EQU 25H
COUNT EQU 26H
COUNT1 EQU 27H
COUNT2 EQU 28H
TT1 EQU 29H
TT2 EQU 2aH
ls2 EQU 2bh
ls3 EQU 2ch
tt3 EQU 2dh
dm EQU 2eh
wm EQU 2fh
address_t equ 7ah
data_t equ 7bh
empty equ 7ch
bjjl equ 7dh
bj_fw equ 3eh
bj_yy equ 3fh
tt4 equ 7fh
TT5 EQU 20h
byl equ 71h
;--------------------
main: acall init
acall stop4
mov bjjl,#00h
wait: mov p0,#0ffh
; mov p2,#02h
mov p2,#01ah
jnb p0.0,t_hours
jnb p0.1,t_minutes
jnb p0.2,year_day
acall get_time
acall dtsm
; mov p2,#0h
mov p2,#018h
mov a,p0
jnb acc.6,bj
jnb p3.7,input1
ajmp wait
;------------------------
;时钟调节
;------------------------
add1: acall rdfrom
add a,#01h
da a
mov r2,a
xrl a,r1
jnz add11
cjne r1,#13h,ll1
ajmp ll0
ll1: cjne r1,#32h,ll2
ll0: mov r2,#01h
ajmp add11
ll2: mov r2,#00h
add11:mov a,r2
mov data_t,a
acall wrto
ret
year_day: nop
acall get_time
acall dtsm1
mov p0,#0ffh
mov p2,#012h
jnb p0.0,ty
jnb p0.1,tr
jnb p0.2,year_day
ajmp wait
t_hours:nop
jnb p0.0,t_hours
mov address_t,#02h
mov r1,#24h
ajmp tjsz
ty: mov address_t,#05h
mov r1,#13h
ajmp tjsz
tr: mov address_t,#04h
mov r1,#32h
ajmp tjsz
t_minutes:jnb p0.1,t_minutes
mov address_t,#01h
mov r1,#60h
tjsz: acall add1
ajmp wait
;--------------------------
input1: ajmp input
; mov p2,#09h
bj: anl a,#3fh
bjtw: mov bj_yy,a
mov b,#0ah
div ab
swap a
orl a,b
mov bj_fw,a
swap a
mov p2,#019h
mov p0,a
acall clk8
acall setdyj
setb busy
jb busy,jumpdy
acall wddy ;汉字微打
jumpdy:clr tr1
mov dptr,#tab
; mov p2,#05h
mov p2,#01dh
mov p0,#0ch ;报警语音片
acall clk8
acall tel
ls: acall dtsm
mov p2,#010h
mov a,p0
anl a,#3fh
cjne a,bj_yy,nextbj
ajmp ls
nextbj:ajmp bjtw
;------------------
; 输入电话码
;------------------
input: mov p2,#015h
mov p0,#02h ;p0=3 摘机
acall clk8
clr p2.5
acall mc
setb p1.3
mov p1,#0ffh
mov ls2,#9h
mov r1,#00h
bee1: lcall mc
mov p2,#015h
mov p0,#02h
mov tt1,#0ffh
yp3: mov tt2,#0ffh
yp4: jb p3.7,kk
jb p1.2,bee
djnz tt2,yp4
djnz tt1,yp3
ajmp bee1
kk: acall mc
ajmp wait
bee: nop
mov r0,#40h
nnn1: mov a,p1
jb p3.7,kk ;退出输码
jnb acc.2,nnn1
anl a,#0f0h
mov r6,a
cjne r1,#0h,yp1
swap a
mov r5,a
mov r1,#01h
ajmp nn
yp1: orl a,r5
mov @r0,a
inc r0
mov r1,#00h
nn: mov a,p1
jb acc.2,nn
cjne r6,#0c0h,nnn1
acall mc
djnz ls2,nnn1
cjne r5,#0ch,yp2
mov a,r5
mov @r0,a
;------------------
点击这里回复这篇贴子>>
_____________________________________________________________________________
Copyright?,C51BBS论坛 2000-2001
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -