大家好、
IAM 正在尝试使用 MSP430FR2355 Launchpad 设计脉动式血氧计。 我成功使用 SAC 模块并从 SAC 获取 SPO2原始数据。 我还使用 ADC 读取 SAC 输出并转换为数字形式。 IAM 遵循 SLAA458和 SLAA897 TI 文档。 有人能告诉我下面显示的代码的含义是什么吗? 此代码从 SLAA458提取。
/*跟踪心脏跳动*/ Heart _signal_sample_counter++; IF (pos_edge) { 如果(EDGE_去 抖< 120) { EDGE_去 抖++; } 其他 { 如果(ir_heart _ac_signal <-200) { EDGE_去 抖= 0; POS_EDGE = 0; DISPLAY_PULSE (0); } } 其他 { 如果(EDGE_去 抖< 120) { EDGE_去 抖++; } 其他 { 如果(ir_heart _ac_signal > 200) { EDGE_去 抖= 0; POS_EDGE = 1; DISPLAY_PULSE (1); Display_Correcting (1、0); 如果(+Heart (+Heart)_Bear_counter >= 3) { LOG_Heart、signal_sample_counter = Heart、signal_sample_counter; log_sq_ir_heart ac_signal = sq_ir_heart ac_signal; log_sq_vs_Heart、ac_signal = sq_vs_Heart、ac_signal; Heart _signal_sample_counter = 0; SQL_IR_Heart;AC_SIGNAL = 0; SQL_VS_Heart:AC_SIGNAL = 0; Heart Bear_counter = 0; _BIC_SR_IRQ (LPM0_Bits); //大致执行虚拟唤醒 //每2秒 } } }
什么是 ebounce、pos edge 和
IR_Heart _ac_signal >200或
IR_Heart _ac_signal <-200?
我的另一个问题是有关 MCU 的 UART。
是否有任何方法可以使用 printf 命令通过 UART 以换行结尾发送数据。 使用换行符和打印 f 很容易发送数据、因为我不必将数据分解为 MSB 和 LSB。
当前使用 IAM
while (!(UCA1IFG & UCTXIFG));
UCA1TXBUF = DATA;//数据的 LSB
我是说我一直在使用 Tiva C 系列 MCU、其中的 UART 通信非常易于使用。