基于单片机的激光竖琴设计

上传人:无*** 文档编号:125299050 上传时间:2022-07-26 格式:DOC 页数:46 大小:3.07MB
返回 下载 相关 举报
基于单片机的激光竖琴设计_第1页
第1页 / 共46页
基于单片机的激光竖琴设计_第2页
第2页 / 共46页
基于单片机的激光竖琴设计_第3页
第3页 / 共46页
点击查看更多>>
资源描述
本 科 生 毕 业 设 计 (论 文)基于MCU的简易激光电子琴设计与实现Design And Implementation OfThe Simple Laser Electronic OrganBased On MCU教学单位 _ XXXXXXXXXXX _姓 名 _ XXX _ _学 号 _XXXXXXXXXXXX _年 级 _ XXXXXX_ _专 业 _ XXX_ _指导教师 _ XXX_ _职 称 _ _XXX_ _2012 年 04 月目 录摘 要IABSTRACTII第一章 引 言11.1 课题背景11.2 研究目的及意义1第二章 系统总体设计及方案论证22.1 总体设计方案22.2 设计方案的论证及选择22.2.1 主控制系统22.2.2 传感器系统42.2.3 发声系统52.2.4 电源系统6第三章 外观结构设计与实现83.1 外观结构设计思路83.2 外观设计元素83.3 结构设计9第四章 硬件电路设计与实现104.1 硬件设计方案104.2 各模块电路设计与实现104.2.1 单片机最小系统104.2.2 激光发射模块134.2.3 激光接收模块144.2.4 音响发声模块14第五章 软件设计与实现165.1 软件设计方案165.2 各模块程序设计与实现175.2.1 硬件资源配置175.2.2 端口信号检测195.2.3 数据处理195.3 软件开发工具介绍19第六章 软件仿真调试216.1 仿真软件介绍216.1.1 Protues的功能特点216.1.2 Protues各功能模块特点216.1.3 Protues仿真的意义236.2 Protues仿真方案设计236.3 Protues电路仿真设计与实现246.3.1 单片机最小系统仿真电路246.3.2 独立按键和虚拟仪器仿真电路设计256.3.3 仿真结果与设计方案可行性分析25第七章 总结和展望28参考文献29附 录I附录A 硬件电路原理图I附录B 硬件电路PCBVI附录C 程序流程图VIII附录D 程序源代码IX附录E 实物图XI致 谢I摘 要本文提出了一个基于8051内核单片机的激光电子琴的设计方案。从原理介绍到实物实现,从硬件设计到软件调试等都做了详尽的介绍。该系统在硬件设计上以宏晶公司生产的STC89C52RC型单片机为核心控制芯片,基于8051内核单片机最小系统,以半导体激光发射管和接收管为传感器,利用半导体激光发射管发出的光束模拟电子琴的琴弦,控制芯片对接收管电路输出的数字信号进行采集和处理,实现中音区八音阶稳定发音。在软件设计上,我们采用C语言编写程序源代码。此外,在系统的外观结构上我们采用强度较低的PVC工业塑料和强度较高的轻质合金片搭配设计制作,既保证了外观上的美观性又确保了结构上的稳定性。我们在系统从概念到产品的完整设计过程中,首先,基于澳大利亚Altium公司开发设计的计算机辅助设计软件Altium Designer 6进行电路原理图设计。然后,基于美国Keil Software公司开发设计的集成开发环境uVision3进行软件结构和程序流程图的设计,并以C语言编写源程序代码。接着,基于英国Labcenter Electronics公司开发设计的EDA工具软件Protues 7进行从原理图布图、代码调试到单片机与外围电路的协同仿真调试。最后,基于Altium Designer 6软件,结合所设计的电路原理图进行PCB Layout设计,并根据所设计PCB电路板的尺寸、形状进行产品外观结构的设计与制作。该系统的设计方法更大程度上体现了灵活性、美观性和创新性。在功能上拥有较高的可移植性和扩展性,方便用户根据自己的需求和爱好扩展新的功能。【关键字】:电子琴 单片机 软件仿真 PCBABSTRACTIn this paper, a laser Electronic Organ design method based on 8051 microcontroller core . Principle to the physical implementation , from hardware design to software debugging and so do the detail.The system hardware design in order to the macro crystal production STC89C52RC type microcontroller as the core control chip , the smallest single-chip system based on the 8051 core semiconductor laser launch tube and receiver tube for the sensor , the use of semiconductor laser emission the tube beam emitted analog keyboard piano string , the control chip the receiver tube circuit output digital signal acquisition and processing, to achieve the tenor octave stability in pronunciation . In software design , we are . In addition, the appearance of the structure of the system , we use the lower strength PVC industrial plastics and high strength light alloy film with design , both to ensure the aesthetics and appearance to ensure the stability of the structure .In the complete design process from concept to product , first , the development and design of computer-aided design software based on Altium Australia - Altium Designer schematic circuit design . Then, based on integrated development environment - uVision2 , United States Keil Software development and design of software architecture design and program flow chart , and C language source code . Then, the design and development of British Labcenter company Electronics EDA software - Based on Protues 7 from the schematic layout, debugging code to collaborative simulation debugging MCU and peripheral circuit. Finally, based on the Altium Designer 6 software, combined with the circuit diagram designed by PCB Layout design, and design and manufacture of the appearance of the product structure according to the design of the PCB circuit board size, shape.The system is designed to a greater extent reflects the flexibility , aesthetics and innovation . High portability and scalability , user-friendly function to extend the functionality according to their needs and preferences.【Keywords】: Electronic Organ MCU Software simulation PCB第一章 引 言1.1 课题背景科技的飞速发展使得人类生活日益变得丰富多彩。电子琴是现代电子科技与人类对音乐诉求完美结合的产物。MCU(Micro Control Unit)中文名称为微控制单元,又称单片微型计算机(Single Chip Microcomputer)或者单片机。单片机出现的历史并不长,但发展十分迅猛。它的产生与发展和微处理器的产生与发展大体同步,自1971年美国Intel公司首先推出4位微处理器以来,它的发展到目前为止大致经历了以下五个阶段:单片机发展的初级阶段、低性能单片机阶段、高性能单片机阶段、16位单片机阶段、单片机在集成度等全方位向更高水平发展阶段。单片机可以构成单机应用系统和多机应用系统。现在已经逐步应用到测控系统、智能仪表、机电一体化产品、智能接口、智能民用产品、功能集散系统、并行多机控制系统、局部网络系统等各个领域。相信随着单片机性能的不断提高,它的应用将会更加广泛。1.2 研究目的及意义基于MCU的简易激光电子琴设计与实现这一课题是单片机在单机应用系统学习中的一典型应用。整个系统涉及到电路分析、数字电路、模拟电路、传感器原理及应用、C语言程序设计等方面,基本上囊括了本科阶段所学的主要课程。该系统设计原理简单,但表现形式丰富,整个设计过程是一个从理论学习到实践应用的完整体现,既可以充分巩固所学可课程内容,又锻炼和培养了学生的实践能力和创新能力,拓宽了视野,提升了参与到学生创新活动中的兴趣,更重要的是可以提升学生发现问题、分析问题和解决问题的能力,在高校单片机课程中这一课题是极好的选择。该系统可以进行单片机相关功能的扩展,在现有设计的基础上可以实现中音区、八音符的准确发音。其商品化设计技术已经十分成熟,市场上已经出现或正在出现基于该设计技术的电子琴、电子吉他等产品。随着单片机技术和传感器技术的迅猛发展,以及工业生产工艺的提高,基于该设计技术的电子产品会更加丰富多彩的走入人类的生活。第二章 系统总体设计及方案论证2.1 总体设计方案我们所设计的电子琴共分为四大系统:主控制系统、传感器系统、发声系统、电源系统(如图2.1所示)。电源系统传感器系统主控制系统发声 系统图2.1 系统结构图传感器系统作为整个系统唯一的数据采集部分起着至关重要的作用,它将完成系统对外部触发信号的采集与转换,其输入给单片机数据端口的数据是否准确将直接决定整个系统是否能正常工作;主控制系统作为整个系统的数据处理中心,好比是人的大脑,时刻控制着各个系统有序、稳定地运行;发声系统接收来自主控制系统发送的数据,实现数字信号向模拟信号的转换,将主控制系统发送来的数字信号转换为人耳可听的声音信号;电源系统犹如人的心脏,负责向整个系统提供可靠、稳定的电源,保证整个系统稳定运行。系统总体设计完成之后,我们接下来将对每个子系统提出的不同设计方案进行分析论证,以选定最佳的设计方案。2.2 设计方案的论证及选择我们依次对主控制系统、传感器系统、发声系统、电源系统作出性能需求分析,并就分析结果提出不同的解决方案,然后从中论证出最佳的设计方案。2.2.1 主控制系统主控制系统需要实时控制其他子模块稳定工作。综合分析系统设计我们知道,主控制系统负责接收来自传感器系统输出的数字信号,通过主控制芯片对其进行数据处理并产生相应数字信号输出给发声系统,也就是说主控制系统只需要采集、处理、输出数字信号而不需要进行AD转换或DA转换。再考虑到人耳有听觉反应的声音频率在20Hz20KHz之间,并且我们的设计要求是实现频率分布在500Hz1KHz之间的中音区基本音符的发音,由此判断,我们在主控制芯片的运算速度上要求不高,不需要考虑选择具有高速处理能力的主控制芯片。常见的数据处理与控制芯片主要分为四大类:微处理器/微控制器(MPU/MCU)、数字信号处理芯片(DSP)、全定制专用计算/控制芯片(ASIC)、复杂可编程逻辑器件/现场可编程门阵列(CPLD/FPGA)。它们都可以作为简易电子琴的主控制芯片。下面我们就基于各种控制芯片所构成的主控制系统的特点进行详细分析。方案一:基于微处理器/微控制器(MPU/MCU)的主控制系统设计微处理器与微控制器的主要区别在于前者是一个单芯片的中央处理器而后者是一个具有CPU、存储器等部件的微型计算机系统,前者通常应用于大型运算工具或嵌入式系统中而后者通常应用于低成本消费电子业、工业控制及与控制有关的数据处理等领域。常见的中高端微处理器/微控制器有Intel的x86平台、PowerPC平台以及ARM平台等,低端的微处理器/微控制器有8051系列、AVR系列、Freescale系列和MSP430系列等。中高端微处理器以ARM11为例,它拥有最高1GHz的时钟频率和强大的指令集,远远超出简易电子琴所需的设计要求,但是它的学习和应用较为复杂,开发周期太长且价格较为昂贵,设计成本过高。低端微处理器以8051系列为例,它具有23个16位定时器/计数器,128字节片内RAM、32位并行I/O口、57个中断源,完全可以满足我们所需的设计要求。此外,8051系列微处理器简单易学,开发周期较短,价格便宜,设计成本低廉。方案二:基于数字信号处理芯片(DSP)的主控制系统设计数字信号处理芯片常见的有TI公司的TMS320系列和AD公司的ADSP2100系列。它的内部采用程序总线和数据总线分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的DSP指令,可以用来快速实现各种数字信号处理算法,显然在简易电子琴设计中绰绰有余。但是它也有成本太高、功耗较大,开发周期长的缺点。方案三:基于全定制专用计算/控制芯片(ASIC)的主控制系统设计全定制专用计算/控制芯片具有时序控制精准、可靠性高、性能卓越、保密性较强、低功耗和大批量生产成本较低的优点,但是在小批量生产时成本过高、开发效率较低、开发风险大、定型后灵活性差等缺点,显然这在我们非商品话设计阶段是不适用的。方案四:基于可编程逻辑器件/现场可编程门阵列(CPLD/FPGA)的主控制系统设计可编程逻辑器件和现场可编程门阵列的主要区别在于前者是以乘积项的结构方式构成逻辑行为的器件,内部布线均匀连续,所以他的时序延迟是均匀可预测的。而后者是以查表法结构方式构成逻辑行为的器件,分段式内部布线的结构决定了它的时序延迟是不均匀的不可预测的。CPLD一般采用EEPROM或Flash工艺,掉电后不会丢失内部逻辑结构,所以不需要外加ROM进行配置,保密性好,FPGA一般采用SRAM工艺,掉电后内部逻辑结构丢失,所以需要使用外部ROM在上电后对其进行配置,保密性较差。不过,FPGA有比CPLD集成度高、耗电量小的优点。总体来说,这两种器件的灵活性都比较高,功能野都都比较强,但是它们也同样面临着价格昂贵,开发成本高,开发周期长的难题。根据以上分析,我们了解到各种控制芯片都具有各自独特的特点,也都有各自不同的适用领域,充分考虑我们系统的设计要求,综合不同控制芯片的各自特点以及开发周期及开发成本等因素的限制,我们最终选择了价格低廉、开发方便、性能优良、符合设计要求的8051系列单片机作为系统的主控制芯片。2.2.2 传感器系统该系统设计中,传感器系统的作用是识别外部触发行为是否发生并将检测结果以电信号的形式输出给主控制系统进行处理。在该系统中我们对传感器系统性能的要求着重体现在灵敏度、抗干扰性和可靠性上,此外,我们还要求所选用的传感器器件具有成本低、寿命长、低故障率的特点。目前市场上所见到的半导体激光发射管的不同之处大多体现在额定功率、发光波长、封装形式上,针对我们自身的需求,只要选择一款性价比高、有品质保证的产品即可。此处值得探讨之处在于激光接收器件的选用,激光接收器件的选用和性能将直接决定着传感器模块的设计方案和工作质量。对于激光接收器件的选择,我们初步有两种设计方案:基于光敏电阻的接收电路设计和基于半导体激光接收二极管的接收电路设计。下面我们就所提出的的两种设计方案展开讨论和论证。方案一:基于光敏电阻的接收电路设计光敏电阻又称光导管。光敏电阻是利用半导体的光电导效应设计的一种电阻值随光照强弱变化而迅速改变的电阻器,其特点是光照增强,电阻减小,光照减弱,电阻增大。光敏电阻常用的制作材料为硫化镉、硫化铝、硫化铋等材料,这些材料具有在特定波长的光的照射下,其阻值迅速减小的特性。通过上述的介绍我们知道光敏电阻对光照强度变化十分敏感,这就造成了一个难题,那就是不同环境下自然光照对光敏电阻的影响。举个例子,我们在白天将电路调试好,系统正常工作,但到了晚上由于没有了白天自然光照的存在,自然环境因素的变化对于光敏电路来说影响是极大的,这就使得白天调试好的系统在晚上出现无法正常工作的情况。显然这是我们无法接受的,也是一件合格产品所不能容忍的。但是光敏电阻具有价格低廉、寿命长的优点。方案二:基于半导体激光接收二极管的接收电路设计半导体激光接收二极管是专门接收特定频率激光的器件。其工作原理是激光经光学透镜校准,被光电二极管接收,光电二极管接收光照后,随光照强度不同会产生相应强度的光生电流,经准换电路输出电信号,其输出的电信号为数字信号。半导体激光接收二极管分为常低态和常高态两种型号。常低态激光接收二极管在受到激光照射时输出高电平,没有受到激光照射时则输出低电平;常高态激光接收二极管与之相反。半导体激光接收二极管十分敏感,具有较低的门槛激光光照强度,从工作状态来看,其只有接收到激光和没有接收到激光两种确定的、对立的状态,而不存在中间状态。这种工作特点是我们所希望的,因为我们只需要辨识拨动琴弦和没有拨动琴弦两种情况。此外,一款激光接收二极管只能接收与之配对频率的激光束,这就完全避免了外界环境光照变化所造成的干扰了。综合以上分析,为了充分保证系统在各种外界环境下能够稳定、可靠的工作,我们选择了半导体激光接收管作为传感器模块的器件。2.2.3 发声系统发声系统的任务就是将主控制系统输出的数字脉冲信号转换为人耳能听到的声音信号。为了满足不同环境、不同人群的不同需求,我们期望所设计的发声系统在保证发声质量的前提下,能够实现音量可调的功能。此外,我们还期望发声系统具有自成一体、装配灵活、方便更换等设计特点。就上述所谈到的设计期望和要求,我们提出两种方案:采用扬声器自制发声系统、采用市场成品迷你型音响。接下来我们就所提出的的两种方案进行讨论并选出最合适的方案。方案一:采用扬声器自制发声系统采用扬声器自制的发声系统就是自行挑选某一功率的扬声器搭配一定的外观设计而制作的发声模块。这种设计可以直接将扬声器接到主控制系统进行工作,也可以在此基础上另外设计制作一个功率放大电路与之配套进行工作。前者设计简单,易于实现且成本低廉,但不能实现音量调节;后者需要设计特定的电源系统供电,设计繁琐,成本需求相对更高,但能实现音量调节。方案二:采用市场成品迷你型音响我们这里所指的市场成品迷你型音响是专指供笔记本电脑、MP3等电子设备使用的,采用3.5mm标准耳机接口的小型音响,而非家庭影院、剧场等使用的,具有复杂接口的大型音响。这种设计由于采用了具有高度质量保证的商业化产品,充分保证了系统发音的质量。由于商业化产品具有高度统一的生产标准,使得发声系统可以具备极高的灵活性和可替换性,而且采用商业化的产品也使系统整体的美观度得到极大提高。结合上述内容,综合考虑我们的整体设计要求,为了保证系统可靠、稳定、高质量地工作,同时为了便于功能的升级和扩展以及增大用户的自主选择性,我们最终决定选择使用市场已有的成品音响作为该设计的发声系统。2.2.4 电源系统电源系统是整个系统的源动力。电源系统的稳定、可靠与否将直接影响到整体系统能否正常、稳定地工作。提到供电时我们很自然地想到电池供电和电源适配器供电两种供电方式。方案一:电池供电随着电子科学技术的快速发展,诸如手机、照相机、平板电脑等电子产品日新月异。所有的电子产品都需要电源来维持工作,而绝大多数的手持或便携式电子产品都采用电池供电。众所周知,电池可分为不可充电电池和可充电电池。不可充电电池只能使用一次,电量耗尽之后不能继续使用,现在的使用不可充电电池的电子产品已经越来越少了,更多的时候不可充电电池只是作为电量不足、断电等突发情况的应急之用。可充电电池可以在电量耗尽之后经充电后继续使用,可以重复多次使用,是现阶段绝大多数电子产品的首要选择。虽然可充电电池可以实现重复多次充电,但是可充电电池也是有一定使用寿命限制的。电池作为现阶段电子产品发展不可或缺的重要产物同样存在着它的弊端。首先,不管是不可充电还是可充电电池都因为其制作原材料中含有有毒金属元素而不可避免的给自然环境和人类健康带来一定的污染和危害。其次,虽然现阶段电子技术已经在增大电池电量、延长电池使用寿命等方面取得了极大的进步,但电池仍未在这些技术领域实现飞跃性的突破,人们在使用电池的过程中仍然要面对电池电量不足、使用寿命短的问题。方案二:电源适配器我们这里所讲的电源适配器确切地讲应该叫做直流电源适配器。所谓直流电源适配器就是指将交流电源经过降压、整流、稳压后以直流电的形式输出的供电系统。笔记本电脑的交换式电源供电器就是典型的直流电源适配器。电源适配器通常用在需要长时间稳定供电、不需要随时移动的供电目标上。电源适配器的工作特点是供电稳定可靠、可以胜任长时间供电任务,并且随着电子技术和生产工艺的发展,电源适配器的生产成本越来越低。但是,同一款电源适配器的输出电压、额定功率都是固定不可调整的,不能像电池一样通过相互间串联实现调整输出电压、额定功率的目的。考虑到我们所设计的电子琴通常在固定的地方进行操作而不需要随身携带到处移动,而且为了保证电子琴能够长时间地稳定工作,我们最终决定选用电源适配器作为整个系统的供电系统。第三章 外观结构设计与实现外观结构设计包含外观结构选材、外形设计等内容,设计时需要考虑选材的强度、硬度等因素,要从是否方便加工、是否能够保证系统稳定性等方面入手。外观结构直接决定了整个系统作品的尺寸大小以及各个部分的大小和布局。我们首先对外壳材料进行论证。首先,电子琴的外壳必须具有较高的强度,以确保整个系统的稳定工作。其次,考虑到电子琴外观的美观性,我们需要外壳材料易于加工。再次,我们需要考虑设计成本的可控、可降,外壳材料的安全、环保。3.1 外观结构设计思路综合我们先前对外壳材料提出的各项要求,我们需要一种低密度、高强度、易于加工、价格低廉且安全、环保的材料。我们首先想到PVC工业塑料。这种材料密度低,价格低廉,便于切割加工,可以手工加工出漂亮的形状,满足了我们对易于加工和控制成本的要求。但该种材料强度太低,易损坏、易变形,显然这种材料不能完全满足我们对外观设计的要求。为了弥补PVC工业塑料在我们设计中的不足之处,我们考虑采用PVC工业塑料作为整个设计的外观材料,同时选用高强度、低密度的铝合金作为整个设计的支撑框架。这样就实现了整个外观结构既美观又坚固的目的。整体外观结构PVC材料外壳镂空祥云图标铝合金框架结构图3.1 外观结构设计框图3.2 外观设计元素为了增加外观设计的美观性,我们在电子琴前PVC面板上设计了一组祥云图标,并且通过美工刀进行切割、雕刻,使之呈现为镂空状。祥云图标与电子琴相结合,既体现了设计外观的美感又简约大方不失华丽,使传统元素与音乐完美结合,让人赏心悦目。3.3 结构设计在进行结构设计时,我们需要充分考虑所设计的PCB电路板的尺寸和形状,以及PCB电路板在外观框架上具体安装的位置和不同PCB电路板间导线的布线方向。第四章 硬件电路设计与实现4.1 硬件设计方案在外观结构设计完成之后,我们需要结合外观结构的尺寸要求展开对硬件电路的设计。我们对硬件系统的设计目标是可靠、简单、高效。可靠性是整体系统稳定运行的先决条件,所以我们在硬件电路设计的每个环节中都充分考虑了系统的抗干扰性和稳定性。系统的简单、高效是指硬件系统在具有较高可靠性的基础上尽量简化硬件电路并提高硬件的性能,从而达到简单高效的目的。在可靠、简单、高效的原则下,不仅方便元器件的选型和硬件电路的设计,也可以减少一些不必要的电路,从而减少了一些不确定因素对系统稳定性的影响。我们的硬件电路系统共分为五个子模块:单片机最小系统、激光发射模块、激光接收模块、音频驱动模块和电源模块。各子模块间框架关系见图4.1。单片机最小系统激光发射模块激光接收模块音频驱动模块电源模块图4.1 硬件系统框架图4.2 各模块电路设计与实现上一节中我们已经初步介绍了整个硬件电路系统的框架结构,在这一节中我们将着重介绍硬件电路各个子模块的构成、功能及PCB电路板设计。我们接下来依次按照单片机最小系统、激光发射模块、激光接收模块、音频驱动模块、电源模块的顺序对各子模块作出介绍。4.2.1 单片机最小系统单片微型计算机(Single Chip Microcomputer)简称单片机。它把组成微型计算机的各功能部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、可编程存储器EPROM、并行及串行输入输出I/O接口电路、定时器/计数器、中断控制器等部件集成在一块半导体芯片上,构成一个完整的微型计算机【1】。在本设计中,我们首先需要搭建一个单片机最小系统来保证单片机能够正常稳定工作。在单片机最小系统中,包含四个部分:STC89C51RC、复位电路、振荡电路、I/O接口。复位电路振荡电路I/O接口STC89C51RC图4.1 单片机最小系统构成图(1) 复位电路通过某种方式,使单片机内各寄存器的值变为初始状态的操作称为复位。STC89C51RC单片机在时钟电路工作以后,在RST/V端持续给出2个机器周期的高电平就可以完成复位操作(一般复位正脉冲宽度大于10ms)。复位电路分为上电复位和外部复位两种方式。上电复位是在单片机接通电源时,自动对单片机复位。外部复位是通过外部手动进行的复位。在这里我们设计的复位电路是上电/外部复位电路,既可以进行上电自动复位,也可以外部手动复位。图4.2 复位电路(2) 振荡电路单片机的定时控制功能是由片内的时钟电路和定时电路来完成的,而片内的时钟产生有两种方式:内部时钟方式和外部时钟方式,也就是内部振荡器方式和外部振荡器方式。采用内部时钟方式时,片内的高增益反相放大器通过XTAL1、XTAL2外接作为反馈元件的片外晶体振荡器(呈感性)与电容组成的并联谐振回路构成一个自激振荡器,向内部时钟电路提供振荡时钟。振荡器的频率主要取决于晶体的振荡频率,一般晶体可在1.212MHz之间任选,电容可在530pF之间选择,电容的大小对振荡频率有微小的影响,可起频率微调作用。采用外部时钟方式时,外部振荡信号通过XTAL2端直接接至内部时钟电路,这时内部反相放大器的输入端XTAL1端应接地。通常外接振荡信号为低于12MHz的方波信号。在这里,我们采用内部时钟方式设计振荡电路,外部晶体振荡器(晶振)选用12MHz,电容选用30pF。图4.3 振荡电路(3) 单片机和I/O接口我们采用了由宏晶公司设计的STC89C51RC型单片机。它是一款基于8051内核的,采用了CMOS生产工艺,具有低功耗特点的高性能8位单片机。它具有4个8位并行输入输出I/O接口:P0、P1、P2、P3(共32线),用于输入或输出数据。此外,它还具有1个串行I/O接口、2个16位定时器/计数器、5级中断系统等【2】。本设计中,使用到的单片机资源有一个16位定时器/计数器、一个8位并行输入输出I/O口。对于定时器/计数器来说,不管是独立的定时器芯片还是单片机内部的定时器,大都有以下特点:a) 定时器/计数器有多种工作方式,可以是计数方式也可以是定时方式。b) 定时器/计数器的计数值是可变的,当然对技术的最大值有一定限制,这取决于级数器的位数。计数的最大值也就限制了定时的最大值。c) 可以按照规定的定时或计数值,在定时时间到或者计数终止时,发出中断申请,以便实现定时控制。 STC89C51RC单片机的定时器是可编程定时器,其工作方式、启动、停止、溢出标志等都是可编程控制的,只需通过设置寄存器TMOD、TCON、TH0、TL0、TH1和TL1就可实现。当设置了定时器的工作方式并启动定时器工作后,定时器就以设定的工作方式独立工作,不再占用CPU,当计数器记满溢出时自动向CPU中断系统申请中断,中断的执行将占用CPU资源。Tx THxTFxTLxTRxINTx定时计数 加1计数器图4.4 定时器/计数器结构图4.2.2 激光发射模块半导体激光发射器是使用半导体材料作为工作物质的激光器,由于物质结构上的差异,不同种类工作物质产生激光的具体过程比较特殊。半导体激光发射器的工作原理是激励方式,利用半导体物质在能带间跃迁发光,用半导体晶体的解理面形成两个平行反射镜面作为反射镜,组成谐振腔,使光振荡、反馈,产生光的辐射放大,从而输出激光。本设计采用的激光发射器是工业级25mW小功率外调焦半导体激光发射器,如图3激光发射电路原理图所示,激光发射电路中的调制管J2在上电时发出频率为180KHz,占空比在20%30%的方波信号,使三极管Q2以180KHz的频率导通/截止,从而对激光发射器进行了频率调制,使其发出频率为180KHz的激光束【3】。这是由于我们所采用的激光接收管只能接收180KHz频率激光。 图4.5 激光发射管和调制管图 图4.6 激光发射电路电路原理图4.2.3 激光接收模块激光接收电路的作用是检测激光接收管是否接收到特定频率的激光束,并通过激光接收电路向单片机P2口发送相应高、低电平信号,以此作为控制信号达到控制小型音响发出特定频率音频信号的目的。在激光接收电路中采用了常低态的激光接收管。当激光接收管接收到激光发射电路发出的180KHz的激光束时,激光接收管管脚2将表现为高电平,与之相反,如果没有接收到激光束则表现为低电平。由于在设计中采用点对点的对应方式,即一只激光接收管能且只能接收一只激光发射器发出的激光束,故当人体阻断某只激光发射器发出的激光束时,与之对应的激光接收管将因接收不到激光束而表现出低电平,除此之外的情况均表现为高电平,这就构成了我们所需要的控制信号低电平信号。在图4.7激光接收电路原理图中发光二极管D10的作用是指示该组激光接收电路是否接收到激光束。如果接收到的话,则发光二极管不亮;如果接收不到激光束(有人体阻断激光发射电路发出的激光束),则发光二极管点亮。图4.7激光接收电路原理图4.2.4 音响发声模块我们在本设计中没有采用驱动扬声器的方案,而是直接使用3.5mm标准音频接口外接小型音响的方案。这样一来简化了硬件电路,也增强了音频质量。图4.8 音频驱动及接口电路原理图如图4.8所示,J19表示一个3.5mm标准音频接口。当单片机P36、P37按程序指令发出特定频率的方波信号时,三极管Q9、Q10也将按此频率导通/截止【4】,从而将该方波信号传递到小型音响并在外接5V直流电源VCC作用下驱动小型音响发出声音。 图4.9 3.5mm标准音频接口 图4.10 小型音响第五章 软件设计与实现5.1 软件设计方案继上一章对系统硬件设计的介绍之后,我们将在本章就系统的软件设计部分进行介绍。音符是如何产生的呢?人耳能听到的声音频率为20Hz20KHz,竖琴音符频率当然也在这个范围内。不同的音符,有着自己特定的频率,通过51单片机自带的16位定时器就可以产生不同频率的音频。例如竖琴的标准音la的频率为440Hz,只要通过单片机产生440Hz的方波信号,再经过音响发声模块就可以产生标准音la了,其他音符也是这样产生的。在程序设计上,我们通过51单片机自带的16定时器,以定时器中断的形式来产生具有不同频率的方波信号。整个程序共包含1个主函数、1个初始化函数、1个定时器中断函数。在主函数中,我们通过if语句【4】来检测单片机P2端口值,即检测P2的哪一位出现低电平触发。初始化函数init()主要内容是初始化定时器0和开中断。定时器中断函数则负责实现P36、P37对不同频率方波的输出。如表5.1所示,我们列出了程序中所实现的各音符所对应的频率和简谱码。表5.1 音阶对照表音符频率/Hz简谱码中 1 do52364580中 2 re58764684中 3 mi65964777中 4 fa69864820中 5 so78464898中 6 la88064968中 7 si98865030高 1 do104665058如图5.1所示,我们的软件设计可以分为硬件资源配置、端口信号检测、数据处理三个子部分。在整个程序执行的流程中,首先对单片机的硬件资源进行配置,然后检测单片机相应端口信号是否发生变化,当单片机端口信号发生变化时则根据端口的信号表现进行相应的数据处理操作,待数据处理操作结束后返回到端口信号检测,再次等待端口信号发生变化。硬件资源配置端口信号检测数据处理图5.1 程序结构图5.2 各模块程序设计与实现上一节中我们介绍了软件设计的整体方案,在本节中我们将依次按照硬件资源配置、端口信号检测、数据处理的顺序分别介绍各个子模块程序具体是如何设计与实现的。5.2.1 硬件资源配置(1) 我们对硬件资源的配置主要是对单片机定时器各个寄存器的参数配置。STC89C51RC型单片机有两个16位定时器/计数器T0和T1,两者均可作为定时器或计数器使用。在前面的第4.2章节我们已经对STC89C51RC型单片机的定时器进行了详细的介绍,在此我们不再赘述,只针对程序设计的需要介绍该如何配置单片机的定时器/计数器T0工作在定时器模式下,以及该如何通过C程序对定时器T0的各个寄存器进行初始化配置。(1) 定时器工作方式寄存器TMOD定时器工作方式寄存器TMOD用于选择定时器的工作方式,它的高4位控制定时器T1,低4位控制定时器T0。TMOD中各位的定义如下:表5.1 TMOD寄存器各位定义其中:C/:T/C功能选择位,当C/=1时为计数方式;当C/=0时为定时方式。M1M0:T/C工作方式定义位,其具体定义方式如下表5.1所示。M1M0工作方式方式说明00013位定时器/计数器01116位定时器/计数器102可自动重装入的8位定时器/计数器113T0分为2个8位定时器,T1无此方式表5.2 定时器/计数器工作方式GATE:门控制位,用于控制定时器的启动是否受外部中断源信号的影响。GATE=0时,与外部中断无关,由TCON寄存器中的TRx位控制启动。GATE=1时,由控制位TRx和引脚共同控制启动,只有在没有外部中断请求信号的情况下(即外部中断引脚=1时),才允许定时器启动。TMOD寄存器在复位时被清零。(2) 定时器控制寄存器TCONTCON控制寄存器各位的定义如下:表5.3 TCON寄存器各位定义其中:TF0/TF1:为T0/T1定时器溢出中断标志位。当T0/T1计数溢出时,由硬件置位,并在允许中断的情况下,发出中断请求信号。当CPU响应中断转向中断服务程序时,由硬件自动将该位清零。TR0/TR1:为T0/T1运行控制位。当TR0/TR1=1时启动T0/T1;TR0/TR1=0时关闭T0/T1。该位由软件进行设置。TCON的低4位与外部中断有关,TCON寄存器在复位时也被清零。由于STC89C51RC单片机的定时器/计数器是可编程的,因此在使用之前需要进行初始化设置。在编程时主要注意两点:第一要能正确写入控制字;第二能进行计数初值的计算。一般情况下,包括以下几个步骤:(1) 确定工作方式,即对TMOD寄存器进行赋值。(2) 计算计数初值,并写入寄存器TH0、TL0或TH1、TL1中。(3) 根据需要,置位ETx允许T/C中断。(4) 置位EA使CPU开中断(需要时)。(5) 置位TRx启动计数器。计数初值的计算方法如下:由于定时器/计数器是以加1的方式计数,因此同常用的减1计数器的算法不同。在定时方式下:假定时间常数为T,定时时间为T,而T= TT,则时间常数为: T= (5-1)其中T为机器周期,即12/晶振频率。应装入定时器/计数器的初值为:X=2- T (n为计数器的位数) (5-2)在计数方式下:假定计数值为N,则应装入的计数初值为: X=2-N (n为计数器的位数) (5-3)综合上述分析,我们编写定时器T0初始化程序如下:/*初始化函数*/void init() TMOD=0x01; /定时器0 工作在方式1EA=1; /开总中断ET0=1; /开定时器0中断amplifier_L=1; /关音响amplifier_R=1; 可以看到我们在这里并没有对定时器T0装入初始值,也没有在初始化定时器T0时就允许定时器工作,这是因为我们要求定时器T0在需要的时候才开始工作,而且要求定时器T0采用查表的方式在不同需要的情况下装入不同的初始值。5.2.2 端口信号检测这里所谓的端口信号检测就是判断单片机8位并行输入输出I/O口P2的端口值是多少。在这里我们通过在主函数中使用if语句来判断P2端口值是否等于我们设定的特定值,然后根据判断结果对变量music_note赋值。我们设定了8个特定值,当单片机P2端口值表现为一个特定值时,就说明此时单片机P2端口的某一位电平为低电平,其他7位则均为高电平。也就是说我们端口信号检测程序的实质就是找出某一时刻单片机P2端口中有且仅有哪一位为低电平。5.2.3 数据处理数据处理是在端口信号检测结束之后进行的,也就是根据端口信号检测的结果(变量music_note的值)执行相应的数据处理操作。我们这里数据处理的内容主要是根据端口信号检测的结果(变量music_note的值),计算并装入单片机定时器T0的初始值。其具体实现如下:temp_TH0=music_tabmusic_note/256; /为T0高8位预装入初始值temp_TL0=music_tabmusic_note%256; /为T0低8位预装入初始值可以看到,我们在这里并没有直接将运算得到的初始值装入定时器,而是暂时装入到一个临时变量temp_TH0和temp_TL0,这是由我们整体程序设计所决定的。在这里我们也有一个查表的操作,通过变量music_note的值查找数组music_tab8的对应元素,并将其分离后分别装入临时变量temp_TH0和temp_TL0,供定时器T0做初始值使用。5.3 软件开发工具介绍我们是基于美国Keil Software公司开发设计的集成开发环境uVision3进行软件设计的。uVision3集成开发环境包括C编译器、宏汇编器、连接器、库管理器和仿真调试器,其内部构成框架如图5.4所示。图5.2 uVision3内部构成框架第六章 软件仿真调试我们在完成硬件系统设计和软件系统设计之后,需要在具体实施制作之前进行相关的软件仿真调试,以便测试硬件系统、软件系统的相关设计是否合理、可行,以保证最低风险的达到实物系统能够正常稳定运行的目的。接下来我们将从仿真软件介绍、原理图布图、仿真电路与程序联调三个方面对软件仿真调试的整个过程进行介绍。6.1 仿真软件介绍我们整个仿真过程是基于英国Labcenter Electronics公司开发设计的EDA工具软件Protues 7进行的。Protues是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真、一键切换到PCB设计,真正实现了从概念到产品的完整设计。Protues是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30、DSPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种集成开发环境和编译器。当然,Protues软件的仿真精度有限,而且也不是所有的器件都有相应的仿真模型。6.1.1 Protues的功能特点Proteus软件具有其它EDA工具软件的功能。这些功能是:(1) 原理图布局(2) PCB自动或人工布线(3) SPICE电路仿真6.1.2 Protues各功能模块特点(1) 智能原理图设计功能 丰富的器件库:超过27000种元器件,可方便地创建新元件; 智能的器件搜索:通过模糊搜索可以快速定位所需要的器件; 智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间; 支持总线结构:使用总线器件和总线布线使电路设计简明清晰; 可输出高质量图纸:通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供WORD、POWERPOINT等多种文档使用;(2) 完善的电路仿真功能 ProSPICE混合仿真:基于工业标准SPICE3F5,实现数字/模拟电路的混合仿真; 超过27000个仿真器件:可以通过内部原型或使用厂家的SPICE文件自行设计仿真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件; 多样的激励源:包括直流、正弦、脉冲、分段线性脉冲、音频(使用wav文件)、指数信号、单频FM、数字时钟和码流,还支持文件形式的信号输入; 丰富的虚拟仪器:13种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计数器、逻辑探头、虚拟终端、SPI调试器、I2C调试器等; 生动的仿真显示:用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动; 高级图形仿真功能(ASF):基于图标的分析可以精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等,还可以进行一致性分析;(3) 单片机协同仿真功能 支持主流的CPU类型:如ARM7、8051/52、AVR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器; 支持通用外设模型:如字符LCD模块、图形LCD模块、LED点阵、LED七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还可以使仿真电路通过PC机串口和外部电路实现双向异步串行通信; 实时仿真:支持UART/USART/EUSARTs仿真、中断仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿真; 编译及调试:支持单片机汇编语言的编辑/编译/源码级仿真,内带8051、AVR、PIC的汇编编译器,也可以与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语言的源码级仿真和调试;(4) PCB设计平台 原理图到PCB的快速通道: 原理图设计完成后,一键便可进入ARES的PCB设计环境,实现从概念到产品的完整设计; 先进的自动布局/布线功能:支持器件的自动/人工布局;支持无网格自动布线或人工布线;支持引脚交换/门交换功能使PCB设计更为合理; 完整的PCB设计功能:最多可设计16个铜箔层,2个丝印层,4个机械层(含板边),灵活的布线策略供用户设置,自动设计规则检查,3D 可视化预览; 多种输出格式的支持:可以输出多种格式文件,包括Gerber文件的导入或导出,便利与其它PCB设计工具的互转(如protel)和PCB板的设计和加工;6.1.3 Protues仿真的意义在Protues绘制好原理图后,调入已编译好的目标代码文件:.HEX文件,可以在Protues的原理图中看到模拟的实物的运行状态和过程。Protues不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。Protues的元器件、连接线路等和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。课程设计、毕业设计是学生走向就业的重要实践环节。由于Protues提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台。随着科技的发展,“计算机仿真技术”已成为许多设计部门重要的前
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 压缩资料 > 基础医学


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

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


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