如何用STM32设计一款简易示波器?

电子说

1.2w人已加入

描述

概述

简易示波器基于STM32F103芯片及自带ADC开发。可实现电压范围0-3.3V,频率范围1Hz-10kHz正弦波和方波显示,提供自动、普通以及单次三种采样模式,上升沿和下降沿两种触发方式,0~3.3V触发阀值。该系统可满足常见场合使用需求。

03

开发环境

硬件:stm32f103-指南者,3.2寸ILI9341液晶显示

RT-Thread版本:3.0.3

开发工具及版:MDK 5.26

03

RT-Thread使用情况概述

内核部分:调度器,信号量,消息队列。

调度器:创建多个线程来实现不同的工作。

信号量:用来同步线程。

消息队列:用来实现线程之间传递的数据。

04

硬件框架

示波器

ADC采集波形发生器信号经过stm32f103芯片处理后显示到3.2寸ILI9341液晶屏。

05

软件框架说明

示波器

06

软件模块说明

·  线程:

GetWave_thread:波形采样线程;根据所设置的屏幕每一格代表的时间确定采样频率,根据触发阀值和触发模式确定采样开始点,对波形进行采样保存。

PlotWave_thread:波形显示线程;根据屏幕区域划分进行波形显示。

KeyScan_thread:按键扫描线程;读取按键值进行转换并发送给设置执行线程。

Setting_thread:设置操作执行线程;执行设置项修改操作并刷新显示信息。

消息队列:

setting_data_queue:将按键扫描线程读取并转换后的设置信息传递给设置执行线程,以完成设置更改和显示信息刷新。

getwave_status_queue:用于波形采样线程和波形显示线程之间通信,确保采样波形及时显示刷新。

key_scan_queue:用于设置线程和按键检测线程之间通信,确保按键信号及时被读取同时避免按键检测线程占用过多资源。

原文标题:【RT-Thread作品秀】完全开源代码!用STM32设计一款简易示波器

文章出处:【微信公众号:电路设计技能】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分