欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
Arduino+puleseSensor+OLED心率監測裝置源碼
[打印本頁]
作者:
zzzzzw
時間:
2018-7-7 19:21
標題:
Arduino+puleseSensor+OLED心率監測裝置源碼
課程報告時順便做的一個小玩意
0.png
(41.42 KB, 下載次數: 27)
下載附件
2018-7-7 20:44 上傳
單片機源程序如下:
int pulsePin = A0; // Pulse Sensor purple wire connected to analog pin 0
int blinkPin = 12; // pin to blink led at each beat
int fadePin = 13; // pin to do fancy classy fading blink at each beat
int fadeRate = 0; // used to fade LED on with PWM on fadePin
// these variables are volatile because they are used during the interrupt service routine!
volatile int BPM; // used to hold the pulse rate
volatile int Signal; // holds the incoming raw data
volatile int IBI = 600; // holds the time between beats, must be seeded!
volatile boolean Pulse = false; // true when pulse wave is high, false when it's low
volatile boolean QS = false; // becomes true when Arduoino finds a beat.
#include "U8glib.h"
U8GLIB_SSD1306_128X64 u8g(5, 4, 6, 2, 3); // SW SPI Com: SCL = 5,SDA = 4,CS = 6,RST = 3,DC = 2
const uint8_t rook_bitmap[] PROGMEM = {
0x00, // 00000000
0x55, // 01010101
0x7f, // 01111111
0x3e, // 00111110
0x3e, // 00111110
0x3e, // 00111110
0x3e, // 00111110
0x7f // 01111111
};
void setup() {
pinMode(blinkPin, OUTPUT); // pin that will blink to your heartbeat!
pinMode(fadePin, OUTPUT); // pin that will fade to your heartbeat!
Serial.begin(115200); // we agree to talk fast!
interruptSetup(); // sets up to read Pulse Sensor signal every 2mS
// UN-COMMENT THE NEXT LINE IF YOU ARE POWERING The Pulse Sensor AT LOW VOLTAGE,
// AND APPLY THAT VOLTAGE TO THE A-REF PIN
//analogReference(EXTERNAL);
u8g.setColorIndex(1); // pixel on
}
void loop() {
u8g.firstPage();
do {
draw();
} while ( u8g.nextPage() );
sendDataToProcessing(' ', Signal); // send Processing the raw Pulse Sensor data
if (QS == true) { // Quantified Self flag is true when arduino finds a heartbeat
fadeRate = 255; // Set 'fadeRate' Variable to 255 to fade LED with pulse
sendDataToProcessing(',', BPM); // send heart rate with a 'B' prefix
sendDataToProcessing(',', IBI); // send time between beats with a 'Q' prefix
QS = false; // reset the Quantified Self flag for next time
}
ledFadeToBeat();
delay(20); // take a break
}
void draw(void) {
// graphic commands to redraw the complete screen should be placed here
u8g.setFont(u8g_font_fur20);
//u8g.setFont(u8g_font_osb21);
if (QS) {
u8g.drawBitmapP( 40, 40, 1, 8, rook_bitmap);
}
u8g.drawStr( 10, 20, "BPM");
u8g.setPrintPos(80, 20);
u8g.print(BPM);
}
void ledFadeToBeat() {
fadeRate -= 15; // set LED fade value
fadeRate = constrain(fadeRate, 0, 255); // keep LED fade value from going into negative numbers!
analogWrite(fadePin, fadeRate); // fade LED
}
void sendDataToProcessing(char symbol, int data ) {
Serial.print(symbol); // symbol prefix tells Processing what type of data is coming
Serial.println(data); // the data to send culminating in a carriage return
}
復制代碼
所有資料51hei提供下載:
pulseOLED.zip
(3.48 KB, 下載次數: 31)
2018-7-7 19:21 上傳
點擊文件名下載附件
源碼
下載積分: 黑幣 -5
作者:
wifingtta
時間:
2023-2-22 23:08
沒有#include "U8glib.h",無法使用
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1