BASIC4MCU | 질문게시판 | 아두이노 심박수 측정 코드 해석 부탁드립니다
페이지 정보
작성자 asdqwd 작성일2019-12-05 11:25 조회11,301회 댓글3건본문
심박수를 측정해서 lcd로 심박수를 표시해주고 심박수가 90이상이거나 50이하이면 부저를 울려주는 코드입니다
해석좀 해주시면 감사하겠습니다
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); //(주소, 글자수, 줄수)
#define PROCESSING_VISUALIZER 1
#define SERIAL_PLOTTER 2
// Variables
int pulsePin = 0;
int blinkPin = 13;
int fadePin = 5;
int fadeRate = 0;
volatile int BPM;
volatile int Signal;
volatile int IBI = 600;
volatile boolean Pulse = false;
volatile boolean QS = false;
int buzzerPin = 6;
void setup(){
pinMode(blinkPin,OUTPUT);
pinMode(fadePin,OUTPUT);
Serial.begin(115200);
interruptSetup();
pinMode(buzzerPin,OUTPUT);
lcd.init();
lcd.backlight();
}
void ledFadeToBeat()
{
fadeRate -= 15;
fadeRate = constrain(fadeRate,0,255);
analogWrite(fadePin,fadeRate);
}
// Where the Magic Happens
void loop(){
serialOutput() ;
if (QS == true){
fadeRate = 255;
serialOutputWhenBeatHappens();
QS = false;
}
ledFadeToBeat();
delay(20);
if(BPM < 100)
{
lcd.setCursor(3,0);
lcd.print("BPM = ");
lcd.print(BPM);
delay(100);
}
if(BPM >= 90)
{
lcd.clear();
delay(200);
lcd.setCursor(3,0);
lcd.print("BPM = ");
lcd.print(BPM);
tone(buzzerPin, 262, 500);
delay(500);
tone(buzzerPin, 523, 500);
delay(500);
}
}
댓글 3
조회수 11,301master님의 댓글
master 작성일
전체 문장의 주석이나 설명을 드리지 못합니다.
이해가 안가는 문장을 한 두개 적어보세요
asdqwd님의 댓글
asdqwd 작성일
int buzzerPin = 6;
void setup(){
pinMode(blinkPin,OUTPUT);
pinMode(fadePin,OUTPUT);
Serial.begin(115200);
interruptSetup();
pinMode(buzzerPin,OUTPUT);
lcd.init();
lcd.backlight();
여기가 이해가안됩니다
master님의 댓글
master 작성일
int buzzerPin = 6; // 부저 연결핀은 6번핀
void setup(){
pinMode(blinkPin,OUTPUT); // blink용 LED 핀을 출력으로설정
pinMode(fadePin,OUTPUT); // fade용 LED 핀을 출력으로설정
Serial.begin(115200); // 시리얼모니터 통신 속도는 115200 보레이트
interruptSetup(); // 인터럽트 설정 함수 실행
pinMode(buzzerPin,OUTPUT); // 부저핀 출력으로 설정
lcd.init(); // LCD 초기화
lcd.backlight(); // LCD 백라이트 ON