实验8蜂鸣器实验

上传人:cl****1 文档编号:472380414 上传时间:2023-09-06 格式:DOC 页数:10 大小:242.50KB
返回 下载 相关 举报
实验8蜂鸣器实验_第1页
第1页 / 共10页
实验8蜂鸣器实验_第2页
第2页 / 共10页
实验8蜂鸣器实验_第3页
第3页 / 共10页
实验8蜂鸣器实验_第4页
第4页 / 共10页
实验8蜂鸣器实验_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《实验8蜂鸣器实验》由会员分享,可在线阅读,更多相关《实验8蜂鸣器实验(10页珍藏版)》请在金锄头文库上搜索。

1、实验8蜂鸣器实验(仿真部分)1 .实验任务用P1.0输出1KHz和500Hz的音频信号驱动扬声器,作报警信号,要求1KHz信号响100ms, 500Hz信号响200ms,交替进行,P1.7接一开关进行控制,当开关合上响报警信 号,当开关断开告警信号停止,编出程序。2. 电路原理图SUNDERC81nF4kR5 ion yTEXT*O1?NV11L:R6亠C6 : 3DFF-T丄C5 30 PF-TE:电- larrALi CRYSTALLs = !C7 -啤F_ R4-rib 10k -I TEXT1822-iXTAL2RSTFSENALEEAPO.OADO P0.1WO1 PO.22 PO.

