Difference between revisions of "Pseudo-Medical Monitor Code"

From LVL1
Jump to navigation Jump to search
 
(14 intermediate revisions by the same user not shown)
Line 35: Line 35:
  
 
== Defines - Variables - Routines ==
 
== Defines - Variables - Routines ==
Updates Needed
 
  
 
The following code is a mixing and matching of the example code provided by the referenced Special Libraries.   
 
The following code is a mixing and matching of the example code provided by the referenced Special Libraries.   
 
==== Custom Includes ====
 
==== Custom Includes ====
 +
 +
 +
[[Pseudo-Medical Monitor Code I2CMUX STUFF|#include "I2CMUX_Stuff.h"]]
  
 
[[Pseudo-Medical Monitor Code TFT STUFF|#include "TFT_Stuff.h"]]
 
[[Pseudo-Medical Monitor Code TFT STUFF|#include "TFT_Stuff.h"]]
Line 44: Line 46:
 
[[Pseudo-Medical Monitor Code SD STUFF|#include "SD_Stuff.h"]]
 
[[Pseudo-Medical Monitor Code SD STUFF|#include "SD_Stuff.h"]]
  
[[Pseudo-Medical Monitor Code TK STUFF|#include "TK_Stuff.h"]]
 
  
[[Pseudo-Medical Monitor Code PORT STUFF|#include "PORT_Stuff.h"]]
 
  
[[Pseudo-Medical Monitor Code HB STUFF|#include "HB_Stuff.h"]]
+
[[Pseudo-Medical Monitor Code HeartBeat_STUFF|#include "HeartBeat_Stuff.h"]]
 +
 
 +
Two related include files from Library for MAX30105 examples not included here
 +
* bmpHeader.h
 +
* Interoplation.
  
[[Pseudo-Medical Monitor Code AMG STUFF|#include "AMG_Stuff.h"]]
 
  
[[Pseudo-Medical Monitor Code VL STUFF|#include "VL_Stuff.h"]]
+
[[Pseudo-Medical Monitor Code ThermalImage_STUFF|#include "ThermalImager_Stuff.h"]]
  
[[Pseudo-Medical Monitor Code CT STUFF|#include "CT_Stuff.h"]]
+
[[Pseudo-Medical Monitor Code TOFLaser_STUFF|#include "TOFLaser_Stuff.h"]]
  
[[Pseudo-Medical Monitor Code FP STUFF|#include "FP_Stuff.h"]]
+
[[Pseudo-Medical Monitor Code NonContactThermometer_STUFF|#include "NonContactThermometer_Stuff.h"]]
  
[[Pseudo-Medical Monitor Code NEO STUFF|#include "NEO_Stuff.h"]]
+
[[Pseudo-Medical Monitor Code FingerPrint_STUFF|#include "FingerPrint_Stuff.h"]]
  
[[Pseudo-Medical Monitor Code EXG STUFF|#include "EXG_Stuff.h"]]
 
  
[[Pseudo-Medical Monitor Code EYE STUFF|#include "Eye_Stuff.h"]]
+
[[Pseudo-Medical Monitor Code ControlPanel_STUFF|#include "ControlPanel_Stuff.h"]]
  
[[Pseudo-Medical Monitor Code MIDI STUFF|#include "MIDI_Stuff.h"]]
+
[[Pseudo-Medical Monitor Code AudioBoard_STUFF|#include "AudioBoard_Stuff.h"]]
  
[[Pseudo-Medical Monitor Code I2CMUX STUFF|#include "I2CMUX_Stuff.h"]]
+
<nowiki>
  
[[Pseudo-Medical Monitor Code CNTRL STUFF|#include "CNTRL_Stuff.h"]]
+
#include "I2CMUX_Stuff.h"
 +
#include "TFT_Stuff.h"
 +
#include "SD_Stuff.h"
  
[[Pseudo-Medical Monitor Code CONFIGURATION STUFF|#include "Configuration_Stuff.h"]]
+
#include "HeartBeat_Stuff.h"
 +
#include "ThermalImager_Stuff.h"
 +
#include "TOFLaser_Stuff.h"
 +
#include "NonContactThermometer_Stuff.h"
 +
#include "FingerPrint_Stuff.h"
  
[[Pseudo-Medical Monitor Code HNDHLD STUFF|#include "HNDHLD_Stuff.h"]]
+
#include "ControlPanel_Stuff.h"
 +
#include "AudioBoard_Stuff.h"
  
<nowiki>
 
 
void setup()
 
void setup()
 
{
 
{
Line 81: Line 89:
 
   Serial.begin(115200);
 
   Serial.begin(115200);
  
 +
  analogReadResolution(12);
 +
 
 
   Serial.println("SETUP - Begin");
 
   Serial.println("SETUP - Begin");
 
   Serial.println("TFT");
 
   Serial.println("TFT");
Line 87: Line 97:
 
   setup_SD();
 
   setup_SD();
  
  Serial.println("I2CMUX");
 
  setup_I2CMUX(); 
 
 
   Serial.println("CT");
 
   Serial.println("CT");
   setup_CT();
+
   setup_NonContactThermometer();
   Serial.println("AMG");
+
   Serial.println("ThermalImager");
   setup_AMG();
+
   setup_ThermalImager();
   Serial.println("VL");
+
   Serial.println("TOFLaser");
   setup_VL();   
+
   setup_TOFLaser();   
   Serial.println("HB");
+
   Serial.println("HeartBeat");
   setup_HB();
+
   setup_HeartBeat();
   Serial.println("FP");
+
   Serial.println("FingerPrint");
   setup_FP();
+
   setup_FingerPrint();
   Serial.println("CNTRL");
+
   Serial.println("ControlPanel");
   setup_CNTRL();
+
   setup_ControlPanel();
    
+
   Serial.println("AudioBoard");
 +
  setup_AudioBoard();
 
   Serial.println("SETUP - End");
 
   Serial.println("SETUP - End");
 
}
 
}
Line 108: Line 117:
 
void loop()
 
void loop()
 
{
 
{
       VL_Frame();
+
       TOFLaser_Frame();
       AMG_Frame();
+
       ThermalImager_Frame();
       CT_Frame();
+
       NonContactThermometer_Frame();
       FP_Frame();
+
       FingerPrint_Frame();
       HB_Frame();
+
       HeartBeat_Frame();
 +
}
  
    if (Controls.encoder_A_Switch())
 
      {
 
        Controls.pcf_event=false;
 
        delay(20);
 
        ConfigurationScans();       
 
        DrawScreenReset();
 
        VL_Reset();
 
        AMG_Reset();
 
        CT_Reset();
 
        FP_Reset(); 
 
        HB_Reset();
 
      }
 
   
 
}
 
 
  </nowiki>
 
  </nowiki>
  
 
[[Pseudo-Medical Monitor]]
 
[[Pseudo-Medical Monitor]]

Latest revision as of 17:18, 14 December 2021

Being written on the fly, expect rewrites and restructures. Enough information is here for writing code on the completed hardware.

Basic Software Load for Main Device Only. Later Update to Incorporate Port Usage with External Units.

Hardware Libraries

 #include <Wire.h>
 #include <SPI.h>
 #include <Adafruit_GFX.h>
 #include <Adafruit_ST7735.h>
 #include <Adafruit_VL53L0X.h>
 #include <Adafruit_AMG88xx.h>
 #include <MAX30105.h>
 #include <SparkFunMLX90614.h> 
 #include <DFRobot_ID809.h>
 #include <SD.h>
 #include <pu2clr_pcf8574.h>
 #include <TCA9548A.h>
 

Library Modification

// In this Library : #include <SparkFunMLX90614.h> 
//Change the following line in the bool IRTherm::I2CReadWord(byte reg, int16_t * dest) routine.
//
//  I2C processing change needed for Arduino Due implementation
//
// Comment Out Line Below
//	_i2cPort->requestFrom(_deviceAddress, (uint8_t) 3, (uint8_t) true); 

// Add Line Below
      _i2cPort->requestFrom(_deviceAddress, (uint8_t) 3, (uint32_t)reg, (uint8_t)1, (uint8_t)true);


Defines - Variables - Routines

The following code is a mixing and matching of the example code provided by the referenced Special Libraries.

Custom Includes

#include "I2CMUX_Stuff.h"

#include "TFT_Stuff.h"

#include "SD_Stuff.h"


#include "HeartBeat_Stuff.h"

Two related include files from Library for MAX30105 examples not included here

  • bmpHeader.h
  • Interoplation.


#include "ThermalImager_Stuff.h"

#include "TOFLaser_Stuff.h"

#include "NonContactThermometer_Stuff.h"

#include "FingerPrint_Stuff.h"


#include "ControlPanel_Stuff.h"

#include "AudioBoard_Stuff.h"


#include "I2CMUX_Stuff.h"
#include "TFT_Stuff.h"
#include "SD_Stuff.h"

#include "HeartBeat_Stuff.h"
#include "ThermalImager_Stuff.h"
#include "TOFLaser_Stuff.h"
#include "NonContactThermometer_Stuff.h"
#include "FingerPrint_Stuff.h"

#include "ControlPanel_Stuff.h"
#include "AudioBoard_Stuff.h"

void setup()
{
  Wire.begin();
  Wire1.begin();
  Serial.begin(115200);

  analogReadResolution(12);
  
  Serial.println("SETUP - Begin");
  Serial.println("TFT");
  setup_TFT();
  Serial.println("SD Card");
  setup_SD();

  Serial.println("CT");
  setup_NonContactThermometer();
  Serial.println("ThermalImager");
  setup_ThermalImager();
  Serial.println("TOFLaser");
  setup_TOFLaser();  
  Serial.println("HeartBeat");
  setup_HeartBeat();
  Serial.println("FingerPrint");
  setup_FingerPrint();
  Serial.println("ControlPanel");
  setup_ControlPanel();
  Serial.println("AudioBoard");
  setup_AudioBoard();
  Serial.println("SETUP - End");
}


void loop()
{
      TOFLaser_Frame();
      ThermalImager_Frame();
      NonContactThermometer_Frame();
      FingerPrint_Frame();
      HeartBeat_Frame();
}

 

Pseudo-Medical Monitor