站内搜索
发作品签到
天空星-信号发生器
专业版

天空星-信号发生器

简介

基于STM32F407ZE开发的双通道函数/任意波形发生器,通过片内12位DAC直接软件合成波形,支持30+种标准波形与自定义波形,集成参数扫描、频率计功能。

简介:基于STM32F407ZE开发的双通道函数/任意波形发生器,通过片内12位DAC直接软件合成波形,支持30+种标准波形与自定义波形,集成参数扫描、频率计功能。
复刻成本:73.22

开源协议

GPL 3.0

创建时间:2026-02-24 21:05:57更新时间:2026-07-06 10:30:21

描述

🧪 SG-28 双通道函数/任意波形发生器

一颗 STM32,两根 DAC 腿,30+ 种波形,无限可能。
全开源 · 零专用DDS芯片 · 纯软件数字合成


📌 一句话简介

SG-28 是一款基于 STM32F407ZE + FreeRTOS 的全开源双通道函数/任意波形发生器。无需外挂 DDS 或专用 DAC 芯片,纯靠片内 12 位 DAC 软件合成 30+ 种标准波形+自定义任意波,同时集成频率计/计数器、参数扫描、USB 通信等功能,2.8 寸全彩 LCD 可视化操控。目标是:用最低的成本,做最趁手的桌面信号源。


🚀 核心亮点

维度说明
⚡ 零专用芯片纯软件波形合成,无 DDS、无专用 DAC,BOM 成本极致压缩
🔊 双通道独立CH1/CH2 两路完全独立输出,可独立调参、独立开关、也可同步联动
🎛️ 30+ 种波形正弦/方波/三角/锯齿/脉冲/指数/对数/噪声/心电图/调幅调频… 支持自定义任意波
📏 全参数可调频率 (1Hz100kHz) · 幅度 (1mV3.3V) · 偏置 · 占空比 · 相位,旋钮一扭到位
📡 参数扫描频率/幅度/偏置/占空比自动扫描,线性/对数可选,正/反/往返三方向
🔬 频率计模式测量外部信号频率/周期/脉宽/占空比,闸门 1s/10s/100s,支持脉冲计数
🖥️ 2.8寸彩屏320×240 TFT-LCD,FSMC 高速驱动,波形实时预览
💾 掉电存储20 组用户配置 + 64 组自定义波形存入 SPI Flash,开机即恢复
🔌 USB一线通Type-C 供电 + 串口通信,插电脑即用,支持上位机远程控制
🧠 FreeRTOS 多任务波形合成、界面刷新、按键扫描、频率测量各司其职,响应迅速

🧱 系统组成

┌──────────────────────────────────────────────┐
│  🧠 主控: STM32F407ZE (Cortex-M4 @168MHz)   │
│       双 DAC · 硬件 FPU · 192KB SRAM         │
├──────────────────────────────────────────────┤
│  🎯 波形输出: 片内 DAC1 + DAC2 (12位)        │
│              PA4 / PA5 直接输出模拟信号       │
├──────────────────────────────────────────────┤
│  🖥️ 人机交互: 2.8" TFT-LCD + EC11 旋钮 + 按键 │
├──────────────────────────────────────────────┤
│  📦 数据存储: W25Q64 (8MB SPI Flash)         │
├──────────────────────────────────────────────┤
│  📡 频率测量: TIM2_CH1 外部信号输入          │
├──────────────────────────────────────────────┤
│  🔌 电源通信: Type-C USB (5V 供电 + 串口)    │
└──────────────────────────────────────────────┘

📊 核心技术指标

参数指标
主控芯片STM32F407ZET6 (Cortex-M4, 168MHz, 硬件 FPU)
通道数2 通道(完全独立)
波形类型30+ 种标准波形 + 用户自定义任意波
频率范围1Hz ~ 100kHz,分辨率 1Hz
幅度范围1mV ~ 3.3Vpp,分辨率 1mV
偏置范围0V ~ 3.3V,分辨率 1mV
占空比1% ~ 99%(矩形波/脉冲波)
相位调节0°~ 359°,分辨率 1°
DAC 分辨率12 位(0~4095)
扫描模式线性 / 对数;正向 / 反向 / 往返
扫描时长10ms ~ 90s
频率计闸门1s / 10s / 100s
显示屏2.8 寸 TFT-LCD,320×240,FSMC 接口
用户存储20 组参数 + 64 组自定义波形
供电方式Type-C USB 5V
操作系统FreeRTOS (CMSIS-RTOS v2)
开发环境Keil MDK-ARM

📐 软件分层架构

┌─────────────────────────────────────────────┐
│  🧩 应用层                                  │
│   · 界面渲染 · 菜单逻辑 · 波形可视化       │
├─────────────────────────────────────────────┤
│  ⚙️ 业务逻辑层                               │
│   · 波形合成算法 · 扫描控制 · 频率测量     │
│   · 参数存储加载 · 同步控制 · 上位机通信   │
├─────────────────────────────────────────────┤
│  🧠 系统内核层 (FreeRTOS)                    │
│   · 多任务调度 · 信号量 · 消息队列 · 内存  │
├─────────────────────────────────────────────┤
│  🔌 硬件驱动层 (STM32 HAL库)                 │
│   DAC · TIM · GPIO · SPI · FSMC · USART     │
└─────────────────────────────────────────────┘

🎵 预置波形一览

类别波形
基础波形正弦波、矩形波、CMOS方波、脉冲波、直流电平
锯齿/三角三角波、上升锯齿波、下降锯齿波
阶梯波阶梯三角波、正阶梯波、反阶梯波
指数/对数正指数/反指数、正下降指数/反下降指数、正对数/反对数、正下降对数/反下降对数
整流波正全波整流、负全波整流、正半波整流、负半波整流
特殊脉冲洛伦兹脉冲、多音波、Sinc脉冲、窄三脉冲、梯形波
调制波调幅(AM)、调频(FM)、线性调频(LFM)
噪声均匀白噪声、高斯白噪声
生物医电心电图模拟(ECG)
多脉冲四脉冲序列、八脉冲序列
自定义用户任意波形导入

🛠️ 适用场景

人群理由
🎓 电子/嵌入式学生学习 STM32+FreeRTOS 的完整项目实战,代码规范、架构清晰
🔧 嵌入式工程师桌面调试好帮手——信号源 + 频率计一机两用
🏠 电子爱好者低成本打样复刻,亲手焊一台属于自己的信号发生器
👨‍🏫 高校实验室/教学全开源可二次开发,比商用信号仪更适合教学改造

📦 硬件接口定义

接口功能MCU 引脚
DAC_OUT1通道 1 模拟输出PA4
DAC_OUT2通道 2 模拟输出PA5
FREQ_IN频率测量输入PA0 (TIM2_CH1)
USB_OTG_FSUSB 通信PA11/PA12
LCD2.8寸 TFT 显示FSMC 接口
EC11旋钮编码器PD12/PD13
KEY功能按键矩阵键盘 (PE/PC/PA)
SPI_FLASHW25Q64 存储PE4 (CS)

"没有信号发生器?那我自己写一个。"
SG-28 — 纯软件合成、双通道输出、30+ 波形、零专用 DDS 芯片,这就是开源硬件的浪漫。

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
暂无数据
克隆工程
添加到专辑
0
0
分享
Logo GIF0
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航