📄 beepcon.s
字号:
;******************************************************************************
; 文件名:BEEPCON.S
; 功能:蜂鸣器控制。对蜂鸣器B1进行控制,采用软件延时方法。
; 使用I/O口直接控制,采用灌电流方式。
; 说明:将跳线器JP9短接,JP4断开。
;******************************************************************************
INCLUDE LPC2294.INC
EXPORT MAIN
BEEPCON EQU 0x00000080 ; P0.7引脚控制B1,低电平蜂鸣
AREA BEEPCONC,CODE,READONLY ; 声明程序代码块
ENTRY ; 程序入口
MAIN LDR R0,=PINSEL0 ; 装载寄存器地址,PINSEL0
MOV R1,#0x00000000 ; 设置数据,即设置管脚连接GPIO
STR R1,[R0] ; R1 -> [R0]
LDR R0,=PINSEL1
STR R1,[R0]
LDR R0,=IO0DIR
LDR R1,=BEEPCON
STR R1,[R0] ; 设置BEEP控制口为输出
MAIN_LOOP LDR R1,=BEEPCON ; 设置GPIO控制参数
BEEPSET LDR R0,=IO0SET
STR R1,[R0] ; BEEP控制I/O置位
BL DELAYS
BEEPCLR LDR R0,=IO0CLR
STR R1,[R0] ; BEEP控制I/O复位
BL DELAYS
B MAIN_LOOP ; 无条件跳转到MAIN_LOOP
;******************************************************************************
; 名称:DELAYS
; 功能:软件延时
; 入口参数:无
; 出口参数:无
; 占用资源:R7
;******************************************************************************
DELAYS
MOV R7,#0x00005F00 ; 延时参数
DELAYS_L1 SUBS R7,R7,#1 ; R7 = R7-1
BNE DELAYS_L1 ; 判断R7-1结果是否为0,若不为0则跳转
MOV PC,LR ; 返回
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -