Modification into 17th July New display demo code

Dependencies:   SDFileSystem ds3231 eeprom_Nikita mbed testUniGraphic_150217

Fork of Ext_Demo_17July2017_newdis by SenseSemi

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers ec_bp.h Source File

ec_bp.h

00001 #ifndef EC_BP_H_
00002 #define EC_BP_H_
00003 
00004 typedef void (*func_ptr)(void) ; /*creates typedef to function pointer, does not take any arguement and returns void*/
00005 
00006 void doHelp(void) ;
00007 void doStatus(void) ;
00008 void doFreq(void) ;
00009 void doMode(void) ;
00010 void doBit(void) ;
00011 void doWrite(void) ;
00012 void doWrite2(void) ;
00013 void doRead(void) ;
00014 void doLoop(void) ;
00015 void setup(void);
00016 void testsetup(void);
00017 void ecgsetup();
00018 void regWrite(int,int);
00019 void cmdWrite(int);
00020 void regRead(int);
00021 void lpf_coef(void);
00022 float lpf( float coeff[5], float);
00023 void drdy_int(void);
00024 void freqset();
00025 void ecgtestsetupfunc();
00026 
00027 #define PIN_MOSI        PTA16
00028 #define PIN_MISO        PTA17 
00029 #define PIN_SCLK        PTD1 
00030 #define MA4_SIZE  4 // DO NOT CHANGE
00031 //SDFileSystem sd(PTE1, PTE3, PTE2, PTE4, "sd");
00032 
00033 //SPI commands
00034 #define CMD_WAKEUP 0x02
00035 #define CMD_STANDBY 0x04
00036 #define CMD_RESET 0x06
00037 #define CMD_START 0x08
00038 #define CMD_STOP 0x0A
00039 #define CMD_OFFSET_CAL 0x1A
00040 #define CMD_RDATAC 0x10
00041 #define CMD_SDATAC 0x11
00042 #define CMD_RDATA 0x12
00043 //Note the following commands are 3 bits and have the following structure
00044 // CMD_REGr_rrrr; where r_rrrr is the register address given below
00045 #define CMD_WREG  0x02
00046 #define CMD_RREG 0x01
00047 
00048 //SPI registers addresses, 5 bits width
00049 #define REG_ID  0x00
00050 #define REG_CONFIG1 0x01
00051 #define REG_CONFIG2 0x02
00052 #define REG_LOFF 0x03
00053 #define REG_CH1SET 0x04
00054 #define REG_CH2SET 0x05
00055 #define REG_RLD_SENS 0x06
00056 #define REG_LOFF_SENS 0x07
00057 #define REG_LOFF_STAT 0x08
00058 #define REG_MISC1 0x09
00059 #define REG_MISC2 0x0A
00060 #define REG_GIPO 0x0B
00061 
00062 //Register bit configurations
00063 #define sps500 0x02   //CONFIG1 REG bits 010
00064 #define sps125 0x00   //CONFIG1 REG bits 000
00065 #define sps1k 0x03    //CONFIG1 REG bits 011
00066 #define no_mode 0xA8    //CONFIG2 REG set to zero for device check
00067 #define test_mode 0xA3  //CONFIG2 REG bits set to test mode, to generate a square wave
00068 #define default_mode 0xE0   //CONFIG2 REG bits set to default mode, to generate ECG signal from an external input
00069 #define loff_conf 0xF0  //LOFF register bits set to F0 to configure LOFF reg for leadoff detection
00070 #define offset_meas 0x01    //CH1SET REG set to Gain = 6 and offset measurement
00071 #define test_inp 0x05       //CH1SET REG set to Gain = 6 and generate test signal
00072 #define elec_inp 0x00       //CH1SET REG set to Gain = 6 and take in electrode input
00073 #define rld_sens_sig 0x23
00074 #define loff_sens_sig 0x03 
00075 #define misc1_inp 0x02
00076 #define misc2_inp 0x03
00077 
00078 #define LSHIFT_8 8    //left shift the obtained 8bit data by 8 values
00079 #define LSHIFT_16 16  ////left shift the obtained 8bit data by 16 values
00080 #define N_ERR 100
00081 #define N_TEST 500
00082 #define N_ECG 2000
00083 
00084 
00085 //SPI SETTINGS
00086 #define baud_rate 115200
00087 #define freq 1000000
00088 #define bits 8 
00089 #define mode 1 
00090 #define loop 1000000 
00091 
00092 //PPG DECLARATION
00093 #define MAX_BRIGHTNESS 255 // BP ADD
00094  void setupfunc();
00095 uint8_t ecgsetupfunc();
00096  int readvalue();
00097 #endif
00098 
00099 
00100