技术文档

单片机 驱动喇叭 学习笔记单片机的40个经典实验之5:报警产生器

小编 2024-11-25 技术文档 23 0

学习笔记单片机的40个经典实验之5:报警产生器

一、实验任务

用 P1.0 输出 1KHz 和 500Hz 的音频信号驱动扬声器,作报警信号,要求 1KHz信号响 100ms,500Hz 信号响 200ms,交替进行,P1.7 接一开关进行控制,当开关合上响报警信号,当开关断开告警信号停止,编出程序。

二、 电路原理图

图 4.6.1

三、 系统板上硬件连线

(1. 把“单片机系统”区域中的 P1.0 端口用导线连接到“音频放大模块”区域中的 SPK IN 端口上;

(2. 在“音频放大模块”区域中的 SPK OUT 端口上接上一个 8 欧的或者是16 欧的喇叭;

(3. 把“单片机系统”区域中的 P1.7/RD 端口用导线连接到“四路拨动开关”区域中的 K1 端口上;

四、 程序设计内容

(1. 信号产生的方法500Hz 信号周期为 2ms,信号电平为每 1ms 变反 1 次,1KHz 的信号周期为 1ms,信号电平每 500us 变反 1 次;

五、 程序框图

图 4.6.2

六、 汇编源程序

FLAG BIT 00H

ORG 00H

START: JB P1.7,START

JNB FLAG,NEXT

MOV R2,#200

DV: CPL P1.0

LCALL DELY500

LCALL DELY500

DJNZ R2,DV

CPL FLAG

NEXT: MOV R2,#200

DV1: CPL P1.0

LCALL DELY500

DJNZ R2,DV1

CPL FLAG

SJMP START

DELY500: MOV R7,#250

LOOP: NOP

DJNZ R7,LOOP

RET

END

七、 C 语言源程序

#include <AT89X51.H>

#include <INTRINS.H>

bit flag;

unsigned char count;

void dely500(void)

{

unsigned char i;

for(i=250;i>0;i--)

{

_nop_;

}

}

void main(void)

{

while(1)

{

if(P1_7==0)

{

for(count=200;count>0;count--)

{

P1_0=~P1_0;

dely500;

阅读本文用了: 秒,转发只需1秒

转载是一种智慧 分享是一种美德❀

单片机音频控制电路的制作

单片机的 P1.0 驱动扬声器发出不同频率、不同长短的声音。

硬件电路制作 : (1) 电路原理图

(2)制作要点及元器件清单

(3)电路的调试

通电之前先用万用表检查各种电源线与地线之间是否有短路现象。 给硬件系统加电,检查所有插座或器件的电源端是否有符合要求的电压值,接地端电压是否为0V。不插入单片机,用一根导线,导线的一端接+5V电源,另一端碰触IC插座的1脚,听扬声器是否发出“咔咔”声。

程序编写

1 )单频率声音 ORG 0000H ; 复位入口地址 LJMP MAIN ; 转移到主程序 MAIN MAIN: CPL P1.0 ;P1.0 取反 LCALL DELAY ; 调延时子程序 LJMP MAIN ; 循环执行主程序 DELAY: MOV R0,#07H ; 延时子程序 LOOP2: MOV R1,#1FH LOOP1: DJNZ R1,LOOP1 DJNZ R0,LOOP2 RET 请读者修改延时时间,听音调的变化。

2)双音报警声( 本程序可模拟出非常急促的双音报警声。

ORG 0000H LJMP MAIN MAIN: MOV R0,#0FFH LOOP1: CPL P1.0 LCALL DELAY1 DJNZ R0,LOOP1 MOV R0,#0FFH LOOP2: CPL P1.0 LCALL DELAY2 DJNZ R0,LOOP2 LJMP MAIN DELAY1: MOV R6,#07H D1: MOV R7,#20H DJNZ R7,$ DJNZ R6,D1 RET DELAY2: MOV R4,#07H D2: MOV R5,#50H DJNZ R5,$ DJNZ R4,D2 RET

相关问答

单片机 如何控制 喇叭 发语音?

方法是单片机的IO口接蜂鸣器的负端,蜂鸣器的正端接电源Vcc,IO口输出低电平时蜂鸣器导通,输出高电平时蜂鸣器截止。是否发声要看所选蜂鸣器的类型。如果是无...

用plc可以 驱动 有源蜂鸣器?-ZOL问答

无源蜂鸣器才需要有专用的音频电路驱动。要用有源蜂鸣器,通3-5V直流电即响同,频率是固定的无源蜂鸣器,和普通的喇叭类似,需通交流电或方波才会响,频率即是交流...

谁有proteus中蜂鸣器的使用方法-ZOL问答

当然不响咯,因为单片机该引脚输出电流很小只有1.2MA,所以驱动不了咯,你因该加一...喇叭是蜂鸣器,如极性不对调换二极管9条回答:【推荐答案】Buzzer有源,只需要...

用51 单片机 实现音乐播放的原理是什么?

通过将音乐作为数字信号编码储存在闪存中,然后通过51单片机的PWM输出模块将该信号转化成模拟信号输出,驱动音频放大器放大后输出到喇叭上,从而实现音乐播放的...

蜂鸣器有什么作用?-ZOL问答

在单片机电路里,三极管基本用两种状态,即截止和饱和状态,也就是把三极管当作开关来用的,一般不会用作放大。因为现在集成电路的放大器很多,单片机电路多为数字...

Proteus仿真为什么蜂鸣器一直不响? - 懂得

Proteus仿真蜂鸣器一直不响的原因及解决办法:1、buzzer选着active。需要将该选择项去掉;2、buzzer驱动电压过高。双击buzzer看看驱动电压大小,默认...

一氧化碳报警器的原理?

体报警器是用来检测一氧化碳气体的电子装置,它可以在空气中一氧化碳浓度超标时发出声音或光报警。一氧化碳气体报警器采用一氧化碳传感器将空气中一氧...一氧...

一氧化碳传输的工作是啥?

一氧化碳气体报警器采用一氧化碳传感器将空气中一氧化碳气体的浓度信号转换成微弱的电流或电压信号,再经过一级或两级信号放大,传送给单片机进行信号比较与处...

问问大家门铃对讲机怎么用- 一起装修网

[回答]该系统线为两条传输线;该室外机包括对讲电路、*器、*电路、第一音频耦合器以及顺序连接的摄像头、*信号调制器和第一*耦合器,其中对讲电路所产生的...

请问电子闹钟怎么设置 - 小红薯5D43F138 的回答 - 懂得

“设置/退出”“上调/整点”“下调/闹钟”“喇叭/开关”。电子时钟由89C51,按键,六段数码管等构成,采用外部晶振电路作为单片机的振荡电路,由延时程...

猜你喜欢