产品选型

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

小编 2024-10-06 产品选型 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

相关问答

单片机 门铃组成?

硬件构成:单片机+最小系统+放音模块+无线模块+按键模块本设计基于STC89C51/52单片机1.采用三极管驱动放音喇叭;2.采用315M无线模块实现无线的连接,实际应用...

自己做 单片机 音乐盒,开始用蜂鸣器,声音很小。后用lm386 驱动 ...

后用lm386驱动扬声器声音还是很小,求解。讨论回答(5)最好上原理图单片机的IO驱动能力将对来说较弱,驱动蜂鸣器需要加三极管放大输出。单片机好像不能直接接...

如何用小扬声器替换蜂鸣器-ZOL问答

这个好像是(橡皮边的)低音喇叭,还需要音箱。按照主板的图示插上就可以了。安...如果使用的是微控制器或者单片机,编写代码让其发送模拟音频数据给扬声器驱动模...

单片机 speaker是什么?

单片机speaker是一种用于输出声音的装置,它通常由一个电磁线圈和一个振动膜组成。当单片机通过控制电流流过电磁线圈时,线圈会产生磁场,进而使振动膜振动,从...

肿么使用 单片机 控制蜂鸣器发声-ZOL问答

两种蜂鸣器用单片机的控制方法是一样的,对于无源的,要求单片机送出一组断续的音频信号,使蜂鸣器按要求发声,对于有源蜂鸣器,要求单片机送出一组断续的电脉冲信号...

...地线将两台机相连接,这两台机上面分别有话筒和 喇叭 ,】作业帮

[最佳回答]就是用一条线,两个双向开关的输出端接在这条线上,输入端分别接单片机引脚和音频输出,单片机的通讯直接用高低电平的时间差判别,当音频通讯就关单片...

手机随机播放音乐的原理是什么?

单片机发音原理:利用定时器或pwm功能,输出pwm,经一级有源滤波后放大驱动扬声器。单片机演奏音乐基本是单音频率,它不包含相应幅度的谐波频率,也就是说不能...

proteus里的仿真蜂鸣器怎么设置,怎么接才能响! - 懂得

1、首先第一步就是进行双击打开proteus软件,如下图所示。2、接着就是进行在左侧的工具栏中中找到“P”并点击即可。3、然后在弹出的对话框中这时候...

单片机 可以接什么单?

学习单片机可以搭建各种电子系统和项目,因此可以接很多不同的单元和硬件。以下是一些常见的单元和硬件,你可以使用单片机与其进行连接和控制:1.传感器:例如...

自己怎么制作蜂鸣器?

用单片机就行了,把乐谱写成数组,写程序按照乐谱输出对应音高频率的方波给...如果声音质量要求不高,比如市面上那种生日贺卡发出的蜂鸣声,只有音高变化即可的...

猜你喜欢