毕业设计(论文)-基于STC89C52单片机的电子琴设计与实现.doc_第1页
毕业设计(论文)-基于STC89C52单片机的电子琴设计与实现.doc_第2页
毕业设计(论文)-基于STC89C52单片机的电子琴设计与实现.doc_第3页
毕业设计(论文)-基于STC89C52单片机的电子琴设计与实现.doc_第4页
毕业设计(论文)-基于STC89C52单片机的电子琴设计与实现.doc_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘 要随着社会的发展进步,音乐逐渐成为我们生活中很重要的一部分,有人曾说喜欢音乐的人不会向恶。我们都会抽空欣赏世界名曲,作为对精神的洗礼。本论文设计一个基于单片机的简易电子琴。我们对于电子琴如何实现其功能,如声音强弱控制、节拍器、自动放音功能等等也很好奇。单片微型计算机它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。 微型计算机的出现和大量使用将人类社会带入一个新的时代,单片微型计算机(简称单片机)在其中扮演着十分重要的角色。虽然它没有常见的PC那样大的体积和重量,不会在办公桌或控制台上占据一个显要的位置,但它就像小小的螺丝钉一样,镶嵌在人们工作、生活中需要计算、控制、测量等智能活动的各个角落。自20世纪70年代问世以来,单片机以其体积小、可靠性高、控制功能强、使用方便、性能价格比高、容易产品化等特点,在智能仪表、机电一体化、实时控制、分布式多机系统、家用电器等各个领域得到了广泛应用,对各个行业的技术改造和产品的更新换代起着重要的推动作用,对人们生活质量的提高产生了深刻的影响。作为21世纪的工科大学生,学好单片机,一方面可以加深对计算机原理和结构的认识,另一方面也为自身在专业上的深入发展构筑了一个很好的平台,在实践过程中熟悉和熟练单片机的使用和开发。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用STC89C52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。通过基于单片机的嵌入式电子琴的设计课题熟悉和理解单片机应用和开发过程,培养我们理论联系实际,实践出真知的科学严谨求学的态度,提高实践动手操作技能。关键词: STC89C52单片机 音色 节拍器目 录第一章 续论1 1.1 电子琴的概念1 1.2 电子琴的种类1 1.3 电子琴的工作原理 1.4系统开发的背景1.5 系统开发的意义第二章 方案论证 2.1 控制模块选择方案 2.2 按键选择方案第三章 系统硬件设计及说明 3.1 系统组成及总体框图 3.2 元件简介 3.2.1 STC89C52简介 3.2.2 主要功能特性3.2.3工作原理3.2.4 LM3863.3 设计实现过程3.3.1 设计指标3.3.2 设计要求3.3.3 设计目标第四章 系统软件设计4.1 音乐相关的知识4.2 如何用单片机实现音乐的节拍4.3 如何用单片机实现音乐的频率4.4 设计说明4.5 设计简单原理介绍4.6 总体方案及设计流程4.7 原理图第五章 系统调试5.1 软件仿真调试5.2 软件调试第六章 调试结论第七章 设计心得体会致谢参考文献附录附录1 主要电路原理图附录2源程序附录3 元器件清单第一章 绪论1.1 电子琴概念简易电子琴结构组成: 电子乐器的结构较为复杂, 音源是由晶体管产生电振动,并通过音色回路而产生各种音色;同时由周波数调制产生颤音效果,由振 幅调制产生各种乐器的音效。 乐器特色:属于电子乐器,发音音量可以自由调节。音域较宽,和声丰富,甚至可以演奏出一个管弦乐队的效果,表现力极其丰富。它还可模仿多种音色,甚至可以奏出常规乐器所无法发出的声音(如人声,风雨声等)。另外,电子琴在独奏时,还可随意配上类似打击乐音响的节拍伴奏,适合于演奏节奏性较强的现代音乐。另外,电子琴还安装有混响、回声、延长音、震 音和颤音等多项功能装置,表达各种情绪时运用自如。简易电子琴是电声乐队的中坚力量,常用于独奏主旋律并伴以丰富的和声。 还常作为独奏乐器出现,具有鲜明时代特色。但电子琴的局限性也十分明显:旋律与和声缺乏音量变化,过于协和、单一;在模仿各类管、弦乐器时,音色还不够逼真,模仿提琴类乐器的音色时,失真度更大,还需要不断改进。1.2 电子琴的种类目前市场上电子琴的各种品牌、型号有上百种,由几十元的玩具电于琴到几百几千元的学习、演奏用琴,真是琳琅满目, 总体上可分为两大类;便携式电子琴和台式电子琴。便携式电子琴包括非标准型电于琴和标准型电子琴而台式电子琴包括单排键台式电子琴。双排键电子琴、电于管风琴等(一)、非标准型(玩具型)电子琴非标准型(玩具型)电子琴是电子琴中最普通,价格较实惠的一种、琴的体积大小不一,键盘数量从二十四键至四十九键不等。这类琴琴键较狭小,从音质、功能及性能等方面与标准便携式电子琴相比较有一定差距。另外,受功能、琴键数量等因素制约,演奏乐曲的音域与难度也受到一定制约、非标准型(玩具型)电子琴可作为低龄儿童电子琴入门学习或作为一种娱乐的工具。(二)、标准型单排键便携式电子琴标准型单排键便携式电子琴具有琴键规范,音质优美、动能完备、性能忧异、体小量轻。携带方便等优点,是电子琴中最普及、最常见的一种。键盘数量通常为六十一健,也有四十九键和七十三键甚至更多者,这类琴有高、中、低几种不同档次,不同档次的电了琴其音质,功能等方面有一定的差异标准型电子琴有学习,娱乐、伴奏、独奏等多种用途;是大多数电子琴爱好者学习用琴较理想的选择。 (三)、台式单排键电子琴这类琴的外形类似风琴和电钢琴;其操作、功能等与便携式电子琴相同。台式电子琴的影体较大琴身与柜式琴架合为一体,琴的下半部分带有音箱,其音量可满足一般音乐教室和小型舞厅的使用需要。这类琴有学习、娱乐、伴奏、独奏等多种用途:其缺点是不便携带(四)、双排键电子琴双排键电子琴是吸取管风琴的结构原理发展而来的。是电子琴中性能最优、功能最全。档次最高的一类琴。它不仅有双层(也有三层)演奏键盘,同时在琴的底部还设有脚键盘脚键盘主要是用来演奏低音的,有时也用来演奏旋律。双排键电子琴的乐谱用三行大谱表记谱,第一行谱多为旋律,用右手演奏第二行多为伴奏,用左手演奏(也有交错使用的情况),第三行为低音,用脚键盘演奏。一般由左脚来演奏,有时也可双脚并用琴的底部还有两个控制踏板;由右脚来控制力度。转换音色、变化速度。开关节奏、制造滑音等。因此 双排键电子琴演奏比便携式更复杂、更困难些,往往是手脚并用十分繁忙,但这种根据乐曲需要的四肢及体态繁忙给人以视觉上的享受。一个优秀的演奏家在一台性能卓越的双排键电子琴上的演奏;其效果能与一个大型乐队相媲美。如今,双排键电子琴已是音乐院校电子琴专业的学习、教学、音乐会的专业用琴,国际上的电子琴比赛也都是采用双排键电子琴。(五)、电子管风琴电子管风琴是采用管风琴音色并运用电子发声原理制作而成的,它有一层健盘、双层键盘和多层键盘几种类型。演奏控制部分和演奏方式与传统的管风琴相仿。电子管风琴全部采用了管风琴音色,没有普通电子琴中的自动伴奏功能,主要用于演奏宗教音乐。由于电子管风琴的体积较小,安装方使,音响效果较好且投资相对要低,因此在国内外一些教堂和演奏厅常用此类琴来代替制作工艺复杂、外型庞大、投资巨大的传统管风琴1.3 电子琴工作原理大家都知道当物体振动时,能够发出声音。振动的频率不同,声音的音调就 不同。在简易电子琴里,虽然没有振动的弦、簧、管等物体,却有许多特殊的电 装置,每个电装置一工作,就会使喇叭发出一定频率的声音。当按动某个琴键时, 就会使与它对应的电装置工作,从而使喇叭发出某种音调的声音。简单的说就是按键触发信号发给处理器,再由处理器调用音色库音色通过功放电路输出或者通过数码接口进行数字输出。控制面板上的按钮来选择处理器对音色、音量、输出方式、伴奏的控制。振荡器是根据需要产生一定频率的振荡信号,振荡信号通过分频器分解成不同频率的信号输送到放大器,放大器将信号放大,推动扬声器发出声音。键盘实际上就是一些开关,如果没有键盘,许多种频率的信号一齐进到放大器里,通过 扬声器发出的声音就会乱七八糟,不成音乐。按下键盘的一支键,就等于接通一只开关,只允许某一种频率的信号通过到放大器里去,扬声器就发出一个音来。这样,按照一定的演奏规律来按键,就能奏出美妙的音乐来。电源的任务是给各部分供电。压控振荡器的输出Uo接至相位比较器的一个输入端,其输出频率的 高低由低通滤波器上建立起来的平均电压Ud 大小决定。施加于相位比较器另一 个输入端的外部输入信号Ui与来自压控振荡器的输出信号Uo 相比较,比较结果产生的误差输出电压 U 正比于Ui和Uo两个信号的相位差, 经过低通滤波器滤除高频分量后,得到一个平均值电压Ud。这个平均值电压 Ud 朝着减小 Co 输出频率和输入频率之差的方向变化,直至 Vco 输出频率和输入信号频率获得一致。这时两个信号的频率相同,两相位差保持恒定(即同步)称作相位锁定。当锁相环入锁时,它还具有“捕捉”信号的能力,Vco 可在某一范围内自动 跟踪输入信号的变化,如果输入信号频率在锁相环的捕捉范围内发生变化,锁相 环能捕捉到输人信号频率, 并强迫Vco锁定在这个频率上。锁相环应用非常灵活,如果输入信号频率 f1 不等于Vco输出信号频率f2,而要求两者保持一定的关系,例如比例关系或差值关系,则可以在外部加入一个运算器,以满足不同工作的需要。过去的锁相环多采用分立元件和模拟电路构成,现在常使用集成电路的锁相环,CD4046是通用的 CMOS 锁相环集成电路,其特点是电源电压范围宽(为 3V 18V) ,输入阻抗高(约 100M),动态功耗小,在中心频率 fo 为 10kHz 下功耗 仅为 600W,属微功耗器件。 本设计主要是通过对电子琴主体部分的电路进行模仿设计, 达到电子琴固有的基本功能,故叫简易电子琴。利用定时器可发出不同频率的脉冲,不同频率的 脉冲经喇叭驱动电路放大滤波后,就会发出不同音调。其次,定时器按设置的定 时参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平,由 于定时参数不同,就发出不同频率的脉冲,本设计中按键一次,会发出 50 个脉 冲,松开后随之延时 10 个脉冲,但在延时的 10 个脉冲期间继续检测键盘,若此时又有键被按下,若被按下的仍为原键则声音不变,否则键盘会译出被按下的另一个键的音调。 当简易电子琴发声时,除了发出某一频率的声音基音以外,还会发出响度较小、频率加倍的辅助音谐音。我们听到的乐器的声音是它发出的基音和谐音混合而成的。不同的乐器发出同一基音时,不仅谐音的数目不同,而且各谐音的响度也不同。因而使不同的乐器具有不同的音品。在电子琴里,除了有与基音对应的电装置外,还有与许多谐音对应的电装置,适当地选择不同的谐音电装置,就可以模仿出不同乐器的声音来。利用定时器可发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同音调。其次,定时器按设置的定时参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平,由于定时参数不同,就发出不 同频率的脉冲,本设计中按键一次,会发出 50 个脉冲,松开后随之延时10个脉冲,但在延时的10个脉冲期间继续检测键盘,若此时又有键被按下,若被按下的仍为原键则声音不变,否则键盘会译出被按下的另一个键的音调。本电路中的硬件比较简单,其功能的实现主要由软件完成。软件的设计思 路通过框图形式说明在正文中会有介绍。 1.4 系统开发背景 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用STC89C52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个按键和扬声器。 本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。设计了用AT89s52单片机设计一个简易的电子琴,有16个按键,可以做一些基本的弹奏。与传统的模拟信号不同,本设计主要介绍的是数字信号连接功率放大电路,驱动喇叭,产生乐音。其中包括了音调的产生,节拍的产生,以及如何合理应用单片机的定时,中断系统生成相应的音调和节拍,设计出音乐演奏系统。一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。1.5 系统开发意义 该设计具有以下优点:(1)可以随意弹奏想要表达的音乐; (2)制作简单,成本低第二章 方案论证2.1 控制模块的选择方案方案一:用可控硅制作电子琴。将220V交流电经变压器降压,再经过整流、滤波,获得+13.5V直流电压。将单向可控硅SCR和电阻、电容组成驰张振荡器电路。但该设计方案制作成本高且复杂。方案二: 采用AT89C51单片机进行控制,由于AT89C51不具备ISP功能,因此Atmel公司已经停产在市面上已经不常见,况且其ROM只有4K在系统将来升级方面没有潜力。方案三:采用AT89S51单片机进行控制,由于其性价比高,完全满足了本作品智能化的要求,它的内部程序存储空间达到8K,使软件设计有足够的内部使用空间并且方便日后系统升级,使用方便,抗干扰性能提高。鉴于上述对比与分析,本设计采用方案三 2.2 按键选择方案 组成键盘的按键有机械式、电容式、导电橡胶式、薄膜式多种,但不管什么形式,其作用都是一个使电路接通与断开的开关。目前微机系统中使用的键盘按其功能不同,通常可分为编码键盘和非编码键盘两种基本类型。 编码键盘:键盘本身带有实现接口主要功能所需的硬件电路。不仅能自动检测被按下的键,并完成去抖动、防串键等功能,而且能提供与被按键功能对应的键码(如ASCII码)送往CPU。所以,编码键盘接口简单、使用方便。但由于硬件电路较复杂,因而价格较贵。 非编码键盘:键盘只简单地提供按键开关的行列矩阵。有关按键的识别、键码的确定与输入、去抖动等功能均由软件完成。目前微机系统中,一般为了降低成本大多数采用非编码键盘。 键盘接口必须具有去抖动、防串键、按键识别和键码产生4个基本功能。 (1)去抖动:每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续时间与键的质量相关,一般为520mm。所谓抖动是指在识别被按键是必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。去抖问题可通过软件延时或硬件电路解决。 (2)防串键:防串键是为了解决多个键同时按下或者前一按键没有释放又有新的按键按下时产生的问题。常用的方法有双键锁定和N键轮回两种方法。双键锁定,是当有两个或两个以上的按键按下时,只把最后释放的键当作有效键并产生相应的键码。N键轮回,是当检测到有多个键被按下时,能根据发现它们的顺序依次产生相应键的键码。 (3)被按键识别:如何识别被按键是接口解决的主要问题,一般可通过软硬结合的方法完成。常用的方法有行扫描法和线反转法两种。行扫描法的基本思想是,由程序对键盘逐行扫描,通过检测到的列输出状态来确定闭合键,为此,需要设置入口、输出口一个,该方法在微机系统中被广泛使用。线反转法的基本思想是通过行列颠倒两次扫描来识别闭合键,为此需要提供两个可编程的双向输入/输出端口。 (4)键码产生:为了从键的行列坐标编码得到反映键功能的键码,一般在内存区中建立一个键盘编码表,通过查表获得被按键的键码。 传统电子琴可以用键盘上的“1”到“A”键演奏从低SO到高DO等11音。该设计有16个按钮矩阵,设计成16个音,可以实现音阶在低音4-高音5之间。比传统音阶范围大,弹奏效果好。 第三章 系统硬件设计及说明3.1系统组成及总体框图硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。该设计要实现一种由单片机控制的电子琴,单片机工作于12MHZ时钟频率,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不同频率的脉冲信号。该设计具有11个音节的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。用单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要音频功率放大电路。本例使用国家半导体公司的低压音频功率放大器LM386来实现音频功放电路。 按键音频功放电路单片机STC89C52扬声器图3-1 系统结构图3.2元件简介3.2.1STC89C52特点 STC89C52 完全兼容MCS-51 系列单片机的所有功能,并且本身带有2K 的内存储器,可以在编程器上实现闪烁式的电擦写达几万次以上,比以往惯用的8031CPU 外加EPROM为核心的单片机系统在硬件具有更加简单方便等优点,具体如下5:STC89C52 单片机是最早期也最典型的产品,低功耗、高性能、采用CHMOS 工艺的8位单片机。它在硬件资源和功能、软件指令及编程上与Intel 80C3X 单片机完全相同。在应用中可直接替换。在STC89C52 内部有FLASH 程序存储器,既可用常规的编程器编程,也可用在线使之处于编程状态对其编程。编程速度很快,擦除时也无需紫外线,非常方便。STC89C5X 系列可认为是Intel 80C3X 的内核与STC FLASH 技术的结合体。它为许多嵌入式控制系统提供了灵活、低成本的解决方案。1.主要性能与MCS-51 产品指令系统完全兼容;片内集成4KB 的FLASH 存储器,可反复编程/擦除1000 次;数据保留时间:10 年;全静态设计,时钟频率范围为024MHz、33MHz;三个程序存储器保密位;1288 字节的内部RAM;32 条可编程的I/O 口线;2 个可工作于4 种模式的16 位定时/计数器;5 个中断源/2 个中断优先级;可编程串行通道;具有4 种工作模式的全双工串行口;低功耗的待机工作模式和掉电工作模式;片内振荡器和时钟电路;具有4 种工作模式的全双工串行口;低功耗的待机工作模式和掉电工作模式;片内振荡器和时钟电路;3.2.2 主要功能特性STC89C52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。与MCS-51单片机产品兼容、8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:0Hz33Hz、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。 3.2.3工作原理 管脚说明VCC:供电电压。GND:接地。P0 口:P0 口为一个8 位漏级开路双向I/O 口,每脚可吸收8 个TTL 门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH 编程时,P0 口作为原码输入口,当FLASH 进行校验时,P0 输出原码,此时P0 外部必须被拉高。P1 口:P1 口是一个内部提供上拉电阻的8 位双向I/O 口,P1 口缓冲器能接收输出4 TTL 门电流。P1 口管脚写入1 后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1 口作为第八位地址接收。P2 口:P2 口为一个内部上拉电阻的8 位双向I/O 口,P2 口缓冲器可接收,输出4个TTL 门电流,当P2 口被写1时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流,这是由于内部上拉的缘故。P2 口当用于外部程序存储器或16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在FLASH 编程和校验时接收高八位地址信号和控制信号。P3 口:P3 口管脚是8 个带内部上拉电阻的双向I/O 口,可接收输出4 个TTL 门电流。当P3 口写入1后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为ST89C52的一些特殊功能口,P3 口管脚备选功能:P3.0 RXD(串行输入口);P3.1 TXD(串行输出口);P3.2 INT0(外部中断0);P3.3 INT1(外部中断1);P3.4 T0(计时器0 外部输入);P3.5 T1(计时器1 外部输入);P3.6 WR (外部数据存储器写选通);P3.7 RD (外部数据存储器读选通);P3 口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位时,要保持RST 脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE 脉冲。如想禁止ALE的输出可在SFR 8EH 地址上置0。此时, ALE 只有在执行MOVX,MOVC 指令是ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE 禁止,置位无效。PSEN :外部程序存储器的选通信号。在由外部程序存储器读取指令期间,每个机器周期两次PSEN 有效。但在访问外部数据存储器时,这两次有效的PSEN 信号将不出现。EA /VPP:当EA 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1 时,EA 将内部锁定为RESET;当EA 端保持高电平时,此间内部程序存储器。在FLASH 编程期间,此引脚也用于施加12V 编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.振荡器特性XTAL1 和XTAL2 分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2 应不接。由于输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4.芯片擦除整个EPROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE 管脚处于低电平10ms 来完成。在芯片擦除操作中,代码阵列全被写1且在任何非空存储字节被重复编程以前,该操作必须被执行。5.编程算法(1)地址线上输入欲编程的存储单元地址;(2)在数据线上输入编程数据;(3)加正确的控制信号组合;(4)在高压模式下使VPP 为12V;(5)在ALE 引脚上加一次负脉冲,可对FLASH 存储器的一个字节或保密位进行编程。编程一个字节的周期是内部自定时的,典型时间不会超过1.5ms。改变编程的存储单元地址和编程数据重复步骤(1)(5),直到编程文件最后。此外,STC89C52 设有稳态逻辑,可以在零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU 停止工作,但RAM、定时器、计数器、串口和中断系统仍在工作。在掉电模式下,保存RAM 的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。3.2.4 LM386LM386是美国国家半导体公司生产的音频功率放大 器,主要应用于低电压消费类产品。为使外围元件最少,电压增益内置为20。但在1脚和8脚之间增加一只外接电阻和电容,便可将电压增益调为任意值,直至 200。输入端以地位参考,同时输出端被自动偏置到电源电压的一半,在6V电源电压下,它的静态功耗仅为24mW,使得LM386特别适用于电池供电的场合。LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中。 LM386内部电路原理图LM386内部电路原理图如图所示。与通用型集成运放相类似,它是一个三级放大电路. 第一级为差分放大电路,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构成反馈网络,从而引入了深度电压串联负反馈,使整个电路具有稳定的电压增益。LM386的封装形式有塑封8引线双列直插式和贴片式。图3-2 LM386的封装形式特性(Features)静态功耗低,约为4mA,可用于电池供电。 工作电压范围宽,4-12V or 5-18V。 外围元件少。 电压增益可调,20-200。 低失真度。其典型应用电路如下: 放大器增益=20(最少器件)放大器增益=50 图3-5 低频提升放大器音频功放电路在一定频率范围内的振动能够产生乐音,但是用单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要音频功率放大电路。lm386功放最大的特点是低功耗,高增益,增益最高可达200。LM386电源电压4-12V,音频功率0.5w。LM386音响功放是由NSC制造的,它的电源电压范围非常宽,最高可使用到15V,消耗静态电流为4mA,当电源电压为12V时,在8欧姆的负载情况下,可提供几百mW的功率。它的典型输入阻抗为50K。本例使用国家半导体公司的低压音频功率放大器LM386来实现音频功放电路。其电路以及各参数如下图 LM386电路图及各参数 LM386应用图3.3 设计实现过程 3.3.1设计指标 (1)设计一个具有16个键的键盘,并将16个键设计成16个音;(2)可弹奏想要表达的音乐;3.3.2 设计要求 (1)按设计指标进行电路设计;(2)列出音阶与单片机定时器输出频率关系表格;(3)制作符合设计指标的硬件电路。 3.3.3设计目标 由于本设计主要用于人们娱乐方面,因此在设计上尽量使其安全以及简单易操作。其次,在这次设计可行性上进行分析如下:1、经济可行性:所谓经济可行性,即在这次设计上需要投入资金的多少,由于毕业设计是没有项目资金,没有开发经费,因此在经济上必须能够承受,比较理想化的项目对于我们毕业设计来说是不可行的。通过分析后,无论是在器件价格或是常见度上均是可行的。2、技术可行性:技术可行性主要是分析技术条件上是否能够顺利开展并完成开发工作,硬件、软件能否满足设计者的需要等。通过分析各种软件环境,硬件仿真环境等均已经具备。综上所述,本系统设计目标已经明确,在经济与技术上均可行,因此本系统的开发是完全可行的。第四章 系统软件设计4.1音乐相关知识乐音听起来有的高,有的低,这就叫音高,音高是由发音物体振动频率的高低决定的,频率高声音就高,频率低声音就低,不同音商的乐音是用C、D、E、F、G、A、B表示的,这7个字母就是乐音的音名,它们一般依次唱成DO、RE、MI、FA、SO、LA、SI,这是唱曲时乐音的发音,所以叫唱名。音持续时间的长短即时值,一般用拍数表示,休止符表示暂停发音。一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样就可以利用不同频率的组合,加以与拍数对应的延时,构成音乐。4.2如何用单片机实现音乐的节拍 除了音符以外,节拍也是音乐的关键组成部分。 节拍实际上就是音持续时间的长短,在单片机系统中可以用延时来实现,如果1/4拍的延时是0.4秒,则1拍的延时是1.6秒,只要知道1/4拍的延时时间,其余的节拍延时时间就是它的陪数。如果单片机要自己播放音乐,那么必须在程序设计中考虑到节拍的设置,由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。对于不同的曲调我们也可以用单片机的另外一个定时/计数器来完成。音乐的音拍,一个节拍为单位(C调)具体如下表:曲调值DELAY 曲调值DELAY调4/4125ms 调4/462ms调3/4187ms 调3/494ms调2/4250ms 调2/4125ms 音乐节拍表4.3如何用单片机产生音频脉冲了解音乐的一些基本知识后可知,产生不同频率的音频脉冲即能产生音乐,对于单片机而言,产生不同频率有脉冲非常方便,可以利用它的定时/计数器来产生这样的方波频率信号,因此,需要弄清楚音乐中的音符和对应的频率,以及单片机定时计数的关系。在本实验中,单片机工作于12MHZ时钟频率,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不同频率的脉冲信号,在此情况下,C调的各音符频率与计数值T的对照如下表:音符频率(HZ)计数值(T值)音符频率(HZ)计数值(T值)低1DO26263628#4FA#74064860#1DO#27763737中5SO78464898低2RE29463835#5SO#83194934#2RE#31163928中6LA88064968低3MI33064021#6LA#93264994低4FA34964103中7SI96865030#4FA#37064185低1DO104665058低SO39264260#1DO#110965085#5SO#41564331高2RE117565110低6LA44064400#2RE#124565134#6LA#46664463高3MI131865157低7SI49464524高4FA139765178中1DO52364580#4FA#149065198#1DO#55464633高5SO156865217中2RE58764633#5SO#166165235#2RE#62264884高6LA176065252中3MI65964732#6LA#186565268中4FA69864820高7SI196765283 音符频率与计数值T的对照表T的值决定了TH0和TL0的值,其关系为:TH0=T/256,TL0=T%2564.4 设计说明电子琴是高科技在音乐领域的一个代表,它是古典文化与现代文明的一个浓缩体。它不但可以帮助我们的音乐教师进行传统音乐文化的教育教学工作,而且由于它又具备现代音乐,特别是电子音乐、电脑音乐的基本结构、特征,因而使我们的教师在进行现代音乐、电子音乐、电脑音乐的教学时,更直接、更简便。单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。它的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89C51单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个弹奏按键、1个播放键和扬声器。4.5 设计简单原理介绍一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。就可在P1.0引脚上得到此频率的脉冲。 利用AT89C51的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T1/5231912

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论