📄 alarm.sdi
字号:
,,,;本程序是一个以89C51为核心的声光报警器控制程序
,,,;系统的晶振频率12MHz,外界报警触发脉冲接至INT0,报警复位按钮接P1.2,喇叭接P1.1
,,,;当外界报警脉冲触发报警后,LED(接P1.0)以1Hz的频率闪动,同时喇叭种发出"Wu,Wa......"的警笛声
,,,;该声音由1kHz和500Hz方波以0.5秒为间隔交替发声
,,,;值班人员按动报警复位钮后声光报警停止。
,,,HISOUND BIT 00H ;高音标志
000B,,,LED BIT P1.0 ;驱动LED接口
000B,,,SPEAKER BIT P1.1 ;喇叭
000B,,,STOP BIT P1.2 ;复位按钮
,,,BR2 EQU 0AH ;1区R2
,,, ORG 0
0000,02 00 30,, LJMP START
,,, ORG 3
0003,02 00 6C,, LJMP ALARM
,,, ORG 0BH
000B,02 00 71,, LJMP T0S
,,, ORG 1BH
001B,02 00 89,, LJMP T1S
,,, ORG 30H
0030,75 81 60,START,START: MOV SP,#60H
0033,75 0A 0A,, MOV BR2,#10
0036,D2 88,, SETB IT0
0038,D2 A9,, SETB ET0
003A,D2 AB,, SETB ET1
003C,D2 A8,, SETB EX0
003E,D2 B9,, SETB PT0
0040,D2 AF,, SETB EA
0042,D2 00,, SETB HISOUND
0044,D2 90,, SETB LED ;熄灭LED
0046,C2 91,, CLR SPEAKER
0048,75 89 11,, MOV TMOD,#11H
004B,75 8C FE,, MOV TH0,#0FEH
004E,75 8A 0C,, MOV TL0,#0CH
0051,75 8D 3C,, MOV TH1,#3CH
0054,75 8B B0,, MOV TL1,#0B0H
0057,D2 92,, SETB STOP ;允许报警复位按钮输入
0059,20 92 FD,loop,loop: JB STOP,LOOP
005C,12 00 A4,, LCALL DELAY ;消除开关抖动
005F,20 92 F7,, JB STOP,LOOP
0062,C2 8C,, CLR TR0
0064,C2 8E,, CLR TR1
0066,D2 90,, SETB LED ;熄灭LED
0068,C2 91,, CLR SPEAKER
006A,80 ED,, SJMP LOOP
006C,D2 8C,ALARM,ALARM: SETB TR0
006E,D2 8E,, SETB TR1
0070,32,, RETI
0071,C2 8C,T0S,T0S: CLR TR0
0073,20 00 08,, JB HISOUND,T0S1
0076,75 8C FC,, MOV TH0,#0FCH
0079,75 8A 18,, MOV TL0,#18H
007C,80 06,, SJMP T0S2
007E,75 8C FE,T0S1,T0S1: MOV TH0,#0FEH
0081,75 8A 0C,, MOV TL0,#0CH
0084,D2 8C,T0S2,T0S2: SETB TR0
0086,B2 91,, CPL SPEAKER
0088,32,, RETI
0089,C0 D0,T1S,T1S: PUSH PSW
008B,D2 D3,, SETB RS0
008D,C2 D4,, CLR RS1
008F,C2 8E,, CLR TR1
0091,75 8D 3C,, MOV TH1,#3CH
0094,75 8B B0,, MOV TL1,#0B0H
0097,D2 8E,, SETB TR1
0099,DA 06,, DJNZ R2,T1S1
009B,7A 0A,, MOV R2,#10
009D,B2 00,, CPL HISOUND
009F,B2 90,, CPL LED
00A1,D0 D0,T1S1,T1S1: POP PSW
00A3,32,, RETI
00A4,7E 14,DELAY,DELAY: MOV R6,#20
00A6,7F FA,L1,L1: MOV R7,#250
00A8,00,L2,L2: NOP
00A9,00,, NOP
00AA,DF FC,, DJNZ R7,L2
00AC,DE F8,, DJNZ R6,L1
00AE,22,, RET
000E,,, END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -