2020-12-21 13:41:36 +08:00
|
|
|
|
基于stm32的简易示波器
|
|
|
|
|
|
|
|
|
|
概述:
|
|
|
|
|
简易示波器基于STM32F103芯片及自带ADC开发。可实现电压范围0-3.3V,频率范围1Hz-10kHz正弦波和方波显示,提供自动、普通以及单次三种采样模式,上升沿和下降沿两种触发方式,0~3.3V触发阀值。
|
|
|
|
|
|
|
|
|
|
开发环境:
|
|
|
|
|
硬件:stm32f103-指南者,3.2寸ILI9341液晶显示
|
|
|
|
|
RT-Thread版本:3.0.3
|
|
|
|
|
开发工具及版:MDK 5.26
|
|
|
|
|
|
|
|
|
|
RT-Thread使用情况概述:
|
|
|
|
|
线程:
|
|
|
|
|
GetWave_thread:波形采样线程;根据所设置的屏幕每一格代表的时间确定采样频率,根据触发阀值和触发模式确定采样开始点,对波形进行采样保存。PlotWave_thread:波形显示线程;根据屏幕区域划分进行波形显示。
|
|
|
|
|
KeyScan_thread:按键扫描线程;读取按键值进行转换并发送给设置执行线程。
|
|
|
|
|
Setting_thread:设置操作执行线程;执行设置项修改操作并刷新显示信息。
|
|
|
|
|
消息队列:
|
|
|
|
|
setting_data_queue:将按键扫描线程读取并转换后的设置信息传递给设置执行线程,以完成设置更改和显示信息刷新。
|
|
|
|
|
getwave_status_queue:用于波形采样线程和波形显示线程之间通信,确保采样波形及时显示刷新。
|
|
|
|
|
key_scan_queue:用于设置线程和按键检测线程之间通信,确保按键信号及时被读取同时避免按键检测线程占用过多资源。
|