STM32G4做一个示波器

发布于:2024-05-10 ⋅ 阅读:(23) ⋅ 点赞:(0)

随着科技的飞速进步,曾经庞大笨重的示波器如今已经可以轻松装进口袋,随时随地揭示电子世界的奥秘。这不仅是技术革新的象征,更是便携实用性的极致演绎。最近,我发现了一个让人眼前一亮的小型示波器制作方案,它的心脏是STM32G4系列芯片。这个口袋大小的奇迹是如何成为可能的,一起来探索,体验科技带来的无限可能和方便吧!

这款硬件资料已经上传到电子森林的项目页面,大家可以复制链接进入:https://www.eetree.cn/project/2612

或点击文末“阅读原文”自动跳转到电子森林项目平台,在这里有完整的设计资源汇总。

接下来看看STM32G4示波器的详细介绍。

介绍

过去,我曾承担过涉及带有高速 ADC 的便携式示波器(如 RPScope 中所示)的项目。然而,在这一努力中,我致力于最大限度地简化电子设备,并仅利用 STM32 平台固有的功能。

STM32G4系列具有多种模拟外设,包括4个ADC、2个DAC、集成OPAMP 等,这些外设有助于最大限度地减少物料清单 (BOM)。唯一使用的外部部件是两个 OPAMP IC,主要用于保护 MCU 免受输入通道过压的影响。供电方面也进行了简化;与此类项目中经常采用的传统对称电源配置不同,我专门采用了单端电源,进一步简化了电路。尽管存在这种偏差,但仍然可以通过在输入级引入偏移来支持对负电压信号的采集。

该示波器拥有480x320 分辨率显示屏,通过16位总线连接并映射到STM32的内存,提供快速数据传输并实现超过50FPS的令人印象深刻的帧速率,但我刻意限制为20 FPS以确保CPU能够流畅地支持其它并发任务。图形用户界面是通过 Nuklear 库的端口实现的,最初用于 PC 游戏,采用 ANSI-C 编写,采用模块化设计,可在微控制器内无缝执行。

硬件制造委托给嘉立创,PCB为4层,遵循其规定的 0.1毫米线间距和宽度以及0.35毫米通孔直径的最小设计限制。虽然对于这个设计来说并不是绝对必要的,但我很想评估结果,事实证明这是完美的。尽管是间接的,人工智能也融入到了该项目(中途)中,体现在 PCB 丝印层中融入了“Mechwarrior”机器人绘图,赋予了独特的视觉风格。

在软件方面,我最初的意图是集成 MicroPython,这一雄心促使 Nuklear 移植到 MicroPython 生态系统。但由于RAM资源有限,我选择使用C语言进行开发,并辅以FreeRTOS操作系统框架。

硬件

硬件设计的特点是简单,主要包括STM32微控制器、两个运算放大器(OPAMP)、一个电池充电器和一个TFT显示屏。


网站公告

今日签到

点亮在社区的每一天
去签到