欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于单片机的函数信号发生器设的正文.docx

    • 资源ID:2366539       资源大小:400.71KB        全文页数:54页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于单片机的函数信号发生器设的正文.docx

    1、基于单片机的函数信号发生器设的正文目录第一章 绪 论 1第二章 方案设计与论证 42.1方案一: 42.2方案二: 42.3方案比较 4第三章 专用器件说明 63.1 SPCE061单片机介绍 63.1.1性能: 63.1.2 应用领域 73.1.3 结构概览 73.1.4通用I/O口的使用: 73.1.5 D/A转换 83.1.6 IDE开发平台的使用 103.1.7 PWM输出 103.1.8 SPCE061A的时钟和定时器/计数器 103.2 DM-1602显示器 153.3 运算放大电路 173.3.1 集成运放的电路结构和特点 173.3.2 集成运放电路的组成及各部分的作用 173

    2、.3.3 运算放大器电压传输特性 173.3.4集成运放的主要性能指标 18第四章 系统的硬件电路设计 204.1系统框图 204.2 SPCE061A基本工作电路设计 204.3键盘电路设计 214.4显示电路设计 224.4信号输出电路设计 23第五章 软件设计 245.1主程序流程图 245.2正弦波信号形成方法 265.3三角波、锯齿波的形成 275.4方波的形成和实现 27总 结 28致 谢 29参考文献 30附录1 程序 31第一章 绪 论测量仪器从宏观上可分为两大类,即激励和检测,激励仪器主要是各类信号发生器。信号发生器按工作原理可分为:调谐信号发生器、锁相和合成信号发生器。(1

    3、) 调谐信号发生器是由调谐振荡器构成。传统调谐信号发生器都是由调谐振荡器和统调的调幅放大器(输出放大器)加上一些指示电路构成。这种信号发生器结构复杂、频率范围窄,而且可靠性、稳定性较差,但其价格低廉。随着半导体器件的发展,其性能有所改善。(2) 锁相信号发生器是由调谐振荡器通过锁相的方法获得输出信号频率的信号发生器。这种信号发生器频率精度和稳定度高,但要实现快速、程控比较困难,同时输出信号的频率分辨率较差。(3) 合成信号发生器是采用频率合成的方法构成的信号发生器。由于合成信号发生器具有较高的频率稳定度,很容易实现数字显示频率,因此,频率分辨率高和频率的设定重复性好,以及能方便实现频率的程序控

    4、制是合成信号发生器的重要特点。随着数字集成电路和微电子技术的发展,直接数字合成技术(Direct Digital Synthesis,简称DDS)将先进的数字处理技术与方法引入信号合成领域,优越的性能和突出的特点使其成为现代频率合成技术中的佼佼者。DDS器件采用了高速数字电路和高速D/A转换技术,具备了频率转换时间短、相对带宽宽、频率分辨率高、输出相位连续和相位可快速程控切换等优点,可以实现对信号的全数字式调制。而且,由于DDS是数字化高密度集成电路产品,芯片体积小、功耗低,因此可以用DDS构成高性能频率合成信号源来取代传统频率信号源产品。图1.1 DDS技术原理框图1.2 DDS的工作原理直

    5、接数字式频率合成技术原理如图1.1 所示。以合成正弦波为例,首先,把一个周期的弦波按一定的相位间隔分成若干离散点,求出相应点的正弦函数值,并用二进制数表示,将这些数值依次写入ROM中,构成一个正弦表,频率合成是在标准时钟的作用下,相位累加器按一定的间隔输出相应相位点的正弦函数值,经D/A 转换器转换为阶梯状的正弦波,最后经低通滤波器对阶梯正弦波进行平滑滤波,即可输出较为标准的正弦波在特定的时钟频率下,输出的正弦波频率取决于相位累加器累加数值K,即fo=Kfc /2A(式1一1)由1-1式可知,K值越大,则正弦波的频率越高,通过改变频率控制字K可以改变DDS输出频率,对输出信号的相位控制是通过给

    6、相位累加器设置不同的初值来实现的。DDS技术具有传统信合成方法所不具备的许多特点:(1) 频率分辨率高:由,可得分辨率为f=/2N ,若时钟频率不变,DDS的频率分辨率就由相位累加器的位数N决定。因为N一般取得很大。(2) 频率切换快DDS 是一个开环系统,无任何反馈环节,这种结构使得DDS的频率转换时间极短。在DDS的频率控制字改变之后,需经过一个时钟周期之后按照新的相位增量累加,才能实现频率的转换。因为频率转换的时间等于的传输时间,也就是一个时钟周期的时间。时钟频率越高,转换时间越短。再加上低通滤波器为主的器件响应时间很短,使得高速DDS系统的频率切换时间可达到纳秒级。(3) 输出相对带宽

    7、较宽输出频率带宽为50% (理论值),考虑到低通滤波器的特性和设计难度以及对输出信号杂散的抑制,DDS实际输出频率范围可达:040%。(4) 频率变化时相位连续改变DDS输出频率,实质就是改变相位增长率。而相位函数的曲线是连续的只是在改变频率的瞬间其频率发生了突变,因而保持了信号相位的连续性。(5) 输出信号灵活在DDS内部加上相应控制如FM调频控制、PM调相控制和AM调幅控制,即可方便灵活地实现调频,调相和调幅功能,产生FSK, PSK, ASK和MSK等信号。改变ROM中存储的数据,可以实现任意波形输出。(6) 杂散抑制差由于DDS采用全数字结构,不可避免地引入了杂散。其来源主要有三个:相

    8、位累加器相位舍位造成的杂散;幅度量化误差(由存储器有限字长引起)造成的杂散,DAC非理想特性造成的杂散。(7) 输出带宽较窄由于DDS内部DAC和波形存储器的工作速度限制,使得DDS输出的最高频率有限,不能直接运用于微波频段。1.3 本文的主要研究内容本论文的任务是根据信号发生器的特点和应用情况,结合新一代高性能芯片设计一种使用简单、性能优良的信号发生器。该信号发生器可输出正弦波、三角波、方波;若再进一步开发控制算法,可具有AM, FM, PM, FSK, PSK, ASK调制功能以及扫频等功能。本设计的主要工作如下:(1) 比较多种信号发生器的工作原理,分析它们的优缺点,最后确定了以DDS技

    9、术为核心研制信号发生器的方案。对DDS的工作原理和优缺点做了简单的介绍和分析。比较了不同类型的DDS芯片的特点,并做出选择(2) 系统总体方案设计。将DDS信号发生器的系统分为2部分:信号的产生与控制、人机交互以及信号的处理。(3) 系统的硬件设计。完成系统的硬件总体设计,并就实际设计中出现的问题提出了处理的方法。(4) 系统软件设计部分主要完成:正弦波、三角波、方波的控制输出。第二章 方案设计与论证2.1方案一:本方案直接采用凌阳SPCE061A作为波形发生器。由键盘键入信号波形、频率选择,经MCU换算,得出的具体控制方法;通过两路DAC输出模拟信号。凌阳SPCE061A在这方面的设计为我们

    10、提供了极大的方便,用它实现的好处在于,外围电路极其简单, DAC的编程方面又提供及其便利的编程环境。外围电路的设计包括三大部分,第一是键盘控制电路的设计,这里采用4*4键盘,由IOA的低八位进行控制,把键盘上的行和列分别接在IOA0IOA3和IOA4IOA7上,采用外部中断来中断所输出波形,以便进入下一波形的编辑和输出。第二是显示电路的设计,这里为了能显示输出波形参数,采用带数据缓存器和驱动的LCD1602显示屏。这样只占用11个I/O口即可完成显示设计要求。第三是滤波和电压转换电路的设计,滤波采用低通滤波器,滤除DAC转换过程中形成的高频小锯齿波。另外由于凌阳SPCE061A单片机DAC输出

    11、为电流输出,为满足达到5V的电压输出,外接OP07运算放大器进行放大,加1千欧姆电阻进行电流信号到电压信号的转换。本设计的特点是全面采用数字电路方案,因而工作稳定可靠。利用单片机控制管理,使频率设置和占空比调整等操作可用键盘输入,十分方便。2.2方案二: 本设计方案采用多波形宽频率范围信号发生器MAX038 等新器件产生波形和频率,控制与管理电路部分使用SPCE061A单片机以及键盘显示电路。MAX038是一个精密高频波形产生器。它能产生频率高达20MHz的正弦波、三角波、方波等脉冲信号,其压控振荡器的频率分粗调和细调两层控制。在本电路中,用于粗调的控制电压(电流)由一个12位的DAC产生,使

    12、输出频率近似等于N倍基准频率。而细调电压则由数字锁相电路MC145151和环路滤波器MAX427产生,由锁相反馈环将频率fo = Nfr锁定。这种方案的优点是频率合成器工作更可靠,锁定更迅速。另外MAX038还包括占空比调整电路、波形同步电路、相位检测电路、波形切换开关和电压基准源等电路,所需外部元件少,使用很方便。控制和管理电路由SPCE061A单片机及外围电路组成。其主要用于对键盘输入的波形和频率选择等数据进行译码,计算出相应的控制参数,控制频率合成器输出正确的信号,并将其频率和波形参数用LED显示出来。对于小型通用信号产生器而言,这是一个比较理想的设计方案。2.3方案比较第一种方案设计外

    13、围电路简单,能够满足本设计的要求,这里考虑到短时间内设计既要成型,采用第一种方案。第二种设计方案的波形调节范围较小,可开发扩展的空间很小。比较适合用到专门的波形产生。所以在本次毕业设计我选择第一种方案。第三章 专用器件说明3.1 SPCE061单片机介绍SPCE061A 是继nSP系列产品SPCE500A等之后凌阳科技推出的又一款16位结构的微控制器。与SPCE500A不同的是,在存储器资源方面考虑到用户的较少资源的需求以及便于程序调试等功能,SPCE061A里只内嵌32K字的闪存(FLASH)。较高的处理速度使nSP能够非常容易地、快速地处理复杂的数字信号。因此,与SPCE500A相比,以n

    14、SP为核心的SPCE061A微控制器是适用于数字语音识别应用领域产品的一种最经济的选择。 3.1.1性能: 16位µnSP&8482;微处理器;工作电压(CPU) VDD为2.43.6V (I/O) VDDH为2.45.5VCPU时钟:0.32MHz49.152MHz ;内置2K字SRAM;内置32K FLASH;可编程音频处理;晶体振荡器;系统处于备用状态下(时钟处于停止状态),耗电仅为2µA3.6V;2个16位可编程定时器/计数器(可自动预置初始计数值);2个10位DAC(数-模转换)输出通道;32位通用可编程输入/输出端口;14个中断源可来自定时器A / B,时基

    15、,2个外部时钟源输入,键唤醒;具备触键唤醒的功能;使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据;锁相环PLL振荡器提供系统时钟信号;32768Hz实时时钟;7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器;声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;具备串行设备接口;具有低电压复位(LVR)功能和低电压监测(LVD)功能;内置在线仿真电路ICE(In- Circuit Emulator)接口;具有保密能力;具有WatchDog功能。3.1.2 应用领域 􀂋 家用电器控制器:冰箱、空调、洗衣机等白色家

    16、电 􀂋 仪器仪表:数字仪表(有语音提示功能) 􀂋 电表、水表、煤气表、暖气表 􀂋 工业控制 􀂋 智能家居控制器 􀂋 通讯产品:多功能录音电话、自动总机、语音信箱、数字录音系统产品 􀂋 医疗设备、保健器械(电子血压计、红外体温监测仪等) 􀂋 体育健身产品(跑步机等) 􀂋 电子书籍(儿童电子故事书类)、电教设备等 语音识别类产品(语音识别遥控器、智能语音交互式玩具等)3.1.3 结构概览 图3.1 结构概览3.1.4通用I/O口的使用:SPCE061A提供

    17、了位控制结构的I/O端口,每一位都可以单独用于数据输入或输出。每个独立的位可通过以下3种控制向量来作设定: 1. 数据向量Data 2. 属性向量Attribution 3. 方向控制向量Direction 每3个对应的控制向量组合在一起,形成一个控制字,用来定义相对应I/O端口位的输入输出状态和方式。例如,假设需要IOA0是下拉输入引脚,则相对应的Data、Attribution和Direction的值均被设为“0”。如果需要IOA1是带唤醒功能的悬浮式输入引脚,则Data、Attribution和Direction的值被设为“010”。与其它的单片机相比,SPCE061A除了每个I/O口可

    18、以单独定义其状态外,每个对应状态下的I/O端口性质电路都是内置的,在实际的电路中不需要再外接。例:设A口为带下拉电阻的输入端口,在连接硬件时不用再外接下拉电路。 A口和B口的Data、Attribution和Direction的设定值均在不同的寄存器里,用户在进行I/O端口设置时要特别注意这一点。I/O端口的组合控制设置如表3.1: 􀀁 表3.1 I/O端口的控制向量组合Direction Attribution Data 功能 是否带唤唤醒功能功能描述0 0 0 下拉* 是 带下拉电阻的输入引脚0 0 1 上拉 是 带上拉电阻的输入引脚0 1 0 悬浮 是 悬浮式输入引脚0

    19、 1 1 悬浮 否 悬浮式输入引脚* 1 0 0 高电平输出 (带数据反相器) 否带数据反相器的高电平输出 (当向数据位写入“0” 时输出“1”) 1 0 1 低电平输出 (带数据反相器) 否带数据反相器的低电平输出 (当向数据位写入“1”时输出“0”) 1 1 0 低电平输出 否 带数据寄存器的低电平输出 (无数据反相功能) 1 1 1 高电平输出 否 带数据寄存器的高电平输出 3.1.5 D/A转换SPCE061A为音频输出提供两个DAC通道:DAC1和DAC2,分别由经由DAC1和DAC2引脚输出。DAC的输出范围从0x0000 到0xFFFF。如果DAC的输出数据被处理成PCM数据,必

    20、须让DAC输出数据的直流电位保持为0x8000,且仅有高10位的数据有作用。DAC1和DAC2的输出数据应写入P_DAC1(写) ($7017)和P_DAC2(写) ($7016)单元。上电复位后,两个DAC均被自动打开,此时会消耗少量的电流(几毫安)。所以如不需要用它们,尽量将P_DAC_Ctrl(写)($702AH)单元的第1位设为1,关闭DAC输出。P_DAC2(读/写)(7016H) DAC2是个10位的D/A 转换单元。在DAC方式下,该单元带有10位的缓冲寄存器DAR2。表3.2 P_DAC2(读/写)的DAR2P_DAC2(写):通过此单元直接写入10位数据到10位寄存器DAR2

    21、,来锁存DAC2的输入数值(无符号数)。P_DAC2(读):从DAR2内读出10位数据。P_DAC1(读/写)(7017H) DAC1是个10位的D/A 转换单元。在DAC方式下,该单元带有10位的缓冲寄存器DAR1。表3.3 P_DAC1(读/写)的DAR1P_DAC1(写):通过此单元直接写入10位数据到10位寄存器DAR1,来锁存DAC1的输入数值(无符号数)。P_DAC1(读):从DAR1内读出10位数据。P_DAC_Ctrl(写) (702AH) 表3.4 P_DAC_Ctrl单元的b3b8的控制功能DAC音频输出方式的控制单元(如表3.4所示),其中第58位用于选择DAC的数据锁存

    22、方式;第3、4位用来控制A/D转换方式;第1位为0 ,用于双DAC音频输出。b9b15为保留位。表3.4详细地列出了P_DAC_Ctrl单元的b3b8的控制功能。3.1.6 IDE开发平台的使用nSP 集成开发环境集程序的编辑、编译、链接、调试以及仿真等功能为一体。具有友好的交互界面、下拉菜单、快捷键和快速访问命令列表等,使编程、调试工作方便且高效。此外,它的软件仿真功能可以在不连接仿真板的情况下模拟硬件的各项功能来调试程序。1 .新建项目的方法步骤:用鼠标左键单击 File 下拉菜单 New 弹出New对话框,在该窗口中选中Project标签并在File的文本框中键入项目的名称。在Locat

    23、ion下的文本框中输入项目的存取路径或利用该文本框右端的浏览按钮制定项目的存储位置用鼠标左键单击New对话框里的OK按钮,则项目建立完成。2. 在项目中建立C文件的方法:在新建项目下, 点击菜单 File 下拉菜单 New 弹出New对话框。点击nSP IDE C File, 在 File 下的文本框内键入文件名称, OK。3.在项目中新建汇编文的方法:在新建项目下, 点击菜单 File 下拉菜单 New 弹出新建文件/项目的对话框。点击nSP IDE ASM File ,在 File 下的编辑框内写入文件名称,OK4.在项目中新建头文件的方法: 在新建项目下, 点击菜单 File 下拉菜单

    24、New 弹出新建文件/项目的对话框。点击nSP IDE H File,在 File 下的编辑框内写入文件名称,OK。5在项目中新建文本文件在新建项目下, 点击菜单 File 下拉菜单 New 弹出新建文件/项目的对话框。点击nSP IDE Text File,在 File 下的编辑框内写入文件名称,OK。6在项目中添加删除文件的方法:可通过菜单途径用鼠标左键单击Project菜单里Add to Project选项中的Files 或Resource子项,激活Add Files对话框。3.1.7 PWM输出凌阳SPCE061A提供了一种很好的方波发生机制,就是APWM调制,通过写入P_TimerA

    25、_Ctrl($700BH)单元的第69位,可选择设置APWM输出波形的脉宽占空比;同理,写入P_TimerB_Ctrl($700DH)单元的第69位,便可选择设置BPWM输出波形的脉宽占空比。我们可以将IOB8设置成同相输出端口,通过设置P_TimerA_Ctrl(写)($700BH)的第05位来选择TimerA的时钟源(时钟源A、B)。设置该单元的第69位,TimerA将输出不同频率的脉宽调制信号,即对脉宽占空比输出APWM进行控制。这里为了得到最标准的波形采用这种方式来实现标准方波。3.1.8 SPCE061A的时钟和定时器/计数器SPCE061A时钟电路由两部分组成-实时时钟产生电路与频

    26、率变换电路。1)实时时钟RTC(Real Time Clock)nSP的时钟源电路是采用晶体振荡器电路,如图2.10为其接线图。外接晶振为32768 Hz,(推荐使用外接32768Hz 晶振,因RC 阻容振荡的电路时钟不如外接晶振准确)。32768Hz 为实时时钟,通过其分频可提供多种实时时钟中断,常用于钟表、延时以及其它与时间相关类产品。(例用作唤醒的中断来源IRQ5_2Hz,系统每隔0.5 秒被唤醒一次,由此得精确计时基准)。RTC振荡器有两种工作方式:强振模式和自动弱振模式。用户可以根据需要调整该值。2)工作频率设置SPCE061A的工作时钟频率取决于系统时钟 (Fosk)与CPU时钟(

    27、CPUCLK)。这两时钟电路由PLL锁相环倍频电路和分频电路组成,如图211所示。PLL锁相环电路将实时时钟32768Hz倍频,调整至系统时钟Fosk。分频电路将系统时钟Fosk分频,得到CPU时钟(CPUCLK)。 系统时钟选频P_SystemClock单元的第7、6、5位 系统时钟选频P_SystemClock单元的第2、1、0位图3.2 时钟系统结构系统预设的Fosk频率为24.576MHz,CPUCLK频率为Fosk8。用户可以通过对(7013H)编程来调整Fosk与CPUCLK的频率。P_SystemClock单元控制功能参见表3.5。表3.5 P_SystemClock (7013

    28、H)单元功能位B7 b5b4*b3B2 b0功能Fosc选择b7b6b5Fosc00024.576MHz*00120.48 MHz01032.768 MHz01140.96 MHz1-49.152 MHz睡眠状态下RTC工作状态设置1:在睡眠状态下,32768Hz时钟仍处于工作状态(预设);0:睡眠状态下,32768Hz时钟被关闭RTC强弱模式设置1:RTC时钟处强振模式;0:RTC时钟处于自动弱振模式(预设)CPUCLK选择b2b1b0CPUCLK000Fosc001Fosc/2010Fosc/4011Fosc/8*100Fosc/16101Fosc/32110Fosc/64111停止(睡眠

    29、状态) * 只有当b0b2 同时被设为“1”时(即睡眠状态)b4 设置才有效。*上电复位或系统从备用状态(睡眠状态)被唤醒后,预设的Fosc=24.576MHz ,CPU 时钟频率为Fosc/8。可见:b0 b2位用来改变CPUCLK时钟频率与工作状态,若将第02 位设为“111”可以使CPU 时钟停止工作,系统切换至低功耗的睡眠状态。b3、b4位用来设置实时时钟RTC的工作模式。B3位用来设置RTC工作方式:RTC振荡器有两种工作方式:强振模式和自动弱振模式;b4位用来设置RTC振荡器的睡眠状态。处于强振模式时,RTC 振荡器始终运行在高耗能的状态下。处于自动弱振模式时:系统上电复位(pow

    30、er on reset) 后的前7.5 秒内处于强振模式,然后自动切换到弱振模式以降低功耗。CPU被唤醒后预设的时钟频率为Fosc/8,用户可以根据需要调整该值。b5 b7位可以改变系统时钟Fosc的频率。3)时间基准信号时基信号发生器的结构如图3.3所示。通过对32768Hz实时时钟源分频而产生时基信号。产生的信号可分三类:时基信号产生器的频率选择器TMB1为TimerA的 B时钟源 提供各种频率选择信号;TMB1、TMB2为中断系统的(IRQ6)中断源提供信号;时基信号产生器还可以通过分频产生2Hz、4Hz、1024Hz、2048Hz及4096Hz的时基信号,为中断系统提供各种实时中断源(LRQ4和IRQ5)信号。P_Timebase_Setup(写) (700EH) 时基信号发生器通过编程该单元来选择时基信号频率。该单元各位的功能描述见表3.6。表3.6 P_Timebase_Setup(700EH) 单元功能描述位B15 b4b3 b2b1 b0功能- TMB2频率选择b1b0TMB200128Hz01256 Hz10512 Hz111024Hz*TMB2预设为128HzTMB1频率选择b1b0T


    注意事项

    本文(基于单片机的函数信号发生器设的正文.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开