救护车.asm

来自「我学单片机89C51时编的大部分程序都在里面」· 汇编 代码 · 共 36 行

ASM
36
字号
        ORG 0000H
        LJMP GAO
        ORG 0030H
GAO:    MOV B,#500                ;中断次数  对应频率500Hz,500,2000均应写作高低位
        MOV TMOD,#01H             ;定时器0工作于模式1
        MOV TH0,# 0F8H            ;每次中断时间为
        MOV TL0,#30H             ;
        SETB TR0               ;启动定时器T0
        SETB ET0               ;允许T0中断
        SETB EA                ;允许CPU中断
        SJMP $  
SERVE0: MOV TH0,#0F8H              ;重新赋初值
        MOV TL0,#30H              ;
        CPL P1.0               ;输出--鸣笛
        DJNZ B,LOOP            ;
        CLR TR0                ;
LOOP:   RETI                   ;中断返回

DI:     MOV B,#2000 	;中断次数  对应频率2000Hz
        MOV TMOD,#01H             ;同上
        MOV TH0,#0FEH
        MOV TL0,#0CH
        SETB TR0
        SETB ET0
        SETB EA
        SJMP $  
SERVE1: MOV TH0,#0FEH
        MOV TL0,#0CH
        CPL P1.0
        DJNZ B,LOOP1
        CLR TR0
LOOP1:   RETI

        LJMP GAO               ;继续循环
           ;

⌨️ 快捷键说明

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