2、33 P0J/AD4 POLADS po.enAoe P0.7AD7P2.QJABP2.1/A9 P2.2TA1D P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15PMWRQ P3JfPD P3.2flW P3.3flNTnP3.4JTD P3.fimP3.6/W P3.7/RD旦11匣氏12 丄丄 2 盘 tTxlTtJL血 121宜iFJJ1 1U 12 J.-2r.n.4-2I *丄 111113. 硬件连线(1 .P1.0端口用导线通过“音频放大模块”连接到喇叭SOUNDER上;(2 .把P1.7端口用导线连接到“拨动开关”K1端口上;4. 程序

3、设计内容(1.信号产生的方法500Hz信号周期为2ms,信号电平为每1ms变反1次,1KHz的信号周期为1ms, 信号电平每500us变反1次;5. 程序框图开始K1按下了吗?FLAG = 0 吗?置200次计数置200次计数1计数值计完了吗?-计数值计完了吗? fJfFLAG取反LJ厂r,FLAG取反LJ5P1.0输出取反厂P1.0输出取反TT延时500usLJ延时1msLJ图4626. 汇编源程序(非中断软延时)FLAGBIT 00HORG 00HSTART:JB P1.7,STARTJNB FLAG,NEXTMOV R2,#200DV:CPL P1.0LCALL DELY500LCALL

4、 DELY500DJNZ R2,DVCPL FLAGNEXT:DV1:MOV R2,#200 CPL P1.0LCALL DELY500DJNZ R2,DV1CPL FLAGSJMP STARTDELY500:LOOP:MOV R7,#250NOPDJNZ R7,L OOPRETEND7.C语言源程序(非中断软延时)#include #include bit flag;unsigned char count;void dely500(void)unsigned char i;for(i=250;i0;i-)_nop_();void main(void)while(1) if(P1_7=0) f

5、or(count=200;count0;count-) P1_0=P1_0;dely500(); for(count=200;count0;count-) P1_0=P1_0; dely500(); dely500();8汇编源程序(计数方式 采用中断方式 )ORG 0000HLJMP MAINORG 0003HLJMP INT0PORG 0013HLJPM INT1PMAIN: MOV SP,#60HSETB IT0SETB IT1SETB IE0SETB IE1SETB EAMOV R0,#00HLOOP: MOV P1,R0JMP LOOPINT0P:INC R0RETIINT1P:DE

6、C R0RETIEND9 实验要求学会 C51 和 ASM51 两种编程工具。并尝试采用定时器实现定时。实验8交流蜂鸣器演奏简单乐曲1. 实验目的学习蜂鸣器的基础知识掌握用I/O驱动中等电流负载的正确方法学习如何用74HC573扩展简单的并行输出端口进一步掌握如下基础知识:定时器、中断、I/O扩展电流驱动、蜂鸣器学习如何编写简单的乐曲程序2. 实验原理2.1蜂鸣器原理蜂鸣器是常见的电子讯响器件,与扬声器相比,明显优势是体积很小,但缺点是低频响应很差,一般不能很好地产生 200Hz以下的低频声音。按制造工艺,蜂鸣器可分为电磁式、 压电式等。按功能,蜂鸣器分为有源和无源两大类,也称做直流蜂鸣器和交

7、流蜂鸣器。对直流蜂鸣器,只要加上正向电源(可能需要限流电阻)就能发出一定频率的响声,操作简单, 但是只有响与不响两种状态。而交流蜂鸣器需要输入有一定驱动能力的交流信号才能发声, 发声频率即交流信号的频率,因此能够发出各种不同音调的响声,可用来演奏简单乐曲。图4 21 MCUBANK2实验:空流螃鸣語发声蜂鸣器在正常工作时,一般需要数十毫安的驱动电流,这大大超过了8051的I/O承受能力。对这种中等电流负载的驱动方法,一般可采用晶体管。图4.21是蜂鸣器的典型驱动电路。I/O?rra逼平討无怯正粘整糊三觀管we圏利周晶体谱费属愉出电流的皆滨1正确的核港22简单乐曲原理假如您是一名电子产品研发工程

8、师,如果能够在您设计的产品里加入演奏乐曲的功能, 则会让消费者耳目一新, 增加一个很好的卖点。利用蜂鸣器演奏简单的乐曲, 具有结构简单、 体积小、成本低等优势,软件处理起来也不是很复杂。1厂rrr厂 . lr-3 字 1 51 G 5 3 5 2 - |香共一W淒别图4.24 一段简单的乐谱编写简单的乐曲程序,需要懂得一些简单的乐理知识。由于篇幅所限,这里不做详细讲解,如果有兴趣,请参考相关书籍或网上资料。请看图4.24所示的一段简单乐谱。一首乐曲可以看成是由一个个基本的音符组成。音符是乐曲的基本单元,它有两个要素:发声频率和发声时值。用两个定时器就可以完成演奏一个音符的任务,一个工作于定时中

9、断方式,在中断服务程序里不断翻转控制蜂鸣器的I/O,以产生规定频率的响声;另一个决定演奏多久, 是一个简单的延时应用。把所有音符串接起来演奏,就会形成一支动听的乐曲。在光盘例程中,名为Sou nd”的子程序,可以演奏一个音符,而Play”子程序通过不断调用 Sou nd”子程序来演奏整个乐曲。在下面已经以宏定义的形式给出了低音、中音和高音1234567 ”发声频率对应的定时器初值,L1L7表示低音,M1M7表示中音,H1H7表示高音。*;定义音名(仁G);L1L7表示低音,M1M7表示中音,H1H7表示高音*L1EQU 0xFB68;391.995Hz(G1)L2EQU 0xFBE9;440H

10、z(A)L3EQU 0xFC5B;493.883Hz(B)L4EQU 0xFC8F;523.251Hz(C)L5EQU 0xFCEF;587.33Hz(D)L6EQU 0xFD45;659.255Hz(E)L7EQU 0xFD91;739.989HzM1EQU 0xFDB4;783.991Hz(G)M2EQU 0xFDF4;880Hz(a)M3EQU 0xFE2D;987.767Hz(b)M4EQU 0xFE48;1046.5Hz(c)M5EQU 0xFE78;1174.66Hz(d)M6EQU 0xFEA3;1318.51Hz(e)M7EQU 0xFEC9;1479.98HzH1EQU 0x

11、FEDA;1567.98Hz(g)H2EQU 0xFEFA;1760Hz(a1)H3EQU 0xFF17;1975.53Hz(b1)H4EQU 0xFF24;2093Hz(c1)H5 EQU 0xFF3CH6 EQU 0xFF51H7 EQU 0xFF64;2349.32Hz ( d1);2637.02Hz ( e1);2959.96Hz*J*; 定义时值;T*4全音符,T*2二分音符,T四分音符,T/2八分音符,T/4十六分音符*J*T EQU 1000对发声时值,规定以四分音符作为一个T周期基准,二分音符用2*T”表示,八分音符用T/2 ”表示,带符点的八分音符用T/2+T/4 ”表示,等

12、等。改变T的宏定义值,能够整体加快或减慢乐曲的演奏速度。根据光盘例程所提供的框架,图4.24所示的乐谱可以翻译成如下的 ROM 数据表:MusicTab: ; 音名 , 时值DW L3,T DW L5,T/2+T/4DW L6,T/4 DW M1,T/2+T/4DW M2,T/4 DW L6,T/4 DW M1,T/4 DW L5,T/2DW M5,T/2+T/4DW H1,T/4 DW M6,T/4 DW M5,T/4DW M3,T/4 DW M5,T/4DW M2,T*23. 实验步骤参考实验例程,自己动手建立Keil C51工程。注意选择CPI类型。Philips半导体的P89V51RB2。编辑源程序,编译生成 HE应件。ISP下载开关扳到“ 01 ”,用Flash Magic软件下载程序HEX文件到MCU BANK,运行。 运行 Flash Magic 软件。各步骤操作如下:Step 1 :COM Port:选择实际使用的串行口,通常为 COM1Baud Rate :波特率不可设置得过高,推荐用 9600;Device :请选择正确的型号 89V51RB2;Interface :选择 None(ISP) 。Step 2 :请勾中“ Erase blocks use

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号