3 channel_MUX
Dependencies: BufferedSerial MAX30003 max32630fthr1 DS1307
Diff: main.cpp
- Revision:
- 5:f8d1f651bef5
- Parent:
- 4:06e258ff0b97
- Child:
- 6:86ac850c718d
diff -r 06e258ff0b97 -r f8d1f651bef5 main.cpp --- a/main.cpp Mon Aug 28 16:09:51 2017 +0000 +++ b/main.cpp Mon Aug 28 20:57:10 2017 +0000 @@ -45,12 +45,12 @@ // Read back ECG samples from the FIFO if( ecgFIFOIntFlag ) { + ecgFIFOIntFlag = 0; status = ecgAFE.readRegister( MAX30003::STATUS ); // Read the STATUS register // Check if EINT interrupt asserted if ( ( status & EINT_STATUS_MASK ) == EINT_STATUS_MASK ) { - ecgFIFOIntFlag = 0; readECGSamples = 0; // Reset sample counter do { @@ -120,6 +120,7 @@ //Enable interrupts register setting MAX30003::EnableInterrupts_u EN_INT_r; + EN_INT_r.all = 0; EN_INT_r.bits.en_eint = 1; // Enable EINT interrupt EN_INT_r.bits.en_rrint = 0; // Disable R-to-R interrupt EN_INT_r.bits.intb_type = 3; // Open-drain NMOS with internal pullup @@ -130,8 +131,13 @@ MAX30003::ManageDynamicModes_u MNG_DYN_r; MNG_DYN_r.bits.fast = 0; // Fast recovery mode disabled ecgAFE.writeRegister( MAX30003::MNGR_DYN , MNG_DYN_r.all); + + // MUX Config + MAX30003::MuxConfiguration_u CNFG_MUX_r; + CNFG_MUX_r.bits.openn = 0; // Connect ECGN to AFE channel + CNFG_MUX_r.bits.openp = 0; // Connect ECGP to AFE channel + ecgAFE.writeRegister( MAX30003::CNFG_EMUX , CNFG_MUX_r.all); - return; }