|
|
||
|---|---|---|
| .. | ||
| include | ||
| src | ||
| CMakeLists.txt | ||
| README.md | ||
README.md
Signal Generators Library
这是一个ESP32信号生成器库,包含ECG(心电图)生成器和正弦波生成器。
功能特性
ECG生成器 (ecg_generator)
- 生成逼真的心电图信号
- 可调节心率和幅度
- 包含P波、QRS波群、T波
- 支持实时参数调整
正弦波生成器 (sine_generator)
- 高频正弦波生成
- 预计算查找表优化
- 支持50kHz采样率
- 内存高效设计
使用方法
ECG生成器
#include "ecg_generator.h"
ecg_generator_t ecg_gen;
ecg_generator_init(&ecg_gen, 250.0f); // 250Hz采样率
ecg_generator_set_heart_rate(&ecg_gen, 75.0f); // 75 BPM
ecg_generator_set_amplitude(&ecg_gen, 5.0f); // 5mV
ecg_generator_start(&ecg_gen);
// 在定时器回调中
float sample = ecg_generator_get_next_sample(&ecg_gen);
正弦波生成器
#include "sine_generator.h"
sine_generator_t sine_gen;
sine_generator_init(&sine_gen, 50000.0f); // 50kHz采样率
sine_generator_set_frequency(&sine_gen, 200.0f); // 200Hz
sine_generator_set_amplitude(&sine_gen, 5.0f); // 5mV
sine_generator_start(&sine_gen);
// 在定时器回调中
float sample = sine_generator_get_next_sample(&sine_gen);
性能优化
- ECG生成器:实时计算,适合低频应用
- 正弦波生成器:预计算查找表,适合高频应用
- 内存管理:自动分配和释放查找表
- 中断友好:最小化中断执行时间
依赖项
- ESP-IDF
- math库
- esp_log库