基于单片机的函数信号发生器设的正文_第1页
基于单片机的函数信号发生器设的正文_第2页
基于单片机的函数信号发生器设的正文_第3页
基于单片机的函数信号发生器设的正文_第4页
基于单片机的函数信号发生器设的正文_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

安徽工业大学毕业设计(论文)说明书共页第1页装订线第一章绪论测量仪器从宏观上可分为两大类,即激励和检测,激励仪器主要是各类信号发生器。信号发生器按工作原理可分为调谐信号发生器、锁相和合成信号发生器。1调谐信号发生器是由调谐振荡器构成。传统调谐信号发生器都是由调谐振荡器和统调的调幅放大器输出放大器加上一些指示电路构成。这种信号发生器结构复杂、频率范围窄,而且可靠性、稳定性较差,但其价格低廉。随着半导体器件的发展,其性能有所改善。2锁相信号发生器是由调谐振荡器通过锁相的方法获得输出信号频率的信号发生器。这种信号发生器频率精度和稳定度高,但要实现快速、程控比较困难,同时输出信号的频率分辨率较差。3合成信号发生器是采用频率合成的方法构成的信号发生器。由于合成信号发生器具有较高的频率稳定度,很容易实现数字显示频率,因此,频率分辨率高和频率的设定重复性好,以及能方便实现频率的程序控制是合成信号发生器的重要特点。随着数字集成电路和微电子技术的发展,直接数字合成技术DIRECTDIGITALSYNTHESIS,简称DDS将先进的数字处理技术与方法引入信号合成领域,优越的性能和突出的特点使其成为现代频率合成技术中的佼佼者。DDS器件采用了高速数字电路和高速D/A转换技术,具备了频率转换时间短、相对带宽宽、频率分辨率高、输出相位连续和相位可快速程控切换等优点,可以实现对信号的全数字式调制。而且,由于DDS是数字化高密度集成电路产品,芯片体积小、功耗低,因此可以用DDS构成高性能频率合成信号源来取代传统频率信号源产品。DDS电路TUNINGWORDSPECIKESOUTPUTFREQUENCYASAFRACTIONOFREFCLOCKFREQUENCYPHASE控制字MINDIGITALDOMAIN相位累加器D/A转换器相幅转换函数表时钟低通滤波器图11DDS技术原理框图安徽工业大学毕业设计(论文)说明书共页第2页装订线12DDS的工作原理直接数字式频率合成技术原理如图11所示。以合成正弦波为例,首先,把一个周期的弦波按一定的相位间隔分成若干离散点,求出相应点的正弦函数值,并用二进制数表示,将这些数值依次写入ROM中,构成一个正弦表,频率合成是在标准时钟的作用下,相位累加器按一定的间隔输出相应相位点的正弦函数值,经D/A转换器转换为阶梯状的正弦波,最后经低通滤波器对阶梯正弦波进行平滑滤波,即可输出较为标准的正弦波在特定的时钟频率下,输出的正弦波频率取决于相位累加器累加数值K,即FOKFC/2A式1一1由11式可知,K值越大,则正弦波的频率越高,通过改变频率控制字K可以改变DDS输出频率,对输出信号的相位控制是通过给相位累加器设置不同的初值来实现的。DDS技术具有传统信合成方法所不具备的许多特点1频率分辨率高由,可得分辨率为F/2N,若时钟频率不变,DDS的频率分辨FCWCLKFCLKF率就由相位累加器的位数N决定。因为N一般取得很大。2频率切换快DDS是一个开环系统,无任何反馈环节,这种结构使得DDS的频率转换时间极短。在DDS的频率控制字改变之后,需经过一个时钟周期之后按照新的相位增量累加,FC才能实现频率的转换。因为频率转换的时间等于的传输时间,也就是一个时钟FCW周期的时间。时钟频率越高,转换时间越短。再加上低通滤波器为主的器件响应时间很短,使得高速DDS系统的频率切换时间可达到纳秒级。3输出相对带宽较宽输出频率带宽为50理论值,考虑到低通滤波器的特性和设计难度以及CLKF对输出信号杂散的抑制,DDS实际输出频率范围可达040。CLKF4频率变化时相位连续改变DDS输出频率,实质就是改变相位增长率。而相位函数的曲线是连续的只是在改变频率的瞬间其频率发生了突变,因而保持了信号相位的连续性。5输出信号灵活在DDS内部加上相应控制如FM调频控制、PM调相控制和AM调幅控制,即可方便灵活地实现调频,调相和调幅功能,产生FSK,PSK,ASK和MSK等信号。改变ROM中存储的数据,可以实现任意波形输出。6杂散抑制差由于DDS采用全数字结构,不可避免地引入了杂散。其来源主要有三个相位累加器相位舍位造成的杂散幅度量化误差由存储器有限字长引起造成的杂散,DAC非理想特性造成的杂散。7输出带宽较窄由于DDS内部DAC和波形存储器的工作速度限制,使得DDS输出的最高频率有限,安徽工业大学毕业设计(论文)说明书共页第3页装订线不能直接运用于微波频段。13本文的主要研究内容本论文的任务是根据信号发生器的特点和应用情况,结合新一代高性能芯片设计一种使用简单、性能优良的信号发生器。该信号发生器可输出正弦波、三角波、方波;若再进一步开发控制算法,可具有AM,FM,PM,FSK,PSK,ASK调制功能以及扫频等功能。本设计的主要工作如下1比较多种信号发生器的工作原理,分析它们的优缺点,最后确定了以DDS技术为核心研制信号发生器的方案。对DDS的工作原理和优缺点做了简单的介绍和分析。比较了不同类型的DDS芯片的特点,并做出选择2系统总体方案设计。将DDS信号发生器的系统分为2部分信号的产生与控制、人机交互以及信号的处理。3系统的硬件设计。完成系统的硬件总体设计,并就实际设计中出现的问题提出了处理的方法。4系统软件设计部分主要完成正弦波、三角波、方波的控制输出。安徽工业大学毕业设计(论文)说明书共页第4页装订线第二章方案设计与论证21方案一本方案直接采用凌阳SPCE061A作为波形发生器。由键盘键入信号波形、频率选择,经MCU换算,得出的具体控制方法;通过两路DAC输出模拟信号。凌阳SPCE061A在这方面的设计为我们提供了极大的方便,用它实现的好处在于,外围电路极其简单,DAC的编程方面又提供及其便利的编程环境。外围电路的设计包括三大部分,第一是键盘控制电路的设计,这里采用44键盘,由IOA的低八位进行控制,把键盘上的行和列分别接在IOA0IOA3和IOA4IOA7上,采用外部中断来中断所输出波形,以便进入下一波形的编辑和输出。第二是显示电路的设计,这里为了能显示输出波形参数,采用带数据缓存器和驱动的LCD1602显示屏。这样只占用11个I/O口即可完成显示设计要求。第三是滤波和电压转换电路的设计,滤波采用低通滤波器,滤除DAC转换过程中形成的高频小锯齿波。另外由于凌阳SPCE061A单片机DAC输出为电流输出,为满足达到5V的电压输出,外接OP07运算放大器进行放大,加1千欧姆电阻进行电流信号到电压信号的转换。本设计的特点是全面采用数字电路方案,因而工作稳定可靠。利用单片机控制管理,使频率设置和占空比调整等操作可用键盘输入,十分方便。22方案二本设计方案采用多波形宽频率范围信号发生器MAX038等新器件产生波形和频率,控制与管理电路部分使用SPCE061A单片机以及键盘显示电路。MAX038是一个精密高频波形产生器。它能产生频率高达20MHZ的正弦波、三角波、方波等脉冲信号,其压控振荡器的频率分粗调和细调两层控制。在本电路中,用于粗调的控制电压(电流)由一个12位的DAC产生,使输出频率近似等于N倍基准频率。而细调电压则由数字锁相电路MC145151和环路滤波器MAX427产生,由锁相反馈环将频率FONFR锁定。这种方案的优点是频率合成器工作更可靠,锁定更迅速。另外MAX038还包括占空比调整电路、波形同步电路、相位检测电路、波形切换开关和电压基准源等电路,所需外部元件少,使用很方便。控制和管理电路由SPCE061A单片机及外围电路组成。其主要用于对键盘输入的波形和频率选择等数据进行译码,计算出相应的控制参数,控制频率合成器输出正确的信号,并将其频率和波形参数用LED显示出来。对于小型通用信号产生器而言,这是一个比较理想的设计方案。23方案比较第一种方案设计外围电路简单,能够满足本设计的要求,这里考虑到短时间内安徽工业大学毕业设计(论文)说明书共页第5页装订线设计既要成型,采用第一种方案。第二种设计方案的波形调节范围较小,可开发扩展的空间很小。比较适合用到专门的波形产生。所以在本次毕业设计我选择第一种方案。安徽工业大学毕业设计(论文)说明书共页第6页装订线第三章专用器件说明31SPCE061单片机介绍SPCE061A是继NSP系列产品SPCE500A等之后凌阳科技推出的又一款16位结构的微控制器。与SPCE500A不同的是,在存储器资源方面考虑到用户的较少资源的需求以及便于程序调试等功能,SPCE061A里只内嵌32K字的闪存(FLASH)。较高的处理速度使NSP能够非常容易地、快速地处理复杂的数字信号。因此,与SPCE500A相比,以NSP为核心的SPCE061A微控制器是适用于数字语音识别应用领域产品的一种最经济的选择。311性能16位NSP微处理器;工作电压CPUVDD为2436VI/OVDDH为2455VCPU时钟032MHZ49152MHZ;内置2K字SRAM;内置32KFLASH;可编程音频处理;晶体振荡器系统处于备用状态下时钟处于停止状态,耗电仅为2A36V;2个16位可编程定时器/计数器可自动预置初始计数值;2个10位DAC数模转换输出通道;32位通用可编程输入/输出端口;14个中断源可来自定时器A/B,时基,2个外部时钟源输入,键唤醒;具备触键唤醒的功能;使用凌阳音频编码SACM_S240方式24K位/秒,能容纳210秒的语音数据;锁相环PLL振荡器提供系统时钟信号;32768HZ实时时钟;7通道10位电压模数转换器ADC和单通道声音模数转换器;声音模数转换器输入通道内置麦克风放大器和自动增益控制AGC功能;具备串行设备接口;具有低电压复位LVR功能和低电压监测LVD功能;内置在线仿真电路ICE(INCIRCUITEMULATOR)接口;具有保密能力;具有WATCHDOG功能。安徽工业大学毕业设计(论文)说明书共页第7页装订线312应用领域家用电器控制器冰箱、空调、洗衣机等白色家电仪器仪表数字仪表(有语音提示功能)电表、水表、煤气表、暖气表工业控制智能家居控制器通讯产品多功能录音电话、自动总机、语音信箱、数字录音系统产品医疗设备、保健器械(电子血压计、红外体温监测仪等)体育健身产品(跑步机等)电子书籍(儿童电子故事书类)、电教设备等语音识别类产品(语音识别遥控器、智能语音交互式玩具等)313结构概览图31结构概览314通用I/O口的使用SPCE061A提供了位控制结构的I/O端口,每一位都可以单独用于数据输入或输出。每个独立的位可通过以下3种控制向量来作设定1数据向量DATA2属性向安徽工业大学毕业设计(论文)说明书共页第8页装订线量ATTRIBUTION3方向控制向量DIRECTION每3个对应的控制向量组合在一起,形成一个控制字,用来定义相对应I/O端口位的输入输出状态和方式。例如,假设需要IOA0是下拉输入引脚,则相对应的DATA、ATTRIBUTION和DIRECTION的值均被设为“0”。如果需要IOA1是带唤醒功能的悬浮式输入引脚,则DATA、ATTRIBUTION和DIRECTION的值被设为“010”。与其它的单片机相比,SPCE061A除了每个I/O口可以单独定义其状态外,每个对应状态下的I/O端口性质电路都是内置的,在实际的电路中不需要再外接。例设A口为带下拉电阻的输入端口,在连接硬件时不用再外接下拉电路。A口和B口的DATA、ATTRIBUTION和DIRECTION的设定值均在不同的寄存器里,用户在进行I/O端口设置时要特别注意这一点。I/O端口的组合控制设置如表31表31I/O端口的控制向量组合DIRECTIONATTRIBUTIONDATA功能是否带唤唤醒功能功能描述000下拉是带下拉电阻的输入引脚001上拉是带上拉电阻的输入引脚010悬浮是悬浮式输入引脚011悬浮否悬浮式输入引脚100高电平输出带数据反相器否带数据反相器的高电平输出当向数据位写入“0”时输出“1”101低电平输出带数据反相器否带数据反相器的低电平输出当向数据位写入“1”时输出“0”110低电平输出否带数据寄存器的低电平输出无数据反相功能111高电平输出否带数据寄存器的高电平输出315D/A转换SPCE061A为音频输出提供两个DAC通道DAC1和DAC2,分别由经由DAC1和安徽工业大学毕业设计(论文)说明书共页第9页装订线DAC2引脚输出。DAC的输出范围从0X0000到0XFFFF。如果DAC的输出数据被处理成PCM数据,必须让DAC输出数据的直流电位保持为0X8000,且仅有高10位的数据有作用。DAC1和DAC2的输出数据应写入P_DAC1写7017和P_DAC2写7016单元。上电复位后,两个DAC均被自动打开,此时会消耗少量的电流几毫安。所以如不需要用它们,尽量将P_DAC_CTRL写702AH单元的第1位设为1,关闭DAC输出。P_DAC2读/写7016HDAC2是个10位的D/A转换单元。在DAC方式下,该单元带有10位的缓冲寄存器DAR2。表32P_DAC2读/写的DAR2P_DAC2写通过此单元直接写入10位数据到10位寄存器DAR2,来锁存DAC2的输入数值无符号数。P_DAC2读从DAR2内读出10位数据。P_DAC1读/写7017HDAC1是个10位的D/A转换单元。在DAC方式下,该单元带有10位的缓冲寄存器DAR1。表33P_DAC1读/写的DAR1P_DAC1写通过此单元直接写入10位数据到10位寄存器DAR1,来锁存DAC1的输入数值无符号数。P_DAC1读从DAR1内读出10位数据。P_DAC_CTRL写702AH表34P_DAC_CTRL单元的B3B8的控制功能DAC音频输出方式的控制单元(如表34所示),其中第58位用于选择DAC的数据锁存方式;第3、4位用来控制A/D转换方式;第1位为0,用于双DAC音频输出。B9B15为保留位。表34详细地列出了P_DAC_CTRL单元的B3B8的控制安徽工业大学毕业设计(论文)说明书共页第10页装订线功能。316IDE开发平台的使用NSP集成开发环境集程序的编辑、编译、链接、调试以及仿真等功能为一体。具有友好的交互界面、下拉菜单、快捷键和快速访问命令列表等,使编程、调试工作方便且高效。此外,它的软件仿真功能可以在不连接仿真板的情况下模拟硬件的各项功能来调试程序。1新建项目的方法步骤用鼠标左键单击FILE下拉菜单NEW弹出NEW对话框,在该窗口中选中PROJECT标签并在FILE的文本框中键入项目的名称。在LOCATION下的文本框中输入项目的存取路径或利用该文本框右端的浏览按钮制定项目的存储位置用鼠标左键单击NEW对话框里的OK按钮,则项目建立完成。2在项目中建立C文件的方法在新建项目下,点击菜单FILE下拉菜单NEW弹出NEW对话框。点击NSPIDECFILE,在FILE下的文本框内键入文件名称,OK。3在项目中新建汇编文的方法在新建项目下,点击菜单FILE下拉菜单NEW弹出新建文件/项目的对话框。点击NSPIDEASMFILE,在FILE下的编辑框内写入文件名称,OK4在项目中新建头文件的方法在新建项目下,点击菜单FILE下拉菜单NEW弹出新建文件/项目的对话框。点击NSPIDEHFILE,在FILE下的编辑框内写入文件名称,OK。5在项目中新建文本文件在新建项目下,点击菜单FILE下拉菜单NEW弹出新建文件/项目的对话框。点击NSPIDETEXTFILE,在FILE下的编辑框内写入文件名称,OK。6在项目中添加删除文件的方法可通过菜单途径用鼠标左键单击PROJECT菜单里ADDTOPROJECT选项中的FILES或RESOURCE子项,激活ADDFILES对话框。317PWM输出凌阳SPCE061A提供了一种很好的方波发生机制,就是APWM调制,通过写入P_TIMERA_CTRL700BH单元的第69位,可选择设置APWM输出波形的脉宽占空比;同理,写入P_TIMERB_CTRL700DH单元的第69位,便可选择设置BPWM输出波形的脉宽占空比。我们可以将IOB8设置成同相输出端口,通过设置P_TIMERA_CTRL写700BH的第05位来选择TIMERA的时钟源时钟源A、B。设置该单元的第69位,TIMERA将输出不同频率的脉宽调制信号,即对脉宽占空比输出APWM进行控制。这里为了得到最标准的波形采用这种方式来实现标准方波。318SPCE061A的时钟和定时器/计数器SPCE061A时钟电路由两部分组成实时时钟产生电路与频率变换电路。1)实时时钟RTCREALTIMECLOCKNSP的时钟源电路是采用晶体振荡器电路,如图210为其接线图。外接晶安徽工业大学毕业设计(论文)说明书共页第11页装订线振为32768HZ,推荐使用外接32768HZ晶振,因RC阻容振荡的电路时钟不如外接晶振准确。32768HZ为实时时钟,通过其分频可提供多种实时时钟中断,常用于钟表、延时以及其它与时间相关类产品。例用作唤醒的中断来源IRQ5_2HZ,系统每隔05秒被唤醒一次,由此得精确计时基准。RTC振荡器有两种工作方式强振模式和自动弱振模式。用户可以根据需要调整该值。2)工作频率设置SPCE061A的工作时钟频率取决于系统时钟FOSK与CPU时钟CPUCLK。这两时钟电路由PLL锁相环倍频电路和分频电路组成,如图211所示。PLL锁相环电路将实时时钟32768HZ倍频,调整至系统时钟FOSK。分频电路将系统时钟FOSK分频,得到CPU时钟CPUCLK。系统时钟选频P_SYSTEMCLOCK单元的第7、6、5位系统时钟选频P_SYSTEMCLOCK单元的第2、1、0位图32时钟系统结构系统预设的FOSK频率为24576MHZ,CPUCLK频率为FOSK8。用户可以通过对7013H编程来调整FOSK与CPUCLK的频率。P_SYSTEMCLOCK单元控制功能参见表35。表35P_SYSTEMCLOCK7013H单元功能位B7B5B4B3B2B0功能FOSC选择B7B6B5FOSC00024576MHZ0012048MHZ01032768MHZ0114096MHZ149152MHZ睡眠状态下RTC工作状态设置1在睡眠状态下,32768HZ时钟仍处于工作状态预设;0睡眠状态下,32768HZ时钟被关闭RTC强弱模式设置1RTC时钟处强振模式;0RTC时钟处于自动弱振模式预设CPUCLK选择B2B1B0CPUCLK000FOSC001FOSC/2010FOSC/4011FOSC/8100FOSC/16101FOSC/32110FOSC/64111停止睡眠状态只有当B0B2同时被设为“1”时即睡眠状态B4设置才有效。上电复位或系统从备用状态睡眠状态被唤醒后,预设的FOSC24576MHZ,CPU时钟频率为FOSC/8。可见B0B2位用来改变CPUCLK时钟频率与工作状态,若将第02位设为“111”可以使CPU时钟停止工作,系统切换至低功耗的睡眠状态。B3、B4位用来安徽工业大学毕业设计(论文)说明书共页第12页装订线设置实时时钟RTC的工作模式。B3位用来设置RTC工作方式RTC振荡器有两种工作方式强振模式和自动弱振模式;B4位用来设置RTC振荡器的睡眠状态。处于强振模式时,RTC振荡器始终运行在高耗能的状态下。处于自动弱振模式时系统上电复位POWERONRESET后的前75秒内处于强振模式,然后自动切换到弱振模式以降低功耗。CPU被唤醒后预设的时钟频率为FOSC/8,用户可以根据需要调整该值。B5B7位可以改变系统时钟FOSC的频率。3)时间基准信号时基信号发生器的结构如图33所示。通过对32768HZ实时时钟源分频而产生时基信号。产生的信号可分三类时基信号产生器的频率选择器TMB1为TIMERA的B时钟源提供各种频率选择信号;TMB1、TMB2为中断系统的IRQ6中断源提供信号;时基信号产生器还可以通过分频产生2HZ、4HZ、1024HZ、2048HZ及4096HZ的时基信号,为中断系统提供各种实时中断源LRQ4和IRQ5信号。P_TIMEBASE_SETUP写700EH时基信号发生器通过编程该单元来选择时基信号频率。该单元各位的功能描述见表36。表36P_TIMEBASE_SETUP700EH单元功能描述位B15B4B3B2B1B0功能TMB2频率选择B1B0TMB200128HZ01256HZ10512HZ111024HZTMB2预设为128HZTMB1频率选择B1B0TMB1008HZ0116HZ1032HZ1164HZTMB1预设为8HZP_TIMEBASE_CLEAR写700FH单元是控制端口,设置该单元可以完成时基计数器复位和时间校准。向该单元写入任一数值后,时基计数器将被复0,可利用此单元对时基信号产生器进行精确的时间校准。安徽工业大学毕业设计(论文)说明书共页第13页装订线图33时基信号发生器结构4)TIMER定时器/计数器图34TIMERA结构SPCE061A提供了两个16位的计时/计数器TIMERA和TIMERB。TIMERA为通用计数器;其结构如图34所示。TIMERA由时钟源A和时钟源B进行“与”操作而形成。TIMERB为多功能计数器,其结构如图35所示。TIMERB的时钟源仅为时钟源C。时钟源A与时钟源C是高频时钟来源,来自PLL锁相环的晶体振荡器输出FOSC;时钟源B的频率来自32768HZ实时时钟系统,也就是说,时钟源B可以作为精确的定时器。时钟源C选择时钟源C安徽工业大学毕业设计(论文)说明书共页第14页装订线图35TIMERB结构定时器/计数器功能有三计数溢出后会产生一个溢出信号TAOUT/TBOUT送CPU中断系统,以产生定时器中断信号;定时器溢出信号还可以用于触发ADC输入的自动转换过程,和DAC输出的数据锁存。计数器所产生的定时溢出,可以作为PWM脉宽调制的计数器,用来输出4位的PWM脉宽调制信号APWMO或BPWMO分别从IOB8和IOB9输出,可用来控制马达或其它一些设备的速度。定时器/计数器启用与控制写入一计数初值N到P_TIMERA_DATA700AH读/写或P_TIMERB_DATA读/写700CH单元;写入一值到P_TIMERA_CTRL写700BH或P_TIMERB_CTRL写700DH单元,选一合适时钟源。FSR功能描述P_TIMERA_CTRL写700BH/P_TIMERB_CTRL写700DH定时/计数器的控制单元如表37所示。用户可以通过设置700BH、700DH单元的第05位来选择TIMERA的时钟源A、B和TIMERB的时钟源C;设置其第69位,TIMERA/TIMERB将输出不同频率的脉宽调制信号,即对APWMO/BPWMO输出脉宽占空比TDUTY进行控制。表37P_TIMERA_CTRL/P_TIMERB_CTRL功能描述B15B10B9B8B7B6B5B4B3B2B1B0P_TIMERACTRL写占空比设置B9B8B7B6脉宽占空比TAON30000关断000011/16100102/16100113/1611111014/1611111TAOUT触发信号1时钟源B选择位B5B4B3B频率0002048HZ0011024HZ010256HZ011TMBJ1004HZ1012HZ11012111EXTII时钟源A选择位B2B1B0A频率000FOSC/2001FOSC/25601032768HZ0118192HZ1004096HZ101111001111EXTIP_TIMERACTRL写占空比设置功能描述如P_TIMERA_CTRL的B6B9时钟源C选择位功能如P_TIMERA_CTRL的B2B01默认值02默认值13TAON是TIMERA的脉宽调制信号输出启用位,TAON1代表PWM输出使能标志,默认值为0。TAOUT代表TIMERA溢出信号。TAOUT触发信号TAOUT/2的占空比为50,频率为FTAOUT/2,其它输入信号的频率为FTAOUT/16。P_TIMERA_DATA读/写700AH/P_TIMERB_DATA读/写700CH安徽工业大学毕业设计(论文)说明书共页第15页装订线为TIMERA/TIMERB的数据单元,用于预设计数初值或从其中读取数据。在写入数值以后,计数器便会在所选择的频率下进行加一计数,直至计数到0XFFFF产生溢出。溢出后,产生中断请求信号,被CPU响应后送入中断控制器进行处理。同时,P_TIMERA_DATA中的值将会被复位,再以设置的值继续加一计数。32DM1602显示器液晶显示器LCDDM162具有功耗低、体积小、质量轻、超薄且性价比合理。广泛用于各种智能型仪器和低功耗电子产品中。点阵式或图形式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动、动画、闪烁、文本特征显示等功能。DM162液晶模块提供了8位双向数据线(DB0DB7),支持4位数据总线和8位数据总线两种接口方式。1引脚图与功能说明DB2ERSDM16021413121110987654321DB7DB6DB5DB4DB3DB1R/WVLVCCGNDDB0图36DM162显示器引脚图表38引脚功能引脚符号功能说明1GND接地2VCC5V3VL驱动LCD,一般将此脚接地4RS寄存选择0指令寄存器(WRITE)BUSYFLAG,位址计数器(READ)1数据寄存器(WRITE,READ)5R/WREAD/WRITE选择1READ2WRITE6E读写使能(下降沿使能)7DB08DB19DB210DB3低4位三态、双向数据总线11DB412DB513DB6高4位三态、双向数据总线另外DB7也是一个BUSYFLAG安徽工业大学毕业设计(论文)说明书共页第16页装订线14DB72寄存器选择表39寄存器选择RSR/W操作说明00写入指令寄存器(清除屏幕等)01读BUSYFLAG(DB7),以及读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据3字符发生存储器液晶模块内部的字符发生存储器(CGROM已经存储了160个不同的点阵字符图形,如表310所示。表310CGROM和CGRAM中字符代表与字符图形的关系高位低位00000010001101000101011001111010101111001101111011110000CGRAM10PP_夕三P000121AQAQQ00103“2BRBRR川001143CSCS丿010054DTDT工U010165EUEU才B001107一、因为硅片不能制作大电容,所以集成运放均采用直接耦合方式。二、因为相邻器件具有良好的对称性,而且受环境温度和干扰等影响后的变化也相同,所以集成运放中大量采用各种查分放大电路和恒流源电路。三、因为制作不同形式的集成电路,只是所有掩膜不同,增加器件并不增加制造工序,所以集成运放允许采用复杂的电路形式,以达到提高各方面性能的目的。四、因为硅片上不宜制作高阻值电阻,所以在集成运放中常用有源器件取代电阻。五、集成晶体管和场效应管因制作工艺不同,性能上有较大差异,所以在集成运放中常采用复合形式,以得到各方面性能俱佳的效果。332集成运放电路的组成及各部分的作用集成运放电路由四部分组成,包括输入级、中间级、输出级和偏置电路。一、输入级输入级又称前置级,它往往是一个双端输入级的高性能差分放大电路。一般要求其输入电阻高,差模放大倍数大,抑制共模信号的能力强,静态电流小。输入级的好坏直接影响集成运放的大多数性能参数,如输入电阻、共模抑制比等。二、中间级中间级是整个放大电路的主放大器,其作用是使集成运放具有较强的放大能力,多采用共射放大电路。而且为了提高放大倍数,经常采用复合管做放大管,以恒流源做集电极负载。其电压放大倍数可达千倍以上。三、输入级输入级应具有输出电压线性范围宽、输出电阻小、非线性失真小等特点。集成运放的输出级多采用互补对称输出电路。四、偏置电路偏置电路用于设置集成运放各级放大电路的静态工作点。与分立元件不同,集成运放采用电流源电路为各级提供合适的集电极静态工作电流,从而确定了合适的静态工作点。安徽工业大学毕业设计(论文)说明书共页第18页装订线333运算放大器电压传输特性集成运放有两个输入端分别为同相输入端和反相输入端,这里的“同相”和“反相”是指运放的输入电压与输出电压之间的相位关系,其符号如图37所示。从外部看,可以认为集成运放是一个双端输入、单端输出、具有高差模放大倍数、高输入电阻、的输出电阻、能较好地抑制温漂的差动放大电路。UOUPUNAOD图37集成运放集成运放的输出电压与输出电压(即同相输入端与反相输入端之间的差值电OU压)之间的关系曲线称为电压传输特性,即OPNUFU对与正、负两路电源供电的集成运放,电压传输特性如图38所示。从图示曲线可以看出,集成运放有线性放大区域(称为线性区)和饱和区域(称为非线性区域)两部分。在线性区,曲线的斜率为放大倍数;在非线性区输出电压只有两种可能的情况,或。OMUUOUPUNOUOMUOM图38电压传输特性由于集成运放放大的对象是差模信号,而且没有通过外电路引入反馈,故称其放大倍数为差模开环放大倍数,记作,因而当集成运放工作在线性区域时ODAODPNAUU通常非常高,可达几十万倍,因此集成运放电压传输特性中的线性区非常之窄。如果输出电压的最大值,那么只有当OM14VU5OD10时电路才工作在线性区。换言之,若,则集成运放PN28VPN28VU进入非线性区,因而输出电压不是,就是。OU334集成运放的主要性能指标在使用集成运放的时,常考察下列参数安徽工业大学毕业设计(论文)说明书共页第19页装订线(1)开环差模增益在集成运放无外加反馈时的差模放大倍数称为开环差ODA模增益,记作。,常用分贝(DB)表示,其分贝数为ODPN/U。通用型集成运放的通常在左右,即100DB左右。BISS0001内部集OD20LGA510成集成运放开环增益最小60DB。(2)共模抑制比共模抑制比等于差模放大倍数与共模放大倍数之比的CMRK绝对值,即,也常用分贝表示,其数为。CRODC/ACMR20LGK(3)差模输入电阻是集成运放在输入差模信号时的输入电阻。愈大,IRIDIDR从信号源索取的电流愈小。BISS0001内部集成运放差模电阻大于2(4)输入失调电压由于集成运放的输入级电路参数不可能绝对对称,所IOU以当输入电压为零时,并不为零。是使输入电压为零时在输入端所加的补偿OUIO电压,其数值是时,输出电压折合到输入端电压负值,即I0。愈小,表明电路参数对称性愈好。对于外接调零的运放,IIODUUAIO可以通过改变电位器滑动端的位置时代零输入时输出为零。(5)输入失调电流,反应输入级差放管输入电流的不对IIB12IIO称程度。安徽工业大学毕业设计(论文)说明书共页第20页装订线第四章系统的硬件电路设计41系统框图MCU2显示器DAC2MCU1滤波放大图41电路方框图该信号发生器采用两片SPCE061单片机,其中一片MCU1负责系统的整体控制,包括键盘输入判别、信号的波形与频率等参数的显示。当有新的波形参数输入时,负责波形选择与相位增量参数的确定,并将该参数通过UART传输到MCU2。MCU2专门负责波形的输出,输出的波形经滤波放大输出一个平滑的电压信号。键盘本系统需要有较多的输入键,因此采用矩阵式键盘电路。显示器采用节能且电路简单的LCD器件DM1602。42SPCE061A基本工作电路设计SPCE061A基本工作电路如图42。其中C14、C15、Y1够成一个晶体振荡输入电路,为单片机提供准确的时钟频率。Y1选FC32768的晶体,他具有稳定的频率特性。单片机的内部锁相倍频电路可根据编程相应特殊功能寄存器的状态将单片机的CPU时钟提高到49MHZ、24MHZ、20MHZ等。在MCU的VDD和VSS端都并有一个100F和001F的电容进行电源退耦。R18A、S4、C37够成了本工作电路的一个外部复位功能。键盘安徽工业大学毕业设计(论文)说明书共页第21页装订线IOB41IOB32IOB23IOB14IOB05RESTB6VDDP7VCOINVCP8VSS9NC10NC11OSC32O12OSC32I13TEST14VDD15ICE16ICECLK17ICESDA18VSS19PVIN20DAC121DAC222VREF2V2VREF23VSS24AGC25OPI26MICOUT27MICN28PFUSE29NC30NC31NC32MICP33VCMVREFAD34VRTPADVEXTREF35VDD36VMIC37VSS38NC39NC40IOA041IOA142IOA243IOA344IOA445IOA546IOA647IOA748VSS49VSS50VDDH51VDDH52IOA853IOA954IOA1055IOA1156IOA1257IOA1358IOA1459IOA1560ROMT61VSS62SLEEP63IOB1564IOB1465IOB1366IOB1267IOB1168PVPP69NC70NC71NC72NC73NC74VDDH75IOB1076IOB977IOB878IOB779IOB680IOB581NC82NC83NC84SPCE061APLCC84UY132768C1420PMICNC1520PMICOUTC18104OP1C31104AGCC28104VSSC7104VREF2C8104DAC2C33300PDAC1C10104VSSC4100UICESDAC4100UICECLKC17100UICEENC27100UVDDC29100UR233KIOA9IOA10IOA11IOA12IOA13IOA14IOA15IOB11VSSSLEEPIOB15IOB14IOB13IOB12C37104116R18A47KS4VDDHIOA10IOA9IOA8IOA7IOA6IOA5IOA4IOA3IOA2IOA1IOB0RESTBVDDPVCPVSSVDDVDDHVSSVSSIOA8VDDHIOA7IOA6IOA5IOA4IOA3IOA2IOA1IOA0VDDAVSS1VMICVDDAVCMMIICP图42SPCE061A基本工作电路43键盘电路设计在单片机中所需按键较少,多采用独立式键盘。此种键盘结构简单,每只按键接单片机的一条I/O线,通过查询即可示别出每只按键的状态来。但由于本系统按键较多,在这里采用矩阵式排列键盘,如图43所示,这样可以合理应用硬件资源,把16只按键排列成44矩阵形式,用一个8位I/O口控制,如图43所示。把键盘上的行和列分别接在IOA0IOA3和IOA4IOA7按键控制电路上。先置IOA0IOA3为带数据缓存器的高电平输出,置IOA4IOA7为带下拉电阻的输管脚,此时若有键按下,取IOA4IOA7的数据将得到一个值,把此值保存下来,再置IOA4IOA7为带数据反相安徽工业大学毕业设计(论文)说明书共页第22页装订线器的高电平输出,置IOA0IOA3为带下拉电阻的输入管脚,此时若键仍没弹起,取IOA0IOA3的数据将得到另一个值,把这两个值组合就可得知是哪个键按下了,再通过查表得到键值。图43按键控制电路44显示电路设计本次毕业设计中采用LCDDM1602来显示信号发生器的工作状态。电路连接如图44。根据DM1602的使用要求,来控制显示器的工作。VDDD0D1D2D3D4D5D6D7RSRWE10KVDDV0VSSDM1602IOA_8IOA_9IOA_AIOA_BIOA_CIOA_DIOA_EIOA_FSPCE061AVCCVDDIOB_0IOB_1IOB_2图44DM1602显示电路IOB_0与RS连接,用来作为寄存器的选择,0指令寄存器,1数据寄存器。IOB_1与R/W连接,用来作为READ/WRITE选择,0WRITE,1READ。安徽工业大学毕业设计(论文)说明书共页第23页装订线IOB_2与E连接,用来作为读写使能(下降沿使能)。电位器用来作为DM1602液晶显示模块的亮度调节,因为VL引脚接低电平时,显示为最亮,接高电平时,显示为最暗,因此用电位器调节选择适合的亮度。各数据线均由单片机IOAB_8IOAB_F输入到DM1602液晶显示器。44信号输出电路设计本电路采用二阶压控电压源低通滤波器,如图45所示。它由两节RC滤波器和同向放大电路组成。其中同相放大实际上就是所谓的压控电压源,它的电压增益为AVF1RF/R31R1KR21KR11KDAC1/DAC2GNDOUT1PF1PFR36753GNDRF10K图45滤波放大电路安徽工业大学毕业设计(论文)说明书共页第24页装订线第五章软件设计51主程序流程图由于使用凌阳SPCE061A的D/A输出信号,使外围电路变得异常简单,整个波形发生器的主体任务落到了程序编写上。而整个系统的软件设计分两块MCU1系统控制程序设计;MCU2波形发生程序设计。MCU1系统控制程序主要完成键入判别、显示控制,及输出信号步长计算与传递等,程序流程图如图51。开始有新参数有键入系统初始化键入处理新数据送MCU2新数据送显示器新波形参数换算YYNN图51MCU1主程序流程图安徽工业大学毕业设计(论文)说明书共页第25页装订线开始输出三角波输出正弦波MCU2初始化输出高电平计算脉宽YNN读入相位步进值相位步进正弦波相幅转换D/A输出相位2相位清零YN读入相位步进值相位步进相位值乘比例系数D/A输出相位2相位清零YN延时脉宽值输出低电平延时T脉宽初始态输出高电平图52MCU2主程序流程图MCU2主要完成信号波形输出,程序流程图如图52。MCU2的UART的中断的程序流程图如图53。安徽工业大学毕业设计(论文)说明书共页第26页装订线数据收完读入数据置位新数据标志关中断读入包容量查询输出NY开始新数据进数据区跳出原工作循环切入主程序初始态图53MCU2的UART的中断流程图52正弦波信号形成方法用函数来产生波形是常用的设计方案。在设计之初,我尝试使用函数来计算输出波形,使用这种方法,在示波器上得到了很好的波形,但是所得到的频率只是多少毫赫兹到几十赫兹之间,基本上没有实用价值。要达到更高的频率,就得另辟蹊径了。分析一下为什么频率上不去,主要原因在于,使用单片机进行正弦函数的运算时占去了不少时间,如果去掉这一计算过程波形的频率应该大有提高。我采用查结束安徽工业大学毕业设计(论文)说明书共页第27页装订线表来实现相幅转换,这样可良好的保证步进时钟的准确与快捷。另外提高MCU时钟频率,也可使DAC转换过程需要时间缩短。正弦波输出程序见附录。53三角波、锯齿波的形成三角波、锯齿波形成的原理同正弦波形成的原理大致相同,在这里将不作详细说明。三角波输出程序见附录。54方波的形成和实现方波是我们最常用的一种波形,并且常常作为一种标准信号应用在各个领域,凌阳SPCE061A提供了一种很好的方波发生机制,就是APWM调制,通过写入P_TIMERA_CTRL700BH单元的第69位,可选择设置APWM输出波形的脉宽占空比;同理,写入P_TIMERB_CTRL700DH单元的第69位,便可选择设置BPWM输出波形的脉宽占空比。我们可以将IOB8设置成同相输出端口,通过设置P_TIMERA_CTRL写700BH的第05位来选择TIMERA的时钟源时钟源A、B。设置该单元的第69位(如图12所示),TIMERA将输出不同频率的脉宽调制信号,即对脉宽占空比输出APWM进行控制。这里为了得到最标准的波形采用这种方式来实现标准方波。如图56所示就是我们进行APWM调制的原理图。图56APWMO信号时序图安徽工业大学毕业设计(论文)说明书共页第28页装订线总结信号发生器是一种常用的电子仪器,在做实验、进行产品研制和调试以及系统测试中都是必不可少的,而传统的信号发生器性能是非常有限的,满足不了有些用户的要求。直接数字式频率合成技术问世之初,构成DDS元器件的速度限制和数字化引起的噪声这两个主要缺点阻碍了DDS的发展与实际应用。近几年超高速数字电路的发展以及对DDS的深入研究,DDS的最高工作频率以及噪声性能已接近并达到锁相频率合成器相当的水平。随着这种频率合成技术的发展,现已广泛应用于通讯、导航、雷达、遥控遥测、电子对抗以及现代化的仪器仪表工业等领域。本文研制的基于SPCE061单片机的函数信号发生器的主要内容如下(1)能产生正弦波、方波、三角波、锯齿波几种周期性波形,并且可通过调节变形成其它相关波形。(2)用键盘输入编辑可生成正弦波由基波及其谐波线性组合的波形,以及各次谐波单独的波形。(3)输出波形的频率范围为100MHZ100KHZ;可以通过键盘输入粗调频率,通过外部中断可同步调节频率,具有在低频部分

温馨提示

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

最新文档

评论

0/150

提交评论