1、次声波发生器的制作目录绪论错误!未定义书签。第一章次声发生器的概述1第一节次声1一、次声的概念1二、次声的危害1三、次声的应用2第二节次声发生器2一、次声发生器概念2二、次声发生器的研究动态3第三节本章小结4第二章系统设计方案5第一节电子式次声发生器的设计5一、此方案的总体设计5二、MATLAB中正弦信号的产生错误!未定义书签。三、WAV文件的生成及播放错误!未定义书签。四、次声信号的转换错误!未定义书签。五、次声的产生错误!未定义书签。第二节基于STC89C52单片机次声发生器总体设计6一、此方案的总体设计6二、电路的设计7第三节两种方案的对比9第四节本章小结9
2、第三章单片机的概述10第一节单片机的发展历史及趋势10第二节STC89C52单片机结构简介12一、STC89C52的基本特性12二、STC89C52单片机的外部引脚介绍12第三节本章小结15第四章系统硬件的设计16第一节总体框图16第二节单片机最小系统设计17第三节8位DA转换器DAC083217一、DAC0832的引脚图及内部结构18二、DAC0832的工作方式19第四节系统显示功能设计20第五节系统按键功能设计23第六节本章小结24第五章系统软件设计25第一节系统软件总体设计25第二节子系统软件设计25一、外部中断025二、外部中断126三、定时器027
3、第三节本章小结28第六章调试的过程和出现的问题分析29结论32致谢33参考文献34附录35一、英文原文:35二、英文翻译:41三、源程序:43-33-次声发生器的概述第一节次声次声的概念次声是频率低于可听声频率范围的声波,它的频率范围大致为0.00001Hz20Hz。人的耳朵听不见次声。次声在大气中传播时,由于其频率很低,所以大气对次声波的吸收系数很小(吸收系数与频率的二次方成正比),因此能传播很远的距离。次声广泛存在于自然界和工业生产、交通运输、日常生活等环境中。自然界的次声主要由风的波动、空气湍流、火山喷发、海浪拍击、地震、风暴等引起。核爆炸、其他方面的大爆炸、火箭的发
4、射等也产生人为的次声。高空风、地面风、温度、湿度、环境噪声对传播特性会有影响。通过研究自然现象产生的次声波的特性和产生机制,可以更深入地认识这些现象的特性和规律。例如人们利用测定极光产生次声波的特性来研究极光活动的规律等。利用接收到的被测声源所辐射出的次声波,探测它的位置、大小和其他特性,例如通过接收核爆炸、火箭发射火炮或台风所产生的次声波去探测这些次声源的有关参量。许多灾害性现象如火山喷发、龙卷风和雷暴等在发生前可能会辐射出次声波,因此有可能利用这些前兆现象预测灾害事件。次声的危害次声波具有较大的破坏性。高空大气湍流产生的次声波能折断万吨巨轮上的桅杆,能将飞机撕得四分五裂;地震或核爆炸所激发
5、的次声波能将高大的建筑物摧毁;海啸带来的次声波可将岸上的房屋毁坏。次声的频率与人体器官的固有频率相近(人体各器官的固有频率为317Hz,头部的固有频率为812Hz,腹部内脏的固有频率为46Hz),当次声波作用于人体时,人体器官容易发生共振,引起人体功能失调或损坏,血压升高,全身不适;头脑的平衡功能亦会遭到破坏,人因此会产生旋转感、恶心难受。许多住在高层建筑上的人在有暴风时会感到头晕恶心,这就是次声波作怪的缘故。如果次声波的功率很强,人体受其影响后,便会呕吐不止、呼吸困难、肌肉痉挛、神经错乱、失去知觉,甚至内脏血管破裂而丧命。次声的应用次声波具有很大的危害,但同时人们也可以对次声特有的性质加以利
6、用。次声的应用主要体现在以下几个方面4:1、研究自然次声的特性和产生机制,预测自然灾害性事件。例如台风和海浪摩擦产生的次声波,由于它的传播速度远快于台风移动速度,因此,人们利用一种叫“水母耳”的仪器,监测风暴发出的次声波,即可在风暴到来之前发出警报。利用类似方法,也可预报火山爆发、雷暴等自然灾害。2、通过测定自然或人工产生的次声在大气中传播的特性,可探测某些大规模气象过程的性质和规律。如沙尘暴、龙卷风及大气中电磁波的扰动等。3、目前许多研究者进行的声波除灰(除渣),由于其频率较低,有的频率在次声频段内,称之为次声除灰。4、次声在军事上的应用,利用次声的强穿透性制造出能穿透坦克、装甲车
7、的武器,次声武器一般只伤害人员,不会造成环境污染。5、通过测定人和其他生物的某些器官发出的微弱次声的特性,可以了解人体或其他生物相应器官的活动情况。例如人们研制出的“次声波诊疗仪”可以检查人体器官工作是否正常。6、利用次声的物理特性,让次声作用于人体,以达到治疗的作用。已有研究者报道,由于次声的频率低,传播中几乎无衰减,因此能在人体内很好的传播,穿透病态组织,使病态组织内闭塞的血管重新开放,并推动其血液流动,改善病态组织内的血液循环,为氧气、吞噬细胞、免疫球蛋白等物质向病变组织输送创造了有利条件。第二节次声发生器一、次声发生器概念次声发生器简单的说,就是一种能够发出次声波的装置5。并且为
8、了方便研究,还必须能够方便的调节所产生的次声的频率6。图1.1为一种次声波发器,此次声波发生器,由电动机、压圈、换能腔壳体、喷嘴和门等组成。利用气流载波的方法获得了比当前国际上的同类技术更高的声压级和更大功率的声波,不仅极便于现用锅炉的改装,而且可作为新型锅炉的重要组成。可用于清除锅炉燃烧室和烟道内的各种热交换器表面上的积灰和结渣。图1.1次声波发生器本文所研究的次声发生器,就是一种利用单片机编程可以调节频率的次声的装置。因为发出的声波的频率必须在次声范围内,由于次声的频率范围比较窄,所以就要求次声发生器所产生的声波频率精度要高。二、次声发生器的研究动态关于国内外对次声发生装置的研究,可以按
10、生次声其构造和工作原理很像乐器中的笛子,当管子中空气柱的振动与管子本身固有频率相同时,就可产生较强的次声波。在管子一端装上一个活塞,用电动机驱动或用气流激励,当振动频率的1/4波长与管子长度相等时,可获得最强的次声波。但要产生次声波,管子必须足够长。4、扬声器式产生次声其工作原理与扬声器相似。采用特殊的振动膜片,膜片振动可产生一定频率的次声波。但要产生一定强度的次声波,除要求较高的振幅外,还必须使振动膜面积足够大,其周长大致要与次声波波长相当。5、频率差拍式产生次声是采用两个不同频率的声波发生器同时工作,利用它们频率的相差来获得需要的低频次声波。其中有一种方法是利用压电晶体产生两束频率,两者作
11、用产生高频和低频声波,高频声波是两者频率之和,低频声波是两者频率之差,高频声波在空气中很快衰减,低频声波(次声波)则直达目标。这种方式能量转换率高,并可制成小型武器。第三节本章小结本章主要介绍了次声的概念、危害和对次声的应用,然后介绍了目前国内外次声发声装置的发展状况,为我们怎样学习次声和在后面对其进行研究提供了强有力的依据。系统设计方案两种方案之前要加一段说明前一章我们介绍了设计次声发生器有很多种方案,但是并不是所有的实验室都能实现,要在实验室能够设计出来,我们提出两种方案,第一种是电子式次声发生器,这种方案是先通过MATLAB编程输出一个正弦信号,再将这个正弦信号转变成声卡能识别的一个
12、WAVE信号,通过声卡的D/A转换把这个WAVE信号变成模拟信号,然后接到音响播放出来。第二种方案是基于STC89C52单片机的次声发生器,这种方案中先设计各个硬件模块,通过单片机编程输出一个数字信号,然后通过一个D/A转换器,将数字信号转换成模拟信号,最后接到示波器,在示波器上对波形进行观察调试。下面我们对这两种方案进行讲解。第一节电子式次声发生器的设计该方案要浓缩,不要分这么多块,主体在后者方案,记住!此方案的总体设计过去的次声发生器大都由纯硬件电路组成8,自成一个完整的系统,主要是为了适应多种复杂的实际环境9。但缺点也在于其整体性,出现问题后不容易找到出错的地方,还不方便携带;此方案所
13、要设计的次声发生器采用的次声发生方式和前面所提到的扬声器式相似,主要利用PC机上MATLAB软件强大的音频处理函数和数据处理功能,方便地产生低频率的正弦波数据数组10,同时通过音频处理函数将数据数组传递给声音设备11,并以特定的采样频率和传输比特位由声卡输出1215。再利用超重低音音箱产生次声波。由于PC机的普及,只需携带MATLAB程序就可以实现次声波的产生。总体框图如图2.1:图2.1电子式次声发生器总体设计5号字体,第一章最好插个图,不然直接图2.1,感觉不连贯。次生信号的产生因为要实现在可编辑框中输入信号频率,窗口就能输出相应的波形,所以对于可编辑框的回调函数就应该输入产生正弦信号
15、号电平较弱,一般只有几百毫伏,还不能推动喇叭正常工作。而推动喇叭正常工作的电压一般需要几伏左右的电压,这时就需要将声卡输出的小信号通过放大器(俗称功放)加以放大,放大后的音频信号就可以推动喇叭将音频电信号转换为声波了。这一过程,可以通过超重低音音箱来实现。第二节基于STC89C52单片机次声发生器的设计一、此方案的总体设计此方案以STC89C52单片机为核心,构成了一个基于STC89C52单片机次声信号发生器。其主要模块有单片机控制模块、频率输出模块、键盘控制模块及LCD显示模块,其中频率生成模块由单片机控制DAC0832生成,键盘控制模块采用5个按键来选择波形类型及调节频率、幅值,显示模块
16、则采用LCD1602来显示波形类型、频率及幅值,输出的波形由示波器进行检查。其原理图如图2.2所示框图都在word里画,不要格子。图2.2基于单片机的次声信号发生器总体设计二、电路的设计1、此方案是以单片机为核心,首先设计出单片机的最小系统,如图2.3所示插图不是嵌入形式时,要居中,且大小适中,清晰可见。图2.3单片机的最小系统电路图2、为了要显示出频率及占空比的大小情况,所以设计出单片机与液晶显示之间的电路如图2.4所示图2.4LCD与单片机的连接3、要将单片机输出的数字信号转换成为我们能观察的模拟信号,这里选择使用DAC0832进行D/A转换,设计出0832与单片机之间的电路如图2.
17、5所示图2.50832与放大器的连接4、将全部的电路连接好之后,就是对硬件进行调试,对照电路图看焊接过程有没有出问题。5、硬件焊接过程没有问题之后,就开始程序的编写。6、程序编写完成后,将硬件连接到示波器进行观察调试。7、当示波器显示出需要的波形及频率时,软件调试成功。第三节两种方案的对比第一种方案采用普通PC机上的板载声卡和MATLAB软件作为开发平台,实现了正弦次声波信号的发生。通过载板声卡进行D/A转换,将模拟音频信号功率放大到能驱动低音炮喇叭,最后次声波通过超重低音音箱的纸盆振动发出。此方案中的难点有以下两个方面、一般低音炮的低频频响都在30HZ以上,说做到30HZ一下价位都要上
18、万元。但又看到说声卡、音箱都有一定的设计余度,一般声卡都可以保证低到1HZ,并且音箱也允许接收不到这些信号并播放出来。、低音炮的频率响应和低音炮的摆位以及所处空间有直接的原因,接受次声信号可能会出现问题。第二种方案采用STC89C52单片机,MCS-51就是将具有存储程序、处理数据以及与外设交换信息的功能电路集成在一块芯片中,并符合一定系统结构而构成的单片机。单片机具有体积小、重量轻、耗能省、价格低、可靠性高和通用灵活等优点,使用MCS-51可以很简单地控制次声波信号的各种幅频特性,硬件电路设计简单,此方案设计的次声信号发生器体积小,价格便宜,耗电少,便于携带,由STC89C52单片机所产生的
19、次声波频率精度较高,值得在实验室中进一步推广和扩充。两种方案对比之下我们选择第二种方案第二种叙述更详细点,突出优点。第四节本章小结本章主要介绍了这次设计选择的两种方案,在对两种方案进行对比之后,发现使用单片机这种方案的可行性更高一点,因为选择这种方案进行实验。单片机的选取第一节单片机的发展历史及趋势单片机出现的历史并不长,但发展十分迅猛。它的产生与发展和微处理器的产生和发展大体相同,自1971年Intel公司首先推出4位微处理器以来,它的发展到目前为止大致可分为4个阶段:单片机发展的初级阶段(20世纪70年代初70年代中期)。低性能单片机阶段(20世纪70年代中期80年代初期)。高性能单
20、片机阶段(20世纪80年代初期90年代初期)。8位单片机巩固发展阶段及16位、32位单片机不断推出阶段(20世纪90年代至今)。此阶段单片机在集成度、功能、速度、可靠性、应用领域等方面向更高水平发展。如:CPU的位数有8位、16位、32位,而结构上采用双CPU结构或内部流水线结构,以提高处理能力和运算速度;时钟频率高达20MHz甚至更高,使指令执行速度相对加快;提高新型的串口总线结构,为系统的扩展和配置打下了良好的基础;增加新的特殊功能部件,如监视定时器WDT、DMA传输、PWM输出、可编程计数阵列PCA、调制解调器、通信控制器、浮点运算单元等;半导体制造工艺的不断进步,使芯片向高集成度、低功
21、耗方向发展。此阶段单片机内集成的功能越来越强大,并朝着片上系统方向发展,单片机在大量数据的实时处理、高级通信系统、数字信号处理、复杂工业过程控制、高级机器人以及局域网等各方面得到大量应用。随着技术的进步,早期的8位中、低档单片机逐渐被淘汰,但8位单片机并没有消失,尤其是51系列单片机不仅没有消失,反而还呈现快速发展的趋势。目前,单片机正朝着高性能和多品种方向发展,将进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方向发展。第二节单片机的选取现在市面上最多的有两种类型的单片机,STC和AT。他们两种都是51系列单片机,都支持ISP在线编程功能。但是两种单片机内
23、钟操作,可选6个时钟(通过软件或并行编程器)。2.存储器寻址范围:64K字节ROM和64K字节RAM。3.电源控制模式:时钟可停止和恢复、空闲模式、掉电模式。4.两个工作频率范围:6时钟模式时为0到20MHz,12时钟模式时为0到33MHz。5.封装形式:LQFP,PLCC或DIP封装。6.其他特性:双数据指针、3个加密位、4个中断优先级、6个中断源、4个8位I/O口、全双工增强型UART、帧数据错误检测、自动地址识别、3个16位定时/计数器T0T1标准80C51和增加的T2捕获和比较、可编程时钟输出、异步端口复位、掉电模式可通过外部中断唤醒16。ST
24、C89C52单片机的外部引脚介绍STC89C52单片机的外部引脚的排列及名称如图3.1所示:图3.1STC89C52单片机的外部引脚单片机的各管脚功能如表3-1名称管脚号类型名称和功能表格需要按图一样标记,如表1-1,记得“表尾”。另外图标的类别字号加粗。Vss20I地Vcc40I电源:提供掉电空闲正常工作电压P0.0-0.739-32I/OP0口:P0口是开漏双向口,可以写为1使其状态为悬浮用作高阻输入。P0也可以在访问外部程序存储器时作地址的低字节,在访问外部数据存储器时作数据总线,此时通过内部强上拉输出1P1.0-1.71-8I/OP1口:P1口是带内部上拉的双向I/O
25、口,向P1口写入1时,P1口被内部上拉为高电平,可用作输入口。当作为输入脚时,被外部拉低的P1口会因为内部上拉而输出电流(见DC电气特性)。P1口第2功能:T2(P1.0):定时/计数器2的外部计数输入/时钟输出(见可编程输出)T2EX(P1.1):定时/计数器2重装载/捕捉/方向控制P2.0-2.721-28I/OP2口:P2口是带内部上拉的双向I/O口,向P2口写入1时,P2口被内部上拉为高电平,可用作输入口.当作为输入脚时,被外部拉低的P2口会因为内部上拉而输出电流(见DC电气特性).在访问外部程序存储器和外部数据时,分别作为地址高位字节和16
26、位地址(MOVXDPTR),此时通过内部强上拉传送1.当使用8位寻址方式(MOVRi)访问外部数据存储器时,P2口发送P2特殊功能寄存器的内容P3.0-3.710-17I/OP3口:P3口是带内部上拉的双向I/O口。向P3口写入1时,P3口被内部上拉为高电平,可用作输入口。当作为输入脚时被外部拉低的P3口会因为内部上拉而输出电流(见DC电气特性),P3口还具有以下特殊功能:RxD(P3.0):串行输入口TxD(P3.1):串行输出口INT0(P3.2):外部中断0INT1(P3.3):外部中断T0(P3.4):定时器0外部输入T1(P3.5):定时器1外部输入W
27、R(P3.6):外部数据存储器写信号RD(P3.7):外部数据存储器读信号RST9I复位:当晶振在运行中只要复位管脚出现2个机器周期高电平即可复位。内部有扩散电阻连接到Vss,仅需要外接一个电容到Vcc即可实现上电复位ALE30O地址锁存使能:在访问外部存储器时,输出脉冲锁存地址的低字节,在正常情况下,ALE输出信号恒定为1/6振荡频率。并可用作外部时钟或定时,注意每次访问外部数据时一个ALE脉冲将被忽略。ALE可以通过置位SFR的auxlilary.0禁止,置位后ALE只能在执行MOVX指令时被激活PSEN29O程序存储使能:当执行外部程序存储器代码时,PSEN每
28、个机器周期被激活两次.在访问外部数据存储器时PSEN无效,访问内部程序存储器时PSEN无效EA/Vpp31I外部寻址使能/编程电压:在访问整个外部程序存储器时EA必须外部置低,如果EA为高时将执行内部程序,除非程序计数器包含大于片内FLASH的地址.该引脚在对FLASH编程时5V/12V编程电压(Vpp)如果保密位1已编程EA在复位时由内部锁存XTAL119I晶体1:反相振荡放大器输入和内部时钟发生电路输入XTAL218O晶体2:反相振荡放大器输出第四节本章小结本章第一节主要介绍了单片机的发展历史及未来趋势,让我们对单片机有了一个初步的了解。第二节介绍了市面上有哪几种单
29、片机,并对起进行选择,第三节比较详细地描述了STC89C52单片机的结构特性及引脚功能,为电路的设计打下坚实的基础。系统硬件设计第一节系统总体框图本设计总体框图如图4.1所示:图4.1系统框图系统总体款图主要包括以下几个部分:单片机部分:本设计选用STC89C52单片机作为控制核心。DA转换部分:本设计采用1块DAC0832芯片基准电压部分:D/A的5V基准电压有现成的电源。显示部分:本设计采用LCD1602来显示波形的类型、占空比的大小、频率的大小。键盘部分:本设计采用5个独立按键来控制波形类型的选择、占空比大小的改变及频率大小的改变。第二节单片机最小系统设计单片机的最小系统如图4.
32、它的锁存信号也称为通道控制信号/XFER17。图4.3中,当ILE为高电平,片选信号/CS和写信号/WR1为低电平时,输入寄存器控制信号为1,这种情况下,输入寄存器的输出随输入而变化。此后,当/WR1由低电平变高时,控制信号成为低电平,此时,数据被锁存到输入寄存器中,这样输入寄存器的输出端不再随外部数据DB的变化而变化18。对第二级锁存来说,传送控制信号/XFER和写信号/WR2同时为低电平时,二级锁存控制信号为高电平,8位的DAC寄存器的输出随输入而变化,此后,当/WR2由低电平变高时,控制信号变为低电平,于是将输入寄存器的信息锁存到DAC寄存器中。D/A0832的引脚图如
33、图4.3所示图4.3DAC0832的引脚图图4.3中其余各引脚的功能定义如下:1、DI7DI0:8位的数据输入端,DI7为最高位。2、IOUT1:模拟电流输出端1,当DAC寄存器中数据全为1时,输出电流最大,当DAC寄存器中数据全为0时,输出电流为0。3、IOUT2:模拟电流输出端2,IOUT2与IOUT1的和为一个常数,即IOUT1IOUT2常数。4、RFB:反馈电阻引出端,DAC0832内部已经有反馈电阻,所以RFB端可以直接接到外部运算放大器的输出端,这样相当于将一个反馈电阻接在运算放大器的输出端和输入端之间。5、VREF:参考电压输入端,此端可接一个正电压,也可接一个
34、负电压,它决定0至255的数字量转化出来的模拟量电压值的幅度,VREF范围为(+10-10)V。VREF端与D/A内部T形电阻网络相连。6、Vcc:芯片供电电压,范围为(+515)V。7、AGND:模拟量地,即模拟电路接地端。8、DGND:数字量地DAC0832内部结构图如图4.4所示图4.4DAC0832内部结构图DAC0832的工作方式DAC0832可处于三种不同的工作方式:(1)直通方式:当ILE接高电平,CS、WR1、WR2和XFER都接数字地时,DAC处于直通方式,8位数字量一旦到达DI7DI0输入端,就立即加到8位D/A转换器,被转换成模拟量。例如在构成波形发生器的场
35、合,就要用到这种方式,即把要产生基本波形的数据存在ROM中,连续取出送到DAC去转换成电压信号。(2)单缓冲方式:只要把两个寄存器中的任何一个接成直通方式,而用另一个锁存器数据,DAC就可处于单缓冲工作方式。一般的做法是将WR2和XFER都接地,使DAC寄存器处于直通方式,另外把ILE接高电平,CS接端口地址译码信号,WR1接CPU的WR信号,这样就可以通过一条MOVX指令,选中该端口,使CS和WR1有效,启动D/A转换。(3)双缓冲方式:主要在以下两种情况下需要用双缓冲方式的D/A转换。需在程序的控制下,先把转换的数据输入输入缓存器,然后在某个时刻再启动D/A转换。这样,可先选中CS端口
36、,把数据写入输入寄存器;再选中XFER端口,把输入寄存器内容写入DAC寄存器,实现D/A转换。在需要同步进行D/A转换的多路DAC系统中,采用双缓冲方式,可以在不同的时刻把要转换的数据打入各DAC的输入寄存器,然后由一个转换命令同时启动多个DAC转换。先用3条输出指令选择3个端口,分别将数据写入各DAC的输入寄存器,当数据准备就绪后,再执行一次写操作,使XFER变低同时选通3个D/A的DAC寄存器,实现同步转换19。DAC0832与放大电路的电路图如图4.5所示图4.5DAC0832与放大电路的电路图第四节系统显示功能设计本设计采用LCD1602来显示波形的类型、幅值及频率。LCD160
37、2液晶显示模块,它可以显示两行,每行16个字符,采用单+5V电源供电,外围电路配置简单。LCD1602管脚如图4.6所示:图4.6LCD1602芯片管脚图LCD接口管脚功能表4-1引脚号符号状态功能1Vss电源地2Vdd电源+5V3V0对比度控制端4RS输入寄存器选择5R/W输入读、写操作6E输入使能信号7DB0三态数据总线(LSB)8DB三态数据总线9DB三态数据总线10DB三态数据总线11DB三态数据总线12DB三态数据总线13DB三态数据总线14DB三态数据总线(MSB)15LEDA输入背光+5V16LEDK输入背地光LCD1602主要管脚介绍:V0:液晶显示器对比度调整端,接地电源时
38、对比度最高,对比度过高时会产生鬼影,使用时可以通过一个10K的电位器调整对比度。RS:寄存器选择,高电平时选择数据寄存器;低电平时选择指令寄存器。R/W:读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址;当RS为高电平R/W为高电平R/W为低电平时可以写入数据。E:使能端,当E端由高电平跳变成低电平时,液晶模块执行指令。LCD1602控制指令:LCD1602有11个控制指令,如下表4-2所示:指令功能清屏清DDRAM和AC值归位AC=0,光标、画面回HOME位输入方式设置设置光标、画面移动方式显示开关控制设置显示、光标及闪烁开、关光标、
39、画面位移光标、画面移动,不影响DDRAM功能设置工作方式设置()CGRAM地址设置设置CGRAM地址。A5A0=03FHDDRAM地址设置DDRAM地址设置读BF及AC值读忙标志BF值呵地址计时器AC值写数据数据写入DDRAM或CGRAM内读数据从DDRRAM或CGRAM清屏RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000000001显示开关控制RSR/WDB7DB6DB5DB4DB3DB2DB1DB00000001DCB功能:设置显示、光标及闪烁开、关;其中:D表示显示开关:D=1为开,D=0为关;C表示光标开关:C=1为开,C=0为关;B表示闪烁开关:B=1为开,
40、B=0为关。光标、画面位移RSR/WDB7DB6DB5DB4DB3DB2DB1DB0000001S/CR/L*功能:光标、画面移动,不影响DDRAM其中:S/C=1:画面平移一个字符位;S/C=0:光标平移一个字符位;R/L=1:右移;R/L=0:左移。功能设置RSR/WDB7DB6DB5DB4DB3DB2DB1DB000001DLNF*功能:工作方式设置(初始化指令)其中:DL=1,8位数据接口;DL=0,四位数据接口;N=1,两行显示;N=0,一行显示;F=1,510点阵字符;F=0,57点阵字符。读写控制时序读写控制时序如下表所示:RSR/WE功能00下降沿写指令代码01高电
41、平读忙标志和AC码10下降沿写数据11高电平读数据LCD1602与单片机连接图如图4.7下:图4.7LCD与单片机的连接第五节系统按键功能设计此次声信号发生器采用5个按键与LCD1602配合使用来调节输出信号的各个参数。5个按键分别赋予的意义为:“升高”键、“占空比降低”键、“频率升高”键、“频率降低”键,“切换波形”键。LCD1602上显示的内容如图4.8所示。图4.8LCD1602显示内容示意图(1)G:M“+”键和“”键调节输出波形类型,改变的是mode的值(方波为0,三角波为1,正弦波为2)。(2)G:F“+”键和“”键调节输出信号频率,改变的是定时器的值。(3)G:
42、A“+”键和“”键调节输出信号幅值,改变的是A的值(0.05.0V,步进为0.1V)说明:按动“功能键”会使G的值在0、1、2之间循环切换。图4.9为第六节本章小结本章是本文的核心内容,其详细地介绍了该系统硬件设计的具体方案,在硬件方面作了比较系统的阐述。包括单片机最小系统的设计、按键的设计、液晶显示模块的设计、D/A转换模块的设计等。系统软件设计系统软件总体设计系统软件总体设计,初始化时输出的是方波,显示方波的幅值和频率。通过按键可以选择调节频率还是调节幅值以及选择输出正弦波和三角波。流程图如图5.1所示:流程图用Word工具画,不要看见格子。另外,流程图内容要有开始,也要有结束,中
43、间需要的话要有反馈(Y/N分别怎样)。图5.1主程序流程图子系统软件设计外部中断0本设计采用外部中断0控制波形类型的选择以及幅值频率的增加,当程序检测到外部中断0时,执行相应的操作。其程序流程图如图5.2所示:图5.2外部中断0程序流程外部中断1本设计采用外部中断1控制波形类型的选择以及幅值频率的减小,当程序检测到外部中断1时,执行相应的操作。其程序流程图如图5.3所示:图5.3外部中断0程序流程定时器0本设计采用定时器0来控制波形频率的改变,通过装初值来改变定时从而改变频率。其流程图如图5.4所示:图5.4定时器0程序流程本章小结本章详细地介绍了该系统的软件上的设计,对第一节是
44、软件上总体的设计,第二节在外部中断和内部中断以及定时器的设计上做了详细的介绍。并画出了详细的流程图,使人看的更加清晰明白。系统功能测试系统软件上的调试仿真为了证明电路图没有错误,我们使用porteus软件对我们设计的电路图进行仿真,仿真时的电路图如图6.1所示图6.1仿真电路图仿真中我们接一个示波器对波形进行观察和调试,产生4种波形,分别是正弦波、方波、锯齿波、三角波,这里取正弦波和方波的波形,其波形如图6.2及6.3所示:图6.2仿真产生的正弦波图6.3仿真产生的方波如图6.2和6.3所示,我们得到了所要的波形,说明本次设计的电路没有错。在进行仿真的时候,产生的波形可能会受到干扰,
46、1.系统受到干扰的主要原因和现象由于单片机控制系统应用系统的工作环境往往是比较恶劣和复杂的,其应用的可靠性、安全性就成为一个非常突出的问题。单片机控制系统应用必须长期稳定、可靠地运行,否则将导致控制误差加大,严重时会使系统失灵,甚至造成巨大的损失。影响单片机控制系统应用的可靠、安全运行的主要因素是来自系统内部和外部的各种电气干扰,以及系统结果设计、元器件选择、安装、制造工艺和外部环境条件等。这些因素对控制系统造成的干扰后果主要表现在下述几个方面。(1)数据采集误差加大。干扰侵入单片机控制系统测量单元模拟信号的输入通道,叠加在有用信号之上,会使数据采集误差加大,特别是当传感器输出弱信号时干
47、扰更加严重。(2)控制状态失灵。微机输出的控制信号常依赖某些条件的状态输入信号和这些信号的逻逻辑处理结果。若这些输入的状态信号受到干扰,引入虚假状态信号,将导致输出控制误差加大,甚至控制失常。(3)数据受干扰发生变化。单片机控制系统中,由于RAM存储器是可以读/写的,故在干扰的侵害下,RAM中的数据有可能被窜改。在单片微机系统中,程序及表格、常数存于程序存储器中,避免了这些数据受到干扰破坏,但对于内RAM、外扩RAM中的数据都有可能受到外界干扰而变化。根据干扰窜入的途径、受干扰数据的性质不同,系统受损坏的情况也不同有的造成数据误差有的使控制失灵,有的改变程序状态,有的改变某些部件(如定时器