第三次培训 心率传感器和烟雾传感器的学习了解
一.pulsesensor传感器
1.学习了解
Pulse Sensor是一款用来检测心率的传感器,使用方法还是比较方便的,用户只需要用手指按住传感器就可以,传感器的实物图如下:
2.如何使用
PulseSensor 是一款用于脉搏心率测量的光电反射式模拟传感器。将其佩戴于手指、耳垂等处,利用人体组织在血管搏动时造成透光率不同来进行脉搏测量。传感器对光电信号进行滤波、放大,最终输出模拟电压值。单片机通过将采集到的模拟信号值转换为数字信号,再通过简单计算就可以得到心率数值。
3.工作原理
Pulse Sensor检测原理是通过发射光源,然后根据光源返回的效果输出ADC数据。由于手指上布满毛细血管,而毛细血管会随着心率而跳动,这就导致传感器发射和接收光的效果不同,从而达到ADC输出效果不同,比如下图就是ADC的输出图:
因此检测心率的方式很简单:测出两个ADC峰值间的时长,假设这个时长为T,单位是毫秒,那么1分钟的心率假设为S,则:
S = 60000/T 次/秒
4.相关程序实例
/********** ADC通道2转换函数 **************/
u16 Get_ADC_1_CH2(void)
{
u8 i,j;
u16 buff[10] = {
0};
u16 temp;
for(i = 0; i < 10; i ++)
{
/* 开始转换 */
ADC1->CR2 |= 1 << 30;
/* 等待转换结束 */
while( !(ADC1->SR & (1 << 1)) )
{
/* 等待转换接收 */
}
buff[i] = ADC1->DR; //读取转换结果
}
/* 把读取值的数据按从小到大的排列 */
for(i = 0; i < 9