基于STM32的可编程函数信号发生器设计
【摘要】该文设计了一种基于STM32和DAC8871的可编程函数信号发生器。该装置由STM32子系统、DA转换电路、电压基准电路、Flash存储电路、波形选择电路及显示电路六大部分组成。该装置采用SPI通信方式,可同时产生六种幅值可调(可达±15V)、频率可变的不规则波形信号。
【关键词】STM32;DA转换;不规则波形;函数信号发生器流程图转换为ns图
引言
函数信号发生器是电子测量、电子设备开发及电子工程相关课程实验必备的仪器设备之一,除供通信,仪表和信号采集处理,自动控制系统测试用外,还广泛用于其他非电测量领域。不过,现今多数函数信号发生器仅能产生固定的常规波形信号,如:三角波、阶梯波、方波及正弦波等。为此,笔者提出一种基于STM32的可编程函数信号发生器的设计方法。该方法以STM32单片机为核心,从Flash芯片读取波形信息,通过DAC8871进行DA转换,得到各种非常规波形,并可通过外部中断口实现不同波形的选择,而且可通过电压基准电路调节和末端运放调节输出信号的增益来实现波形幅度的调节,能满足产生任意波形的需求。
1.系统总体结构
本装置的总体结构图如图1所示。本系统主要分为STM32子系统、DA转换电路、电压基准电路、Flash存储电路、波形选择电路以及显示电路六大部分。首先,系统从Flash芯片中读取不规则波形数组信息,通过SPI2口传送入STM32,由外部中断口检测波形的选择,再通过SPI1口将波形数字信号传送到DAC8871进行DA转换,经过电压基准电路以及运放电路对其幅度的调节后,最终输出不规则的模拟信号波形。
图1 系统总体结构图
2.硬件设计
2.1 STM32子系统及Flash存储电路
STM32子系统及Flash存储电路图如图2所示。STM32子系统以意法半导体(ST)公司生产的32位中容量ARM芯片STM32F103RBT6[1]为核心,结合复位电路、晶振电路、PL2303接口转换电路及电源电路构成。Flash存储电路主要由一款8MB存储容量的Flash芯片W25Q64BVSIG[2]组成,采用SPI串行通信模式。如图2所示,STM32子系统与Flash存
储电路将通过SPI2口进行通信。图2中key1—key6分别为波形选择按键,该装置采用外部中断触发方式进行输出波形的选择切换。该装置显示器采用LCD1602,如图1中RB[0..7]为数据端,RS、RW、E分别为显示器读写控制端和使能端。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。