基于AD7008信号发生器的设计_第1页
基于AD7008信号发生器的设计_第2页
基于AD7008信号发生器的设计_第3页
基于AD7008信号发生器的设计_第4页
基于AD7008信号发生器的设计_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

摘要对于基于AD7008信号发生器的设计,本文介绍了AD7008芯片的内部结构及工作原理,设计了基于STC12C5A60S2单片机和AD7008芯片信号发生器的软硬件设计方案。本文首先介绍了单片机的选择以及最小系统的电路,使其能用最少的元件组成的单片机可以正常工作的系统,其次,因为在而在本系统中,我们只用键盘来改变输出信号的频率及幅值,按键数量不多,所以按键选择采用的是独立式键盘。并且增加了LCD显示屏,使我们能更为直观、方便的改变频率,最后通过AD7008正弦波发生电路,使其能显示输出信号频率、单周期波形和输出幅度,并且采用SMC1602A液晶显示屏显示输出信号的频率,以此来验证输出的波形是否正确。本次设计频率范围为0999.9KHz,步进为0.1KHz,测试结果的波形频率与LCD显示频上的频率一致,并且波形稳定,可充当一些简易仪器的信号源。关键词:AD7008,STC12C5A60S2,调频,SMC1602AAbstractForthedesignofsignalgeneratorbasedonAD7008,thispaperintroducestheinternalstructureandworkingprincipleofAD7008chip,anddesignthesignalgeneratorbasedonSTC12C5A60S2microcontrollerandAD7008chipshardwareandsoftware.First,thispaperintroducesthecircuitofsinglechipselectionandtheminimumsystem,makesitcanbecomposedwiththeleastelementofsingle-chipsystem.Second,becauseofinthissystem,weusethekeyboardtochangethefrequencyandamplitudeoftheoutputsignal,andthenumberofkeysisnottoomuch,sothekeyselectionisusedinindependenttypekeyboard.AndincreaseLCDdisplayscreen,sothatwecanmoreintuitiveandconvenientchangefrequency,andfinallygeneratesinewavethroughtheAD7008circuit,sothatitcandisplaytheoutputsignalfrequency,singlecyclewaveforms,theoutputamplitude,andadoptsSMC1602Aliquidcrystaldisplayscreentodisplaytheoutputsignalfrequency,inordertoverifythattheoutputwaveformiscorrect.Thedesignofthefrequencyrangeof0999.9KHz,step0.1KHz,wavefrequencyandtheresultsofLCDtestshowedthesamefrequency,andthewaveformisstable,itcanbeusedassignalsourceforsomesimpleinstrument.Keywords:AD7008;STC12C5A60S2;frequencymodulation;SMC1602A目录摘要.1Abstract.2前言.3第一章绪论.41.1国内外研究现状.41.2本课题的目的意义.41.3本课题的主要内容.4第二章系统总体方案设计.62.1系统的基本要求.62.2硬件系统模块设计.62.3软件系统设计.6第三章系统硬件电路设计.73.1单片机的选择.73.2单片机电路.73.3LCD液晶显示模块.83.4AD7008正弦波发生电路模块.8第四章系统软件设计.124.1系统软件总体设计.124.2AD7008初始化.134.3按键扫描.134.4按键响应.144.5LCD液晶显示.154.6AD7008正弦波输出.164.6.1AD7008波形频率设置.174.6.2AD7008波形幅度设置.17第五章调试结果.195.1调试内容.195.2调试结果.195.3调试过程中遇到的问题及解决.22第六章总结与展望.236.1总结.236.2展望.23参考文献致谢附录0前言随着通信、电子、微电子技术的发展,针对各种信号发生器和测试仪的要求也随之越来越多,我国的数字信号发生器也紧跟着世界的步伐,发展也越来越快,并且在通信、影视、雷达、无线电导航等领域得到了广泛的应用。DDS是直接数字式频率合成器的简称,它是一种把数字形式的信号通过D/A转换器转换成模拟量形式的新的频率合成技术,它刚被提出的时候在1971年,但是碍于工业水平,所以只是进行了理论上的一些探讨,并没有在实际中得到应用。而随着科技的发展,我们的工业水平也越来越高,所以当时对于DDS的探讨由理论逐渐转为实际操作,并且还发现了许多DDS技术的另外一些优点,比如:极高的频率分辨率和可调制输出信号。随着技术水平的不断提高,此类的芯片也越来越完善,逐渐的被越来越多的人拿来做科研等项目,由于DDS专用芯片广泛的得到应用,将来此类芯片也会被更多的人完善,使得我们能更为简单的产生与调制信号。AD公司生产的DDS芯片AD7008是应用较为广泛的一种,其时钟频率为2050MHz,能实现频率、幅度和相位精调,为数字式调制,具有调幅、调频和调相的功能,它的时钟频率是20MHz50MHz。本设计中,首先选择单片机STC12C5A60S2,运用单片机的最小系统,组成最小系统电路,然后用STC12C5A60S2单片机控制AD7008芯片,因需要按键调节频率,所以按键消抖函数是软件消抖,再用按键调节频率的情况下用LCD1602显示屏将频率显示出来,调节好之后,最后将波形在示波器上显现出来。本设计在一些信号源要求不高的场合下一般可以满足要求。1第一章绪论1.1国内外研究现状随着数字电子技术1紧跟着时代的步伐,直接数字频率合成器2也随着电子技术的深入研究而得到了迅速的发展,它迅速被广泛的应用在电子领域中,它优越的性能以及特点也迅速的被广泛的接受。它同DSP一样,都是现代数字化的一项关键技术DDS。它因具有高分辨率、高稳定性、低功耗等优点,被广泛的应用在电子领域中。因此,从20世纪80年代以来,各国都在发展和研制自己的DDS技术产品,比较典型的一种芯片便是AD7008芯片3。我国的数字信号发生器也随之发展的较为迅速,但是国内生产的数字频率合成器,与同类型的国外产品,差距还是比较巨大,技术指标也有较大的差距。并且,一些DDS芯片还具有调频、调幅、调相等功能。DDS现已在通讯、无线电导航、雷达、影视、无线电遥控遥测等领域广泛的得到应用。1.2本课题的目的意义随着电子领域的迅猛发展,单一的频率源早就已经不能跟上时代的脚步。因为在电子测量、通信系统、科研等领域中,对信号发生器的要求越来越高,信号发生器必须具备着调幅、调频和调相等功能,并且频率的稳定性要高,转换速度要快。所以开始发展新的频率合成技术,而随着对电子领域的不断探索与发现,DDS(直接数字频率合成)逐渐的进入人们的视野,它的优点有很多,所以DDS的应用也越来越广泛。而要想DDS芯片在以上这些性能上有明显的提高,要么是发展生产工艺,设计出更加先进的、更为完善的芯片,要么就是对已有的芯片,在外围设计出更加完善的抗干扰电路。DDS芯片AD7008的频率分辨率高,稳定度好,并且它的输出相位连续,综合考虑,最终选择AD7008芯片作为信号发生器的主要芯片,最终的信号发生器可以实现输出信号稳定,可用键盘输入相位和频率,并且可靠性高,操作简单,成本也要较低。1.3本课题的主要内容如今,随着电子领域的飞速发展,信号发生器作为最基本的信号源,也要与时俱进,并且向着体积小,功耗低的方向发展。但这些都是最基本的功能,信号发生器必须还要具备着频率分辨率高,转化速度快,稳定度高等特点,才能达到用户的一些要求,所以2必须在技术手段上有新的突破,才能是仪器产生的信号源具有以上的这些优点。综合考虑,本文选用已有的DDS芯片AD7008来设计高性能的直接数字式频率合成器。本课题主要利用LCD16024液晶显示屏,AD7008芯片,单片机STC12C5A60S25系列三个主要部分组合而成。首先对AD7008的频率寄存器进行频率设置,再对其20位的正交幅度调制寄存器进行幅度设置,然后由单片机将频率控制字输送给芯片AD7008,经过D/A转换器,在输出端口便可得到所需要的正弦波。课题实施主要分为:资料收集及当前研究现状分析、系统总体方案设计、系统硬件电路设计、系统软件设计、实验与检查波形等几个阶段。3第二章系统总体方案设计2.1系统的基本要求基于AD7008信号发生器的设计模块包括:单片机主控模块6、按键电路模块、LCD液晶显示模块、AD7008正弦波发生电路模块7,另外还包括电源开关模块以及蜂鸣器电路模块。通过开发平台keil软件,运用C语言编辑程序8,使其能正确的产生可调正弦波波形,并且通过LCD液晶显示屏将频率显示出来9。2.2硬件系统模块设计图2-1系统结构图2.3软件系统设计本系统的软件设计首先进行系统、AD7008等模块的初始化,然后执行主循环:按键扫描、按键响应、波形输出、LCD显示10和播放按键音函数,等待定时器5毫秒时间标志,时间到来就执行一次主循环。频率设置幅度设置STC12C5A60S2信号发生器AD7008D/A转换器输出4第三章系统硬件电路设计3.1单片机的选择经查询资料,发现有两种单片机系列符合要求,即STC12C5A60S2和51系列的单片机。它们的功能基本一致,但STC12C5A60S2运算速度快,相比于传统的51单片机,它的指令运行速度快了812倍,并且功耗更低,存储空间大,因其内部有专用的复位电路,所以它的外部复位电路可有可无,它的工作频率范围是035MHz,且具有双串口URAT,内部集成EEPROM功能,集成8路10位精度的ADC转换器。所以最终本设计选择的是STC12C5A60S2单片机。3.2单片机电路下图便是本设计中单片机接线图,其中使用晶振电路是为了让单片机在稳定的工作环境下工作。本系统由STC12C5A60S2单片机组成的最小系统电路图如图3.2所示。图3.2STC12C5A60S2单片机最小系统53.3LCD液晶显示模块本设计软件仿真显示模块使用到了LCD1602这个元器件11,通过LCD1602可以显示系统正弦波的输出频率调节值。图3.3为LCD1602的硬件驱动电路12。图3.3LCD1602硬件驱动电路3.4AD7008正弦波发生电路模块3.4.1AD7008简介AD7008芯片既包含串行接口又包含并行接口,这些可根据用户的需要来自己选择,在本设计中,我采用的是并行接口。AD7008的引脚大多数都有固定的接线电路,参考时钟CLOCK为DDS提供精确的时钟,TC0TC3以及LOAD通过并行方式实现对频率、相位、幅度数据的输入,使芯片输出所需的调制信号,其中命令寄存器只能由并行寄存器写入数据,命令寄存器由CR0CR3共4位组成,CR0CR3不同的值代表不同的功能。当FSELECT=1时,输出信号的频率由FREQ1中的控制字决定,当引脚FSELECT=0时,输出信号的频率由FREQ0决定。图3.4是AD7008内部结构框图。6图3.4AD7008引脚图3.4.2AD7008工作原理1.AD7008输入方式的选择本系统通过AD7008输出频率可调的正弦波信号,因此,只需要对AD7008的32位频率寄存器写入相应的频率值即可实现频率调节。寄存器配置也就是向指定寄存器写入特定的数据。AD7008片内包括32位相位累加寄存器、32位频率寄存器、12位相位寄存器、10位D/A转换器、正/余弦查询表、20位正交幅度调制寄存器、32位串行寄存器和32位并行寄存器。通过单片机对AD7008的寄存器写入数据时,需要遵循AD7008的通信协议。对AD7008的寄存器写入数据有三种写入方式:串行写入方式、8位并行写入方式、16位并行写入方式。串行写入方式占用单片机的IO口资源少,连接简单,只需要一个时钟控制引脚SCLK引脚和一个数据输入引脚SDATA引脚就可以完成寄存器数据的写入,虽然连接简单,占用引脚数量少,但是由于AD7008的寄存器位数较大,用串行写入的方式会占用相当长的时间,效率低,速度慢;8位并行写入方式占用单片机8个通用IO口,当通过8位并行方式写入数据时,对AD7008的32位寄存器写入数据时需要写4次才可以完整写入,8位并行写入方式虽然占用单片机8个IO口,但是较串行写入方式而言,其寄存器值写入速度大大提高;16位并行写入方式占用单片机16个通用IO口,当通过16位并行方式写入数据时,对AD7008的32位寄存器写入数据时需要7写2次才可以完整写入,16位并行写入方式虽然占用单片机16个IO口,但是寄存器数据写入速度是8位并行写入方式的2倍。综合三种寄存器数据写入方式优缺点对比,从单片机引脚数量和实际接线方式的角度出发,本系统采用8位并行写入方式,一方面充分利用了STC12C5A60S2单片机丰富的IO口资源,另一方面,一定程度上提升了数据写入速度和稳定性,是一种最佳的选择。2.AD7008工作状态本次设计应用到AD7008工作状态如下(AD7008工作原理如图3.5所示):首先,LOAD等于1时,进行数据加载。由TC0TC3进行传输控制,当TC3、TC2等于00时,数据不能进行传输;当TC3、TC2等于10时,有四种传输方式:TC1、TC0等于00,输入模拟信号0,放入频率寄存器0中;TC1、TC0等于01,输入模拟信号1,放入频率寄存器1中;经过FSELECT频率选择器进行频率选择,当片选等于0时,将选择好的频率和并行数据传输到累加器中进行相位累加,数值放入相位寄存器中,将结果取出并输入到正/余弦查询表,数值经过调幅并进行DAC转换后得到了本设计所需要的正弦信号。具体传输控制如表1所示。图3.5AD7008工作电路8表1源寄存器和目的寄存器TC3TC2TC1TC0LOAD源寄存器目的寄存器00XX1并行寄存器命令寄存器10001并行寄存器频率寄存器010011并行寄存器频率寄存器110101并行寄存器相位寄存器10111并行寄存器正交幅度调制寄存器9第四章系统软件设计4.1系统软件总体设计本系统的软件设计首先进行系统初始化、按键初始化、LCD初始化、AD7008初始化,然后进入主循环等待定时器5毫秒时间标志,时间到来就执行一次主循环。主循环里依次执行按键扫描、按键响应、波形输出、LCD显示和播放按键音函数,然后继续等待下一个5毫秒时间标志到来。其中,系统初始化子函数主要进行定时器寄存器初始化,完成定时器中断配置,从而可以实现5ms进入一定定时器中断子函数。本系统的软件总体流程图如图4.1所示。开始系统初始化按键初始化LCD初始化AD7008初始化5ms时间到按键扫描是按键响应波形输出LCD显示有键按下按键播放音是否否图4.1系统总体流程图104.2AD7008初始化AD7008输出波形之前,需要对其进行初始化。在对AD7008进行初始化时,首先对其复位。通过查阅数据手册可知:AD7008的复位引脚RESET脚是高电平复位。故在系统上电后,首先用单片机IO口控制AD7008的RESET引脚为高电平,并保持一段时间,使AD7008通过软件控制可靠的复位;延时一段时间后,再将RESET引脚拉低,使其一直保持为低电平,在此之后RESET引脚将一直保持低电平,这样AD7008才会正常工作,波形才会正常输出。对AD7008复位之后,在未对AD7008的寄存器写入数据之前,应将AD7008设置为禁止数据写入模式。通过查阅AD7008的数据手册可知:当AD7008的数据写入使能引脚WR引脚为低电平时,数据写入使能,为高电平时,数据禁止写入,因此,用单片机IO口控制AD7008的WR引脚,使其在上电后为高电平,禁止数据写入AD7008的内部寄存器,防止干扰信号错误的设置AD7008的寄存器,造成输出波形失控。另外,将AD7008的寄存器控制引脚TC0TC3引脚和数据加载引脚LOAD脚初始化为低电平,以便之后向寄存器写入数据时保证传输时序。4.3按键扫描本系统的按键扫描函数主要实现按键的软件消抖,从而有效避免按键被重复触发。按键扫描函数位于主函数的while循环中,随主循环周期性的调用进行消抖。当检测到有按键按下时,首先置位一个按键作用标志,然后开始计时按键按下的时间。如果中途按键弹起,则复位按键按下时间和按下标志,为下一次识别按键按下作准备;如果按键持续按下100ms时间,则认为这是一个有效按键,不是抖动引起的误触发,则该按键值供按键响应函数查询。图4.2为按键扫描子函数程序流程图。11进入有键按下按键按下计时是持续按下100ms该键按下是返回键值是返回否否否图4.2按键扫描子函数程序流程图4.4按键响应本系统的正弦波输出频率调节是在按键响应函数中完成的。本系统设计了三个独立式按键增加键、减小键、移位键。增加键和减小键用于调节输出频率值,移位键用于切换输出频率的位。在进入按键响应函数后,首先读取按键扫描函数返回的按键值,然后根据按键返回值执行相当频率调节函数。图4.3为按键响应子函数流程图。12进入读取按键值增加键减小键否移位键否返回否增大频率是减小频率是切换位是清除键值图4.3按键响应子函数流程图4.5LCD液晶显示本系统的LCD1602显示屏的软件驱动程序主要分为液晶初始化、发送命令、发送数据、字符显示。LCD1602初始化时,需要设置显示模式、起始显示地址和光标设置,然后将显示RAM清0再开显示功能,完成显示的初始化。LCD1602在写得指令或数据时,需要先判断LCD的上一个指令操作是否完成忙检测。只要LCD不是处于忙状态下,就可以接收发送的指令或数据,否则即使发送了正确的指令或数据,LCD也不会响应。LCD1602显示字符时,需要先发送需要显示的内容的地址,然后在空闲状态下发送显示数据即可完成显示。图4.4为LCD1602子函数流程图。13进入LCD初始化LCD忙检测LCD空闲发送显示地址是发送显示数据返回否图4.4LCD1602子函数流程图4.6AD7008正弦波输出本系统需要对AD7008输出的正弦波信号进行频率调节,在AD7008输出正弦波前,需要设定它的频率寄存器。由于AD7008频率寄存器为32位寄存器,本系统采用的是8位并行方式传送数据,因此需要分4次传送才能够完成一次频率设置。由于本系统要求输出的正弦波频率调节范围为0999.9KHz,且步进为0.1KHz,因此,我们可以事先计算出0.1KHz下的频率寄存器的初值,然后按倍数关系转换成需要的输出频率的寄存器的值,最后分四次送入频率寄存器即可。图4.5为AD7008正弦波输出子函数。14进入AD7008初始化选择频率寄存器送入频率第4字节送入频率第3字节送入频率第2字节送入频率第1字节返回图4.5AD7008正弦波输出函数4.6.1AD7008波形频率设置AD7008的波形输出频率设置就是对其32位的频率控制寄存器进行设置。由于采用的是8位并行写入方式,且频率寄存器是32位的,因此需要写入4次才可以完整的将设置的频率值写入到频率寄存器中。对AD7008频率寄存器写入前,先设置寄存器控制引脚TC0、TC1、TC2为低电平,TC3为高电平,以选中频率寄存器,然后向8位数据控制引脚送入32位频率控制字的第4字节,然后使能数据加载引脚LOAD和写入使能引脚WR,此时先前写入的第4字节数据就在AD7008寄存器中左移了8位,如此循环3次,即完成了32位频率寄存器数据的设置。4.6.2AD7008波形幅度设置15AD7008的波形输出幅度设置就是对其20位的正交幅度调制寄存器进行设置。由于采用的是8位并行写入方式,且幅度寄存器是20位的,因此需要写入3次才可以完整的将设置的幅度值写入到正交幅度调制寄存器中。对AD7008正交幅度调制寄存器写入前,先设置寄存器控制引脚TC0、TC1、TC3为高电平,TC2为低电平,以选中幅度寄存器,然后向8位数据控制引脚送入20位幅度控制字的第3字节,然后使能数据加载引脚LOAD和写入使能引脚WR,此时先前写入的第3字节数据就在AD7008寄存器中左移了8位,如此循环2次,即完成了20位正交幅度调制寄存器数据的设置。16第五章调试结果5.1调试内容打开电源开关,并将示波器探针放到相应的位置,看是否有波形产生;如有波形产生,调节按键按钮,使频率发生变化,检查示波器波形、频率是否有变化。5.2调试结果频率调节为1KHz,在示波器上显示出正弦波,且频率约为1KHz。如图5.1,图5.2所示。图5.1信号发生器实物图17图5.2信号发生器输出波形图频率调节为333KHz,在示波器上显示出正弦波,且频率约为333KHz。如图5.3,图5.4所示。图5.3信号发生器实物图18图5.4信号发生器输出波形图频率调节为999.9KHz,在示波器上显示出正弦波,且频率约为999.9KHz。如图5.5,图5.6所示。图5.5信号发生器实物图19图5.6信号发生器输出波形图5.3调试过程中遇到的问题及解决在测试过程中,遇到了按一次按键,会被多次误读的情况,不利于快速准确的输入频率,经上网查阅相关资料,得知按键是需要消抖的。在本设计中的按键是用来计数的,如果不消抖的话,按一下,就有可能连续多次输入,会出现误操作的情况,这种情况下,就必须要用按键消抖了。采用软件消抖后,当按键时,就不会出现你按一次被多次误读的情况,并且还能快速准确的反应出你所需要的值。20第六章总结与展望6.1总结本文介绍了基于AD7008信号发生器的设计,实际应用表明,AD7008正弦波发生电路配合单片机、LCD显示屏、按键电路,可以方便的、更为直观的实现输出频率的设置,输出频率范围的设置,并且分辨率高,波形失真度小,简单快捷等优点,但是实验过程中要进行按键消抖,这样才能使波形不会失真,保证波形稳定。因此,采用DDS芯片来实现信号的产生与调制是一种较为理想的方法。6.2展望在电子技术领域中,经常要用到一些信号来作为输入信号,也就是所谓的信号源。而作为系统必不可少的组成部分,信号源也必须具备着越来越多的功能与特点,只有这样,才能满足用户的需求。随着技术不断发展的今天,雷达、航空航天等现代通信也不断的进步与创新,所有的这些需求以及信号处理技术、电子技术等本身的不断进步都极大的刺激了频率合成器技术的发展,所以国内外纷纷采用了新的合成技术直接数字频率合成。DDS比以前的信号发生器有着更多的有点,基本包括了以前信号发生器的功能,并且在其上更进一步。DDS芯片AD7008具有简单、廉价,并能得到高精度、高纯度的一种实用的频率合成芯片。但是AD7008芯片也有一些缺点,比如不能产生复杂的波形,只能产生正余弦波等,这些缺点限制了它的使用范围与发展,但也会有更好的芯片被设计出来,可以预料,随着技术的发展,DDS芯片的价格将会越来越低,时钟频率将会越来越高,性能也会越来越好,它的应用前景也会更加的广阔。21参考文献1郭宏,武国财.数字电子技术及应用教程M.北京:人民邮电出版社,2010.2王秋生,王祁,孙圣和.直接数字合成调频信号的研究J.仪器仪表学报,2000(04).3廖晓中.DDS调制芯片AD7008的原理及应用J,电子工程师,2006(09).4百度文库.LCD1602最好最详细的中文资料OL./link?url=5XVpxRfAKh4PGg-C88_pPVWskthaKYummOCodyy1G4vgFxQeljY35leebdRpbe3OSDUbmIfIiCyYLl3hHtiWUDmCahucrQRHjtYFhj-ZNO_2012-05-16.5豆丁网.STC12C5A60S2中文资料OL./p-376000830.html2012-04-04.6彭江.单片机原理及接口技术的开发J.软件导刊,2011(03).7AD7008简介及应用OL./docs/31237/2004-05-01.8刘坤.51单片机C语言应用开发技术大J全.北京:人民邮电出版社,2008.9刘晋,王政林,薛凯方.基于STC12C5A60S2单片机的LCD显示屏硬件设计J.微型机与应用.2011(22).10徐玮.51单片机综合学习系统-1602字符型液晶显示篇J.电子制作,2008,(01).11杨光友,朱宏辉.单片微型计算机原理及接口技术M.北京:中国水利水电出版社,2002.12蔡康松,段杏林.基于单片机字符型液晶显示模块控制设计J.黄山学院学报,2005,(06).doi:10.3969/j.issn.1672-447X.2005.03.010.22致谢经过几个月的忙碌,毕业设计已经接近尾声,整个过程充满了困难和挑战,接触了大量的新知识和新技术,常常使我觉得自己知识的匮乏和经验的缺失,但这也增加了我对知识的渴望。在指导老师悉心指导和同学的帮助下,我终于顺利的完成了毕业设计任务,为自己的大学生活画上了一个圆满的句号。在本论文完成之际,谨向我的导师魏明老师致以最诚挚的谢意。本论文是在魏明老师的悉心指导下完成的,从论文的选题、资料收录、论文的研究过程,到最后论文定稿,无不倾注了魏明老师的心血和辛苦。魏明老师学识渊博、视野开阔、思维活跃、治学严谨、言传身教,使我明白了许多做人、做事的道理。他的具有学者风范的做人原则永远是我学习的楷模。另外,我还要感谢所有在学习期间曾给我帮助的老师、同学和朋友。当我遇到困难的时候总是热心的帮助我,鼓励我从挫折中走出来。在此,我再次衷心的感谢我的导师和同学。作为大学生活的结束,借此机会,衷心感谢孕育我成长的学校,衷心感谢四年里教过我的所有老师,是他们给我提供了各种学习和实习机会,指导和帮助了我成长。23附录:中英文文献翻译名称单片机24附录程序如下:*#includesystem.huint8buffer20;/显示缓冲数组bitTimer5msFlag=0;/5ms标志,由定时器产生uint32FreqValue=10;/上电默认频率为1KHz,注:由于32位整数运算太大,所以事先算出了100HZ频率寄存器的值,因此实际频率值为FreqValue*100(单位为HZ)uint8temp4=0,0,1,0;/系统参数修改缓冲变量数组,上电默认频率为1KHzuint8shift=0;/切换修改的数的位bitKeySoundFlag=0;/按键发声标志bitDisShanShuoFlag=0;/显示闪烁标志uint8DisSSCount=0;/显示闪烁计数voidDisplay(void)LCD1602_DisStr(0,3,);LCD1602_DisStr(1,0,FREQ:);LCD1602_DisStr(1,8,.);LCD1602_DisStr(1,11,KHz);if(DisShanShuoFlag)DisSSCount+;if(DisSSCount=250)DisSSCount=0;elseDisSSCount=125;if(shift=0elsebuffer0=temp0+0;buffer1=0;LCD1602_DisStr(1,5,buffer);if(shift=1elsebuffer0=temp1+0;buffer1=0;LCD1602_DisStr(1,6,buffer);25if(shift=2elsebuffer0=temp2+0;buffer1=0;LCD1602_DisStr(1,7,buffer);if(shift=3elsebuffer0=temp3+0;buffer1=0;LCD1602_DisStr(1,9,buffer);voidmain(void)uint8i=0;SysInit();/系统初始化KeyInit();/按键初始化LCD1602_Init();/LCD初始化AD7008_Init();/AD7008初始化BUZZER=1;/蜂鸣器初始化DelayNms(200);/上电延时200ms时间,使其它模块准备好EA=1;/开总中断AD7008_FreqSet(FreqValue);/开机默认输出频率1KHzwhile(1)if(Timer5msFlag=1)Timer5msFlag=0;KeyScan();KeyRespond();Display();if(KeySoundFlag)/按键音i+;if(i10)

温馨提示

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

评论

0/150

提交评论