蜂鸣器发出高低音问题。。
时间:10-02
整理:3721RD
点击:
我第一次写程序。没用定时计数器。
TURN_ON:MOV SFRPAGE,#0FH
JB P5.5,$
MOV SFRPAGE,#00H ;对P5.5口页面设置使用
CLR P1.0
LCALL DELAY
SETB P1.0
LCALL DELAY ;使蜂鸣器高音震动
LJMP DELAY_T ;延长一段时间
LOWS: CLR P1.0
LCALL DELAY_L
SETB P1.0
LCALL DELAY_L ;使蜂鸣器低音震动
LJMP DELAY_T ;延长一段时间
DELAY: MOV R6,#20
D1: MOV R7,#100
DJNZ R7,$
DJNZ R6,D1
RET ;高音震动程序
DELAY_T: MOV R5,#20
D2: MOV R4,#500
D3: MOV R3,#500
DJNZ R3,$
DJNZ R4,D3
DJNZ R5,D2
RET ;延时程序
DELAY_L: MOV R2,#20
D4: MOV R1,#50
DJNZ R1,$
DJNZ R2,D4
RET ;低音震动程序
这个写入单片机后,单片机发出的音是断续的音,没有高低音。是逻辑问题出错了么。求解答。
TURN_ON:MOV SFRPAGE,#0FH
JB P5.5,$
MOV SFRPAGE,#00H ;对P5.5口页面设置使用
CLR P1.0
LCALL DELAY
SETB P1.0
LCALL DELAY ;使蜂鸣器高音震动
LJMP DELAY_T ;延长一段时间
LOWS: CLR P1.0
LCALL DELAY_L
SETB P1.0
LCALL DELAY_L ;使蜂鸣器低音震动
LJMP DELAY_T ;延长一段时间
DELAY: MOV R6,#20
D1: MOV R7,#100
DJNZ R7,$
DJNZ R6,D1
RET ;高音震动程序
DELAY_T: MOV R5,#20
D2: MOV R4,#500
D3: MOV R3,#500
DJNZ R3,$
DJNZ R4,D3
DJNZ R5,D2
RET ;延时程序
DELAY_L: MOV R2,#20
D4: MOV R1,#50
DJNZ R1,$
DJNZ R2,D4
RET ;低音震动程序
这个写入单片机后,单片机发出的音是断续的音,没有高低音。是逻辑问题出错了么。求解答。
