基于ARM与DDS的高精度正弦信号发生器设计
扫描二维码
随时随地手机看文章
摘要:随着电子技术的不断发展与进步,现代的电子测量、通信系统越来越需要有高精度和灵活的正弦信号源进行测量和调试。为了满足外场试验对便携式信号发生器的需要,利用直接数字合成技术,通过ARM芯片STM32实现对DDS芯片ML2035的控制,产生从0~25 kHz的正弦信号。结论表明,使用ARM和ML2035构成的正弦信号源的频率具有精度高的特点,设计方法对于特定场合的应用具有借鉴意义。
关键词:正弦信号源;STM32;DDS;ML2035
正弦信号发生器是一种广泛应用的信号源。随着电子技术的不断发展与进步,现代的电子测量、通信系统越来越需要有高精度和灵活的正弦信号发生器进行测量和调试。而ARM芯片在当今由于其高性能、低成本、低功耗,可扩展性强,正被广泛应用于便捷式仪器的设计。因此,为了满足对仪器便捷、灵活及待机时间长等的要求,文中利用DDS技术通过ARM控制,设计了一种便携式的正弦信号发生器,该信号发生器的频率范围在0~25 kHz,频率分辨率为1 Hz,输出幅度为5 V。
1 系统总体设计方案
对系统总体设计方案充分理解的基础上,按照模块化的设计思想,合理划分各个不同单元待实现的功能,从而形成了系统总体方案设计框图,如图1所示。
此方案的工作原理及各部分的功能如下:
1)电平转换模块主要是完成232电平和TTL电平的转换,以便通过串口把检测到的有效值发送到上位机界面进行同步显示。
2)ARM处理器是整个方案的控制核心,采用的是STM32芯片。其接收操作人员通过上位机软件发出的各种操作指令以及从按键上输入的指令,按照这些指令的要求,控制信号产生芯片产生所需的幅度、频率信号。
3)按键模块是控制系统中人机交互的一部分,采用的是4个独立键盘。操作人员通过键盘输入想要产生波形的参数,送给处理器进行处理。
4)显示模块采用NOKIA5110液晶显示屏显示模块。是将要产生的波形信息利用显示屏进行显示,可以使操作人员很直观的知道波形的幅值和频率。
5)DDS模块是合成所需频率的合成器,该模块选用的ML2035芯片。模块通过ARM处理器进行控制产生所需的频率。
6)信号放大模块完成对信号的幅度放大,满足正弦信号幅值实际应用的需求。
2 系统硬件设计
2.1 处理器电路设计
处理器电路设计包括STM32F103RCT6芯片所用外围管脚连接、晶振电路设计、去耦电路设计、复位电路设计、JTAG调试电路设计。
2.1.1 晶振电路
晶振是为处理器STM32提供频率基准的元器件,属于最小系统中不可或缺的一部分。晶振电路用于向处理器提供工作时钟。本系统最小系统晶振电路即时钟源包括两部分:
1)在引脚OSC_IN和OSC_OUT跨接晶振Y1和电容C16、C17共同构成电容三点式振荡电路;
2)在引脚PC14和PC15跨接晶振Y2和电容C17、C18共同构成电容三点式振荡电路。
本系统使用无源晶振8MHz作为系统的主振荡器,一个32.768kHz的晶振作为内置实时时钟(RTC)振荡器。晶体振荡器的连接如图2所示。
2.1.2 去耦电路
电路中存在模拟和数字电源,需要加入电感和电容组成去耦电路。STM32中有3组VDD/VSS管脚,有1组VDDA/VSSA管脚。尽管所有的VDD和所有VSS在内部相连,在芯片外部仍然需要连接所有的VDD和VSS。模拟电源与数字电源去耦电路如图3所示。
2.1.3 复位电路
复位电路的基本功能是让系统上电时提供复位信号,直至电源稳定后,撤销复位信号。本系统采用简单的“RC+按键”复位形式,该复位电路可以实现上电自动复位和手动按键复位。如图4为复位电路原理图。
2.1.4 JTAG电路
标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。系统的JTAG除了上面的4 线外,还与处理器连接接了测试系统复位信号线TRST,并且还必须把测试时钟返回信号RTCK拉低。系统20针JTAG电路连接如图5所示。
2.2 DDS模块电路设计
DDS芯片选择ML2035,本发生器输出的低频信号主要由STM32通过SPI1接口来控制ML2035产生。ML2035原理图如图6所示。ML2035的外围晶振选用6.5536 MHz可以满足技术要求,使用的是STM32的SPI1接口。PA5为SPI1的时钟端(SCK),PA6为主机输入从机输出端(MISO),PB4(NSS)为从机选择端。
2.3 显示电路设计
在NOKIA5110液晶显示屏中可以显示出信号源的频率和幅值,本系统LCD和STM32之间采用的是SPI串行数据传输,采用直接背光的形式,液晶显示电路的设计如图7所示。
2.4 按键电路设计
采用4个独立按键,每个按键占用一条I/O线,按键与处理器的PA0~PA3进行连接,按下为0,不按为1,如图8按键电路所示。按键电路主要完成4个功能,对初始化的频率值加、减和选择+5 V、+10 V输出。
2.5 信号放大电路设计
采用LM321设计信号放大电路。LM321是高增益,内部频率补偿运算放大器。信号放大电路图如图9所示。
2.6 平转换电路的设计
RS-232C电平与单片机的TTL电平不匹配,通讯时必须对两种电平进行转换。系统利用的是处理器的串口1,所以处理器的PA9和PA10还要与MAX232进行连接。电平转换电路原理图设计如图10所示。
3 系统软件设计
3.1 ML2035驱动程序
ML2035驱动程序是通过处理器STM32的SPI1口发送控制字给ML2035,包括SPI1的初始化程序和SPI1读写程序,程序如下:
3.2 显示与接口软件程序
3.2.1 NOKIA5110液晶显示程序
NOKIA5110液晶显示程序的流程图如图11所示,本系统写NOKIA5110显示程序采用CPIO模拟SPI。
程序代码编写如下:
3.2.2 按键扫描程序
按键扫描程序依次扫描4个按键,使用一个u8变量的低4位存储扫描结果,如果对应位上的按键被按下,则该位置0,否则,置1;然后处理扫描结果,依次判断u8变量的低4位,如果某个按键被按下,则做出相应的处理。按键程序流程图如图12所示。
按键扫描部分程序如下:
4 系统调试
由DDS的基本原理可以知道,输出的正弦信号将有可能出现误差。但是本系统对精度要求相当高,所以进行了信号的精度测试。对于不同的参考时钟,将产生不同程度的频率误差,表1列举了ML2035在0~25 kHz频率范围内,不同输出信号产生的误差。
从表1中可以看出,在小于100 Hz,相对误差较小,基本满足条件。在100~25 000 Hz,可能因为干扰信号加强,实验仪器误差、人为因素产生的误差,导致误差相对较大,但是没超过5 Hz。
5 结论
系统以DDS模块为研究对象,基于ARM处理器、DDS技术、显示技术、EDA技术等完成高精度、便携且操作简单方便的正弦信号产生模块的设计。实验结果表明,利用DDS技术,有低成本、低功耗、频率切换时间短,频率分辨率高等特点;ARM处理器STM32芯片应用于信号源设计,具有控制功能强,电路简单等特点;ML2035芯片所产生的正弦信号能达到很高的精度,且易于调试,因此它被广泛用于正弦信号发生模块的相关领域,为设计便携信号源提供了良好的芯片选择。