用心率控制夜灯
各位老司机,我现在在做一个心率控制夜灯的动心,设置阈值,大于65的时候灯亮,小于65的时候灯灭,但是心率大于65的时候,等会亮,但是每个扫描周期灯都会灭一下,请大神教教我怎么办?用什么指令?您可以在论坛搜索心率,会有一些相关的文章 收藏同求答案 你必须要知道用什么心率模块,设置阈值用if else语句就行 gada888 发表于 2019-10-31 11:56
你必须要知道用什么心率模块,设置阈值用if else语句就行
的确是用的if else 但是,每次程序循环完了,输出会闪烁一次,我想知道怎么样保持这个输出 gada888 发表于 2019-10-31 11:56
你必须要知道用什么心率模块,设置阈值用if else语句就行
#define heartratePin A1 //定义心率传感器信号的引脚
#include "DFRobot_Heartrate.h"//库文件
int Relay=3; //选一个I/O
DFRobot_Heartrate heartrate(DIGITAL_MODE); //传感器信号选择
void setup() {
Serial.begin(115200); //串口波特率
pinMode(Relay,OUTPUT);//定义输出
}
void loop() {
uint8_t rateValue;
heartrate.getValue(heartratePin);
rateValue = heartrate.getRate(); //读心率数据
if(rateValue){
Serial.println(rateValue); //串口显示
}
delay(20);
if(rateValue>50){
digitalWrite (Relay,HIGH); //大于50输出高电平
}
else {
digitalWrite (Relay,LOW);//小于50输出低电平
}
}
版主大神,能不能帮我看看哪里有问题啊
我没有这个模块,没法测试。只是加了delay。你试试
#define heartratePin A1 //定义心率传感器信号的引脚
#include "DFRobot_Heartrate.h"//库文件
int Relay=3; //选一个I/O
DFRobot_Heartrate heartrate(DIGITAL_MODE); //传感器信号选择
void setup() {
Serial.begin(115200); //串口波特率
pinMode(Relay,OUTPUT);//定义输出
}
void loop() {
uint8_t rateValue;
heartrate.getValue(heartratePin);
rateValue = heartrate.getRate(); //读心率数据
if(rateValue){
Serial.println(rateValue); //串口显示
}
delay(20);
if(rateValue>=50){
digitalWrite (Relay,HIGH); //大于50输出高电平
delay(100);
}
else {
digitalWrite (Relay,LOW);//小于50输出低电平
delay(100);
}
} 加了以后,灯还是闪烁状态,大神能不能加个QQ或着微信 你的预期是怎样的,现在的错误又是怎样的。delay那个时间可以改下数字再试试。例如20或50。
页:
[1]