应用电子技术毕业论文基于AT89S52单片机的电子琴设计

上传人:无*** 文档编号:41639809 上传时间:2021-11-22 格式:DOC 页数:52 大小:3.86MB
返回 下载 相关 举报
应用电子技术毕业论文基于AT89S52单片机的电子琴设计_第1页
第1页 / 共52页
应用电子技术毕业论文基于AT89S52单片机的电子琴设计_第2页
第2页 / 共52页
应用电子技术毕业论文基于AT89S52单片机的电子琴设计_第3页
第3页 / 共52页
点击查看更多>>
资源描述
共 46 页毕业设计(论文)毕业设计(论文)题题 目:基于目:基于 AT89S52 单片机的电子琴设计单片机的电子琴设计专专 业:应用电子技术业:应用电子技术年年 级:级:20102010 级级学学 号:号:1060510105210605101052 1060510104310605101043姓姓 名:徐雄名:徐雄 余天寿余天寿指导老师:指导老师:张定祥张定祥 (高级工程师)(高级工程师)完成时间:完成时间:20132013 年年 5 5 月月 说说 明明电子琴是高科技在音乐领域的一个代表,它是古典文化与现代文明的一个浓缩体。它不但可以帮助我们的音乐教师进行传统音乐文化的教育教学工作,而且由于它又具备现代音乐,特别是电子音乐、电脑音乐的基本结构、特征,因而使我们的教师在进行现代音乐、电子音乐、电脑音乐的教学时,更直接、更简便。 单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用 AT89S52 单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有 16 个弹奏按键、1 个播放键和扬声器(总电路原理图见附录 1) 。序号学号姓名专业、班级任务分配110605101052徐雄应用电子技术20101 班组长,负责程序的编写,作品的焊接、检查,以及论文的构思、检查等等。210605101043余天寿应用电子技术20101 班相关资料的查找,作品材料的购买,作品的焊接,论文的编写等等 - 0 - 基于基于 AT89S52AT89S52 单片机的电子琴设计单片机的电子琴设计摘要摘要 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用 AT89S52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器,亦可以通过上位机进行操作,达到单片机板上按键相同的效果。本系统运行稳定,人机界面友好其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。关键词:关键词: 单片机单片机; 键盘键盘; 扬声器扬声器; 电子琴电子琴Abstract Electronic organ is a modern electronic music technology and the product is a new type of keyboard instruments. It played an important role in modern music. SCM has powerful control functions and flexible programming characteristics. It has converged with modern peoples lives, become an irreplaceable part. The main content is AT89S52control of the core components, design of a electronic organ. SCM as a host to the core, with the keyboard, speaker and other core modules. In the main control module has 16 keys and a speaker. The system is steady, its simple hardware circuits, software functions, reliability of control system and high cost performance is its advantages. It also has certain practical and reference value.Key words : SCM ; keyboard; speaker; electronic organ - 0 - 目目 录录摘要摘要 .- 1 -1.前言前言.- 1 -1.1开发背景.- 1 -1.2开发意义.- 1 -1.3设计目标.- 1 -2.确定设计方案确定设计方案.- 2 -2.1单片机简介.- 2 -2.2控制模块选择方案.- 3 -2.3按键选择方案.- 3 -3.电路设计电路设计.- 3 -3.1系统功能设计.- 3 -3.2总体电路.- 4 -3.3电路原理图.- 4 -3.4音频产生电路.- 5 -3.4.1音乐相关知识.- 5 -3.4.2音频产生原理.- 6 -3.4.3AT89S52芯片介绍.- 6 -3.4.4AT89S52主要功能特性.- 7 -3.4.5引脚功能.- 8 -3.4.6音阶的产生.- 9 -3.4.7如何用单片机实现音乐的节拍.- 10 -3.4.8音域的变换.- 11 -3.5音频功放电路.- 11 -3.5.1集成功放芯片介绍.- 11 -3.5.2音频功放芯片LM386.- 11 -3.6直流稳压电源.- 15 -4.PCB 印制板制作印制板制作 .- 15 -4.1印制板制作的要求.- 15 -4.2印制电路板图.- 15 -5.程序设计程序设计.- 16 -6.安装调试安装调试.- 21 -6.1元件安装.- 21 -6.2硬件调试.- 22 -6.3软件调试.- 22 -6.4调试结论.- 22 -7.致谢致谢.- 23 - - 1 - 8.参考文献参考文献.- 23 -9.附录附录 1:总电路原理图:总电路原理图.- 23 -10.附录附录 2:元件清单:元件清单.- 24 -11.附录附录 3:系统程序:系统程序.- 24 - - 0 - 1. 前言前言1.1 开发背景开发背景随着电子科技的飞速发展,电子技术正在逐渐改善着人们的学习、生活、工作,因此开发本系统希望能够给人们多带来一点生活上的乐趣。基于当前市场上的玩具市场需求量大,其中电子琴就是一个很好的应用方面。单片机技术使我们可以利用软硬件实现电子琴的功能,从而实现电子琴的微型化,可以用作玩具琴、音乐转盘以及音乐童车等等。并且可以进行一定的功能扩展,就是将键盘设置成为 16 个键盘,并将他分为两个区,即为高音区和中音区。1.2 开发意义开发意义该设计具有以下优点:可以随意弹奏想要表达的音乐;比传统电子琴功能更完善和更加小巧;制作简单,成本低。1.3 设计目标设计目标由于本设计主要用于人们娱乐方面,因此在设计上尽量使其安全以及简单易操作。其次,在这次设计可行性上进行分析如下:(1) 、经济可行性:所谓经济可行性,即在这次设计上需要投入资金的多少,由于毕业设计是没有项目资金,没有开发经费,因此在经济上必须能够承受,比较理想化的项目对于我们毕业设计来说是不可行的。通过分析后,无论是在器件价格或是常见度上均是可行的。(2) 、技术可行性:技术可行性主要是分析技术条件上是否能够顺利开展并完成开发工作,硬件、软件能否满足设计者的需要等。通过分析各种软件环境,硬件仿真环境等均已经具备。综上所述,本系统设计目标已经明确,在经济与技术上均可达到上述要求,因此本系统的开发是具有一定的市场价值。 - 1 - 2. 确定设计方案确定设计方案单片机简介单片机简介单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。基于单片机的定时和控制装置在许多行业有着广泛的应用,电子音乐播放器是其中最基本的一个应用实例。单片机从功能上讲可以说是万用机。目前,单片机正朝着高性能和多品种方向发展,单片机广泛地用于各种仪器仪表,使仪器仪表智能化,并可以提高测量的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比。自从单片机诞生以后,它就步入了人类生活,如洗衣机、电冰箱、电子玩具、收录机等家用电器配上单片机后,提高了智能化程度,增加了功能,倍受人们喜爱。单片机将使人类生活更加方便、舒适、丰富多彩。单片机已成为计算机发展和应用的一个重要方面。单片机从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。随着半导体工艺技术的发展及系统设计水平的提高,单片机还会不断产生新的变化和进步。在不久的将来,最终单片机与微机系统之间的距离越来越小,甚至难以辨认。单片机以其卓越的性能、很高的性能价格比,使其在许多领域得到了广泛的应用。利用它可开发便携式智能检测控制仪器,还可以指导它应用于产品的内部,取代部分老式机械、电子零件或元器件,可使产品缩小体积,增强功能,实现不同程序的智能化,这是其它任何计算机机种无法比拟的。单片机的应用领域有以下几个方面:(1)工业方面,各种测控系统、数据采集系统、工业机器人控制、机电一体化产品等。(2)智能仪器仪表方面,单片机在该领域的应用,不仅使传统的仪器仪表发生根本的变革,也给传统的仪器仪表行业的改造带来曙光。(3)通信方面,调制解调器、程控交换技术等。(4)民用方面,电子玩具、录像机、VCD 机、洗衣机等。(5)军工领域,导弹控制、鱼雷制导控制、智能武器装备、航天飞机导航系统等。 - 2 - (6)计算机外部设备方面,打印机、键盘、磁盘驱动器、复印机等。(7)多机分布式系统,可用单片机构成分布式测控系统。2.2 控制模块选择方案控制模块选择方案方案一:用可控硅制作电子琴。将 220V 交流电经变压器降压,再经过整流、滤波,获得+13.5V 直流电压。将单向可控硅 SCR 和电阻、电容组成驰张振荡器电路。但该设计方案制作成本高且复杂。方案二: 采用 AT89C51 单片机进行控制,由于 AT89C51 不具备 ISP 功能,因此 Atmel 公司已经停产在市面上已经不常见,况且其 ROM 只有 4K 在系统将来升级方面没有潜力。方案三:采用 AT89S52 单片机进行控制,由于其性价比高,完全满足了本作品智能化的要求,它的内部程序存储空间达到 8K,使软件设计有足够的内部使用空间并且方便日后系统升级,使用方便,抗干扰性能提高。 鉴于上述对比与分析,本设计采用方案三 2.3 按键方案按键方案的优化的优化传统电子琴可以用键盘上的“1”到“A”键演奏从低 SO 到高 DO 等 11 音。该设计有 20 个按钮矩阵,设计成 16 个音,可以实现音阶在低音 4-高音 5 之间。比传统音阶范围大,弹奏效果好。3. 电路设计电路设计系统功能设计系统功能设计 该设计要实现一种由单片机控制的电子琴,单片机工作于 12MHZ 时钟频率,使用其定时/计数器 T0,工作模式为 1,改变计数值 TH0 和 TL0 可以产生不同频率的脉冲信号。该设计具有 11 个音节的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。由于我们所设计要实现的音乐发生器是临时通过键盘输入弹奏乐曲的,所以节拍都是当时掌握,不由程序控制。用单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要音频功率放大电路。所以我们使用低压音频功率放大器 LM386 来实现音频功放电路。 - 3 - 3.2 总体电路总体电路单片机按键音符输入直流稳压电源音频放大输出ISD 语音录放图 2-1 总体电路框图3.3 电路原理图电路原理图图 2-2 电路总原理图 - 4 - 图 2-3 音频功放模块 图 2-4 直流稳压电源模块图 25 键盘输入模块 - 5 - 3.4 音频产生电路音频产生电路3.4.1 音乐相关知识音乐相关知识乐音听起来有的高,有的低,这就叫音高,音高是由发音物体振动频率的高低决定的,频率高声音就高,频率低,声音就低,不同音调的乐音是用 C、D、E、F、G、A、B 表示的,这 7 个字母就是乐音的音名,它们一般依次唱成 DO、RE、MI、FA、SO、LA、SI,这是唱曲时乐音的发音,所以叫唱名。音持续时间的长短即时值,一般用拍数表示,休止符表示暂停发音。一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样就可以利用不同频率的组合,加以与拍数对应的延时,构成音乐。3.4.2 音频产生原理音频产生原理图 3-2 音频产生流程图3.4.3 AT89S52 芯片介绍芯片介绍 功能特性:AT89S52 是一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器。使用 Atmel 公司高密度非 易失性存储器技术制造,与工业 80C51 产品指令和引脚完 全兼容。片上 Flash 允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统 可编程 Flash,使得 AT89S52 为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52 具有以下标准功能: 8k 字节Flash,256 字节 RAM, 32 位 I/O 口线,看门狗定时器,2 个数据指针,三个 16 位 定 - 6 - 时器/计数器,一个 6 向量 2 级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻 辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。主要性能:与 MCS-51 单片机产品兼容、8K 字节在系统可编程 Flash 存储器、1000 次擦写周期、全静态操作:0Hz33Hz 、 三级加密程序存储器 、32 个可编程 I/O 口线 、三个 16 位定时器/计数器八个中断源、全双工 UART 串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。管脚备选功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断 0)P3.3/INT1(外部中断 1)P3.4T0(记时器 0 外部输入)P3.5T1(记时器 1 外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)图 3-1 AT89S52 引脚图 - 7 - 3.4.4 AT89S52 主要功能特性主要功能特性 兼容 MCS-51 指令系统 32 个双向 I/O 口 2 个 16 位可编程定时/计数器 全双工 UART 串行中断口线 2 个外部中断源 中断唤醒省电模式 看门狗(WDT)电路 灵活的 ISP 字节和分页编程 4k 可反复擦写 ISP Flash ROM 4.5-5.5V 工作电压 时钟频率 0-33MHz 128x8bit 内部 RAM 低功耗空闲和省电模式 3 级加密位 软件设置空闲和省电功能 双数据寄存器指针3.4.5 引脚功能引脚功能VCC(40):5V;VSS(20):接地;P0 口(3932):P0 口为 8 位漏极开路双向 I/O 口,每引脚可吸收 8 个 TTL 门电流;P1 口(18):P1 口是从内部提供上拉电阻器的 8 位双向 I/O 口,P1 口缓冲器能接收和输出 4 个 TTL 门电流;P2 口(2128):P2 口为内部上拉电阻器的 8 位双向 I/O 口,P2 口缓冲器可接收和输出 4 个 TTL 门电流;P3 口(1017):P3 口是 8 个带内部上拉电阻器的双向 I/O 口,可接收和输出 4 个TTL 门电流,P3 口也可作为 AT89C51 的特殊功能口;RST(9):复位输入。当振荡器复位时,要保持 RST 引脚 2 个机器周期的高电平时间; - 8 - ALE/PROG(30):当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节,在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6,它可用作对外部输出的脉冲或用于定时目的,要注意的是,每当访问外部数据存储器时,将跳过 1 个 ALE 脉冲;PSEN(29):外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期 2 次 PSEN 有效,但在访问外部数据存储器时,这 2 次有效的 PSEN 信号将不出现;EA/VPP(31):当 EA 保持低电平时,外部程序存储器地址为(0000HFFFFH)不管是否有内部程序存储器。FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP);XTAL1(19):反向振荡器放大器的输入及内部时钟工作电路的输入;XTAL2(18):来自反向振荡器的输出。3.4.6 音阶的产生音阶的产生一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器 T0 来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。 若要产生音频脉冲,只要算出某一音频的周期(1/频率) ,再将此周期除以 2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将 P1.0 反相,然后重复计时再反相。就可在 P1.0 引脚上得到此频率的脉冲。 利用 AT89S52 的内部定时器使其工作计数器模式(MODE1)下,改变计数值 TH0 及 TL0以产生不同频率的方法产生不同音阶,例如,频率为 523Hz,其周期 T1/5231912s,因此只要令计数器计时 956s/1s956,每计数 956 次时将 I/O 反相,就可得到中音DO(523Hz) 。 计数脉冲值与频率的关系式(如式 3-1 所示)是:N=fi2fr (3-1)式中,N 是计数值;fi 是机器频率(晶体振荡器为 12MHz 时,其频率为 1MHz) ;fr 是想要产生的频率。 - 9 - 例如:设 K65536,fi1MHz,求低音 DO(261Hz) 、中音 DO(523Hz) 、高音 DO(1046Hz)的计数值。T65536N65536fi2fr6553610000002fr65536500000/fr 低音 DO 的 T65536500000/26263627 中音 DO 的 T65536500000/52364580 高音 DO 的 T65536500000/104665059其计数初值 T 的求法如下: T65536N65536fi2fr单片机 12MHZ 晶振,高中低音符与计数 T0 相关的计数值如表 3-1 所示 表 3-1 音符频率表音符频率(HZ)简谱码(T 值) 音符频率(HZ)简谱码(T 值)低 1 DO26263628# 4 FA#74064860#1 DO#27763731中 5 SO78464898低 2 RE29463835# 5 SO#83164934#2 RE#31163928中 6 LA88064968低 3 M33064021# 693264994低 4 FA34964103中 7 SI98865030# 4 FA#37064185高 1 DO104665058低 5 SO39264260# 1 DO#110965085# 5 SO#41564331高 2 RE117565110低 6 LA44064400# 2 RE#124565134# 646664463高 3 M131865157低 7 SI49464524高 4 FA139765178中 1 DO52364580# 4 FA#148065198# 1 DO#55464633高 5 SO156865217 - 10 - 中 2 RE58764684# 5 SO#166165235# 2 RE#62264732高 6 LA176065252中 3 M65964777# 6186565268中 4 FA69864820高 7 SI1967652833.4.7如何用单片机实现音乐的节拍如何用单片机实现音乐的节拍除了音符以外,节拍也是音乐的关键组成部分。节拍实际上就是音持续时间的长短,在单片机系统中可以用延时来实现,如果 1/4 拍的延时是 0.4 秒,则 1 拍的延时是 1.6 秒,只要知道 1/4 拍的延时时间,其余的节拍延时时间就是它的陪数。如果单片机要自己播放音乐,那么必须在程序设计中考虑到节拍的设置,由于这次的设计所实现的音乐发生器是由我们临时通过键盘输入弹奏乐曲的,所以节拍由我们临时来掌握,不由程序控制。对于不同的曲调我们也可以用单片机的另外一个定时/计数器来完成。音乐的音拍,一个节拍为单位(C 调)具体如下表:曲调值DELAY曲调值DELAY调 4/4125ms调 4/462ms调 3/4187ms调 3/494ms调 2/4250ms调 2/4125ms3.4.8 音域的变换音域的变换在本设计软件编程中,采用将定时器的初值参数集合成数组的方式,一个音符对应数组中的一个元素,则一个音域即对应着一个数组。本系统的音域变换模块正是采用了改变定时器初值数组的方式来实现的。为实现音域的即时改变,将改变音域的命令设置为外部中断方式。在中断处理函数中写入音域数组重新赋值的语句,从而轻松达到目的。3.5 音频功放电路音频功放电路3.5.1 集成功放芯片介绍集成功放芯片介绍 集成功率放大器是在集成运放基础上发展起来的,其内部电路与集成运放相似。但是,由于其安全、高效、大功率和低失真的要求,使得它与集成运放又有很大的不同。电路内部 - 11 - 多施加深度负反馈。 集成功率放大器广泛应用于收录机、电视机、开关功率电路、伺服放大电路中,输出功率由几百毫瓦到几十瓦。除单片集成功放电路外,还有集成功率驱动器,它与外配的大功率管及少量阻容元件构成大功率放大电路,有的集成电路本身包含两个功率放大器,称为双声道功放。3.5.2 音频功放芯片音频功放芯片 LM386LM386 是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中。LM386 是美国国家半导体公司生产的音频功率放大器,主要应用于低电压消费类产品。为使外围元件最少,电压增益内置为 20。但在 1 脚和 8 脚之间增加一只外接电阻和电容,便可将电压增益调为任意值,直至 200。输入端以地位参考,同时输出端被自动偏置到电源电压的一半,在 6V 电源电压下,它的静态功耗仅为 24mW,使得 LM386 特别适用于电池供电的场合。LM386 的封装形式有塑封 8 引线双列直插式和贴片式。音频功率放大器 LM386 运放的应用设计:LM386 是为低电压应用设计的音频功率放大器、集成电路适用于调幅调频、无线电放大器、便携式磁带重放设备、内部通信电路、电视音频系统、线性驱动器、超声波驱动器和功率变换电路。LM386 可用于助听器、调幅收音机、音频感应器等。许多音乐彩灯电路,其中的音频信号放大多而且用三到四只晶体管,电路调整很不方便。LM386音频功放有上述几项优点,且价格低廉,本实验电路的工作电源在5V左右,所以本实验电路选择了LM386音频功放。1. LM386内部电路如图4-1所示。2. 电路特性如下:(1)静态功耗低,约为 4mA,可用于电池供电。(2)工作电压范围宽,4-12V 或 5-18V。(3)外围元件少。(4)电压增益可调,20-200。(5)低失真度。 - 12 - 15k15k1.35k15015k50k50k2 -INBYPASS 7GAIN 8GAIN 13 +IN4 GND5 Vout6 -Vs图 4-1 LM386 内部电路原理图LM386 内部电路原理图如图 4-1 所示。与通用型集成运放相类似,它是一个三级放大电路。第一级为差分放大电路,T1 和 T3、T2 和 T4 分别构成复合管,作为差分放大电路的放大管;T5 和 T6 组成镜像电流源作为 T1 和 T2 的有源负载;T3 和 T4 信号从管的基极输入,从 T2 管的集电极输出,为双端输入单端输出差分电路。使用镜像电流源作为差分放大电路有源负载,可使单端输出电路的增益近似等于双端输出电容的增益。第二级为共射放大电路,T7 为放大管,恒流源作有源负载,以增大放大倍数。第三级中的 T8 和 T9 管复合成 PNP 型管,与 NPN 型管 T10 构成准互补输出级。二极管D1 和 D2 为输出级提供合适的偏置电压,可以消除交越失真。引脚 2 为反相输入端,引脚 3 为同相输入端。电路由单电源供电,故为 OTL 电路。输出端(引脚 5)应外接输出电容后再接负载。电阻 R7 从输出端连接到 T2 的发射极,形成反馈通路,并与 R5 和 R6 构成反馈网络,从而引入了深度电压串联负反馈,使整个电路具有稳定的电压增益。2.LM386 管脚介绍 - 13 - 图 5-2 LM386 管脚图LM386 的外形和引脚的排列如图 5-2 所示。引脚 2 为反相输入端,3 为同相输入端;引脚 5 为输出端;引脚 6 和 4 分别为电源和地;引脚 1 和 8 为电压增益设定端;使用时在引脚7 和地之间接旁路电容,通常取 10F。查 LM386 的电源电压 4-12V 或 5-18V(LM386N-4);静态消耗电流为 4mA;电压增益为 20-200dB;在 1、8 脚开路时,带宽为 300KHz;输入阻抗为 50K;音频功率 0.5W。尽管 LM386 的应用非常简单,但稍不注意,特别是器件上电、断电瞬间,甚至工作稳定后,一些操作(如插拔音频插头、旋音量调节钮)都会带来的瞬态冲击,在输出喇叭上会产生非常讨厌的噪声。要注意以下几点:1.通过接在 1 脚、8 脚间的电容(1 脚接电容+极)来改变增益,断开时增益为 20dB。因此用不到大的增益,电容就不要接了,不光省了成本,还会带来好处-噪音减少。2.PCB 设计时,所有外围元件尽可能靠近 LM386;地线尽可能粗一些;输入音频信号通路尽可能平行走线,输出亦如此。3.选好调节音量的电位器。质量太差的不要,否则受害的是耳朵;阻值不要太大,10K最合适,太大也会影响音质。4.尽可能采用双音频输入/输出。好处是:“”、“”输出端可以很好地抵消共模信号,故能有效抑制共模噪声。5.第 7 脚(BYPASS)的旁路电容不可少。实际应用时,BYPASS 端必须外接一个电解电容到地,起滤除噪声的作用。工作稳定后,该管脚电压值约等于电源电压的一半。增大这个电容的容值,减缓直流基准电压的上升、下降速度,有效抑制噪声。在器件上电、掉电时的噪声就是由该偏置电压的瞬间跳变所致,这个电容不能省。6.减少输出耦合电容。此电容的作用有二:隔直 + 耦合。隔断直流电压,直流电压过大有可能会损坏喇叭线圈;耦合音频的交流信号。它与扬声器负载构成了一阶高通滤波器。减小该电容值,可使噪声能量冲击的幅度变小、宽度变窄;太低还会使截止频率(fc1/(2*RL*Cout))提高。分别测试,发现 10uF/4.7uF 最为合适。7.电源的处理,也很关键。如果系统中有多组电源,由于电压不同、负载不同以及并联的去耦电容不同,每组电源的上升、下降时间必有差异。非常可行的方法:将上电、掉电时间短的电源放到+12V 处,选择上升相对较慢的电源作为 LM386 的 Vs,但不要低于 4V,效果确实不错。 - 14 - 3.6 直流稳压电源直流稳压电源由于本次设计的芯片的工作电压都为 5V,为了排除因为电压不稳定或者不准确影响电路的工作和软件的调试,本次设计单独用蓄电池提供电源。J1 为 LED 发光二极管指示灯。图 51 电源电路4. PCB 印制板制作印制板制作印制板制作的要求印制板制作的要求(1)电源线、地线应各设置一条总线;(2)线宽尽可能的宽;(3)应减少软线跳线的使用;(4)元器件排版要均匀,按模块排版,防止各模块信号干扰;(5)铜箔线不可以产生锐角。 - 15 - 4.2 印制电路板图印制电路板图 元件清单见附录元件清单见附录 2 25. 程序设计程序设计 软件由初始化程序、主程序、定时器 1 中断服务程序、键盘扫描程序和延时程序组成。(1)初始化程序如下: - 16 - 主程序框图见图 2。 (2)主程序: CJNE R4,00H,PLAYKEY;判断有无键按下CLR TR1;无键按下关闭 T1SETBP32;无键按下熄灭指示灯SJMPSTART;跳回开始位置PLAYKEY:CJNE R4,20H,K0;有键按下由键值给 TIMER1L 和 TIMER1H 赋值 - 17 - - 18 - (3)定时器 1 中断服务程序框图见图 3。 - 19 - 定时器 1 中断服务程序: (4)键盘扫描程序框图如图 4 所示。 键盘扫描程序: - 20 - - 21 - 6. 安装调试安装调试电路调试是整个系统功能否实现的关键步骤,我们将整个调试过程分为三大部分:硬件调试、软件调试和综合调试。元件安装元件安装 安装按键安装按键安装跳线安装跳线连接扬连接扬声器导线声器导线电解电容电解电容开关开关按键按键晶振二晶振二极管极管AT89S52芯片芯片LM386芯片芯片发光二极管发光二极管(显示作用)(显示作用) - 22 - 6.2 硬件调试硬件调试硬件调试主要是针对单片机部分进行调试。在上电前,先确保电路中不在断路或短路情况,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要使用的工具是万用表,用来完成检测电路中是否存在断路或者短路情况等。注意焊点之间,确保焊点没有短接在一起,同时注意焊点的美观,确保没有开路以及短路的现象出现。在确保硬件电路正常,无异常情况(断路或短路)方可上电调试,上电调试的目的是检验电路是否接错,同时还要检验原理是否正确,在本次设计中,上电调试主要键盘单片机控制部分、数码管点亮部分、和音频转换电路硬件调试。扬扬声声器器 - 23 - (1) 、发光二极管LED电路调试:接通电源,随机按下按钮可以看到二极管是不是发光。(2) 、键盘单片机控制部分调试:上电后,随机按动键盘可以发现各个按键对应的音正确。6.3 软件调试软件调试调试主要方法和技巧: 通常一个调试程序应该具备至少四种性能:跟踪、断点、查看变量、更改数值。整个程序是一个主程序调用各个子程序实现功能的过程,要使主程序和整个程序都能平稳运行,各个模块的子程序的正确与平稳运行必不可少,所以在软件调试的最初阶段就是把各个子程序模块进行分别调试。6.4 调试结论调试结论 通过各方面努力,本次实训设计任务基本完成,系统部分功能已实现。可以随意演奏一首喜欢的曲子。虽然说我们设计时所选的扬声器功率小点,在高音发音时感觉有点沙哑,这是一个遗憾,但是我们的设计基本达到预定的效果。实训设计是专科学习阶段一次非常难得的理论与实践相结合的机会,通过这次系统的项目设计提高了我运用所学的专业基础知识来解决面临实际问题的能力,同时也提高了我查阅各种文献资料、设计手册、设计规范以及软件编程排版的水平。7. 致谢致谢本文介绍的应用于单片机系统在电子琴这一领域的应用,具有硬件电路简单、成本低廉、编程方便、通信可靠性高的特点。紧张的毕业设计结束了,关于本次毕业设计,感受颇多。首先,要特别感谢我们的指导老师张定祥老师。本论文是在我们的指导老师张定祥老师的亲切关怀和悉心指导下完成从课题的选择到项目的最终完成,张老师都始终给予我细心的指导和不懈的支持。在此向张老师致以诚挚的谢意和崇高的敬意。最后,感谢我的室友及其他好友,因为有你们的帮助,我的论文得以顺利完成。感谢你们,大学两年给我了那么多的帮助与鼓励,在我不开心的时候,总能让我开心起来。不会忘 - 24 - 记,大学两年里我们一起度过的欢乐时光,那些开心的日子,总是那么令人难以忘怀。我将会以积极饱满的热情投入到日后的工作当中!8. 参考文献参考文献1 戴曰梅:电工基础,机械工业出版社,2009.82 苏家健、曹柏荣、汪志锋:单片机原理及应用技术,北京理工大学,2009.83 刘德旺、韦穗林:电子制作实训,中国水利水电出版社,2004.84 熊健云:Protel 99 SE EDA 技术及应用,机械工业出版社,2011.15 廖超平、黄守宁:EDA 技术与 VHDL 实用教程,高等教育出版社,2010.76 林刚:常用电子元器件,机械工业出版社,2011.87 李凤霞:C 语言程序设计教程(第二版) ,北京理工大学出版社,2011.18 雷冠军、孔祥伟:电气控制与 PLC 应用,北京理工大学出版社,2010.2 9 李兰友、丁刚、沈振钱:微机原理与接口技术(第二版) ,清华大学出版社,2009.6 - 25 - 9. 附录附录 1:总电路原理图:总电路原理图 - 26 - 10. 附录附录 2:元件清单:元件清单 11. 附录附录 3:系统程序:系统程序KEYBUF EQU 30HSTH0 EQU 31HSTL0 EQU 32HTEMP EQU 33HORG 00HLJMP STARTORG 0BH - 27 - LJMP INT_T0START: MOV TMOD,#01HSETB ET0SETB EAWAIT:MOV P3,#0FFHCLR P3.4MOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY1LCALL DELY10MSMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY1MOV A,P3ANL A,#0FHCJNE A,#0EH,NK1MOV KEYBUF,#0LJMP DK1NK1: CJNE A,#0DH,NK2MOV KEYBUF,#1 - 28 - LJMP DK1NK2: CJNE A,#0BH,NK3MOV KEYBUF,#2LJMP DK1NK3: CJNE A,#07H,NK4MOV KEYBUF,#3LJMP DK1NK4: NOPDK1:MOV A,KEYBUFMOV DPTR,#TABLEMOVC A,A+DPTRMOV P0,AMOV A,KEYBUFMOV B,#2MUL ABMOV TEMP,AMOV DPTR,#TABLE1MOVC A,A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMP - 29 - MOVC A,A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK1A: MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK1ACLR TR0NOKEY1:MOV P3,#0FFHCLR P3.5MOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY2LCALL DELY10MSMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY2MOV A,P3 - 30 - ANL A,#0FHCJNE A,#0EH,NK5MOV KEYBUF,#4LJMP DK2NK5: CJNE A,#0DH,NK6MOV KEYBUF,#5LJMP DK2NK6: CJNE A,#0BH,NK7MOV KEYBUF,#6LJMP DK2NK7: CJNE A,#07H,NK8MOV KEYBUF,#7LJMP DK2NK8: NOPDK2:MOV A,KEYBUFMOV DPTR,#TABLEMOVC A,A+DPTRMOV P0,AMOV A,KEYBUFMOV B,#2MUL ABMOV TEMP,A - 31 - MOV DPTR,#TABLE1MOVC A,A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK2A: MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK2ACLR TR0NOKEY2:MOV P3,#0FFHCLR P3.6MOV A,P3ANL A,#0FHXRL A,#0FH - 32 - JZ NOKEY3LCALL DELY10MSMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY3MOV A,P3ANL A,#0FHCJNE A,#0EH,NK9MOV KEYBUF,#8LJMP DK3NK9: CJNE A,#0DH,NK10MOV KEYBUF,#9LJMP DK3NK10: CJNE A,#0BH,NK11MOV KEYBUF,#10LJMP DK3NK11: CJNE A,#07H,NK12MOV KEYBUF,#11LJMP DK3NK12: NOPDK3:MOV A,KEYBUF - 33 - MOV DPTR,#TABLEMOVC A,A+DPTRMOV P0,AMOV A,KEYBUFMOV B,#2MUL ABMOV TEMP,AMOV DPTR,#TABLE1MOVC A,A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK3A: MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK3ACLR TR0 - 34 - NOKEY3:MOV P3,#0FFHCLR P3.7MOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY4LCALL DELY10MSMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY4MOV A,P3ANL A,#0FHCJNE A,#0EH,NK13MOV KEYBUF,#12LJMP DK4NK13: CJNE A,#0DH,NK14MOV KEYBUF,#13LJMP DK4NK14: CJNE A,#0BH,NK15MOV KEYBUF,#14LJMP DK4 - 35 - NK15: CJNE A,#07H,NK16MOV KEYBUF,#15LJMP DK4NK16: NOPDK4:MOV A,KEYBUFMOV DPTR,#TABLEMOVC A,A+DPTRMOV P0,AMOV A,KEYBUFMOV B,#2MUL ABMOV TEMP,AMOV DPTR,#TABLE1MOVC A,A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,A+DPTRMOV STL0,AMOV TL0,ASETB TR0 - 36 - DK4A: MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK4ACLR TR0NOKEY4:LJMP WAITDELY10MS:MOV R6,#10D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1RETINT_T0:MOV TH0,STH0MOV TL0,STL0CPL P1.0RETITABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB 7FH,6FH,77H,7CH,39H,5EH,79H,71HTABLE1: DW 64021,64103,64260,64400 - 37 - DW 64524,64580,64684,64777DW 64820,64898,64968,65030DW 65058,65110,65157,65178END7 C 语言源程序#include unsigned char code table=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71;unsigned char temp;unsigned char key;unsigned char i,j;unsigned char STH0;unsigned char STL0;unsigned int code tab=64021,64103,64260,64400,64524,64580,64684,64777,64820,64898,64968,65030,65058,65110,65157,65178;void main(void)TMOD=0 x01; - 38 - ET0=1;EA=1;while(1)P3=0 xff;P3_4=0;temp=P3;temp=temp & 0 x0f;if (temp!=0 x0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp & 0 x0f;if (temp!=0 x0f)temp=P3;temp=temp & 0 x0f;switch(temp)case 0 x0e:key=0; - 39 - break;case 0 x0d:key=1;break;case 0 x0b:key=2;break;case 0 x07:key=3;break;temp=P3;P1_0=P1_0;P0=tablekey;STH0=tabkey/256;STL0=tabkey%256;TR0=1;temp=temp & 0 x0f;while(temp!=0 x0f)temp=P3;temp=temp & 0 x0f; - 40 - TR0=0;P3=0 xff;P3_5=0;temp=P3;temp=temp & 0 x0f;if (temp!=0 x0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp & 0 x0f;if (temp!=0 x0f)temp=P3;temp=temp & 0 x0f;switch(temp)case 0 x0e:key=4;break; - 41 - case 0 x0d:key=5;break;case 0 x0b:key=6;break;case 0 x07:key=7;break;temp=P3;P1_0=P1_0;P0=tablekey;STH0=tabkey/256;STL0=tabkey%256;TR0=1;temp=temp & 0 x0f;while(temp!=0 x0f)temp=P3;temp=temp & 0 x0f;TR0=0; - 42 - P3=0 xff;P3_6=0;temp=P3;temp=temp & 0 x0f;if (temp!=0 x0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp & 0 x0f;if (temp!=0 x0f)temp=P3;temp=temp & 0 x0f;switch(temp)case 0 x0e:key=8;break;case 0 x0d: - 43 - key=9;break;case 0 x0b:key=10;break;case 0 x07:key=11;break;temp=P3;P1_0=P1_0;P0=tablekey;STH0=tabkey/256;STL0=tabkey%256;TR0=1;temp=temp & 0 x0f;while(temp!=0 x0f)temp=P3;temp=temp & 0 x0f;TR0=0; - 44 - P3=0 xff;P3_7=0;temp=P3;temp=temp & 0 x0f;if (temp!=0 x0f)for(i=50;i0;i-)for(j=200;j0;j-);temp=P3;temp=temp & 0 x0f;if (temp!=0 x0f)temp=P3;temp=temp & 0 x0f;switch(temp)case 0 x0e:key=12;break;case 0 x0d:key=13; - 45 - break;case 0 x0b:key=14;break;case 0 x07:key=15;break;temp=P3;P1_0=P1_0;P0=tablekey;STH0=tabkey/256;STL0=tabkey%256;TR0=1;temp=temp & 0 x0f;while(temp!=0 x0f)temp=P3;temp=temp & 0 x0f;TR0=0; - 46 - void t0(void) interrupt 1 using 0TH0=STH0;TL0=STL0;P1_0=P1_0;
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!