# Signal Generators Library 这是一个ESP32信号生成器库,包含ECG(心电图)生成器和正弦波生成器。 ## 功能特性 ### ECG生成器 (ecg_generator) - 生成逼真的心电图信号 - 可调节心率和幅度 - 包含P波、QRS波群、T波 - 支持实时参数调整 ### 正弦波生成器 (sine_generator) - 高频正弦波生成 - 预计算查找表优化 - 支持50kHz采样率 - 内存高效设计 ## 使用方法 ### ECG生成器 ```c #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); ``` ### 正弦波生成器 ```c #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库