Demo Heart Rate with PAH8011

Dependencies:   pixart_heart_rate pixart_pah8011

Dependents:   PAH8011_nRF52_Program PixArt_PAH8011_HeartRate_NUCLEO-L476RG PixArt_PAH8011_HR_NUCLEO-L476RG

Committer:
bell_huang
Date:
Wed Jan 23 08:10:59 2019 +0000
Revision:
5:4fe132cb9273
Parent:
0:45616b53ea33
Fix demo

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bell_huang 0:45616b53ea33 1 #ifndef __pixart_heart_rate_demo_h__
bell_huang 0:45616b53ea33 2 #define __pixart_heart_rate_demo_h__
bell_huang 0:45616b53ea33 3
bell_huang 0:45616b53ea33 4
bell_huang 0:45616b53ea33 5 #include <mbed.h>
bell_huang 0:45616b53ea33 6 #include <stdbool.h>
bell_huang 0:45616b53ea33 7 #include <stdint.h>
bell_huang 0:45616b53ea33 8
bell_huang 0:45616b53ea33 9
bell_huang 0:45616b53ea33 10 namespace pixart {
bell_huang 0:45616b53ea33 11
bell_huang 0:45616b53ea33 12
bell_huang 0:45616b53ea33 13 class heart_rate_demo {
bell_huang 0:45616b53ea33 14 public:
bell_huang 0:45616b53ea33 15 heart_rate_demo(I2C &i2c, InterruptIn &interrupt, Serial &serial);
bell_huang 0:45616b53ea33 16
bell_huang 0:45616b53ea33 17 void run();
bell_huang 0:45616b53ea33 18
bell_huang 0:45616b53ea33 19 private:
bell_huang 0:45616b53ea33 20 static void error_handler();
bell_huang 0:45616b53ea33 21 static void debug_print(const char *fmt, ...);
bell_huang 0:45616b53ea33 22 static uint64_t time_to_millisec(uint64_t time);
bell_huang 0:45616b53ea33 23
bell_huang 0:45616b53ea33 24 private:
bell_huang 0:45616b53ea33 25 void pah8011_interrupt_handle(void);
bell_huang 0:45616b53ea33 26
bell_huang 0:45616b53ea33 27 I2C &m_i2c;
bell_huang 0:45616b53ea33 28 InterruptIn &m_interrupt;
bell_huang 0:45616b53ea33 29
bell_huang 0:45616b53ea33 30 volatile bool m_has_pah8011_interrupt;
bell_huang 0:45616b53ea33 31 volatile uint64_t m_pah8011_interrupt_timestamp;
bell_huang 0:45616b53ea33 32
bell_huang 0:45616b53ea33 33 };
bell_huang 0:45616b53ea33 34
bell_huang 0:45616b53ea33 35
bell_huang 0:45616b53ea33 36 }
bell_huang 0:45616b53ea33 37
bell_huang 0:45616b53ea33 38
bell_huang 0:45616b53ea33 39 #endif // header guard