created separate function for hex to char

Dependencies:   SDFileSystem ds3231 eeprom_Nikita mbed testUniGraphic_150217

Fork of SS_SensePOC2P0_11Dec2017_USERPID by rashmi v

Committer:
avp2417
Date:
Sat Jul 29 11:23:19 2017 +0000
Revision:
36:00d96aa14658
Parent:
20:7c64e6ecad76
Added Suhasini's changes related to BP code and increase Bluetooth buffer from 150 samples to 600 Samples into 27th July 2017 code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nikitateggi 3:9a06c2bed650 1 #include "mbed.h"
nikitateggi 3:9a06c2bed650 2 #include "ec_bp.h"
nikitateggi 3:9a06c2bed650 3 //#include "ecg_dec.h"
nikitateggi 3:9a06c2bed650 4
nikitateggi 3:9a06c2bed650 5 //PIN DECLARATIONS
nikitateggi 3:9a06c2bed650 6 //Serial pc(USBTX,USBRX);
nikitateggi 3:9a06c2bed650 7 SPI mySpi(PIN_MOSI, PIN_MISO, PIN_SCLK) ;
nikitateggi 3:9a06c2bed650 8 DigitalIn DRDY_BAR(PTC8);
nikitateggi 3:9a06c2bed650 9
nikitateggi 3:9a06c2bed650 10 DigitalOut CHIPSEL_BAR(PTD0);
nikitateggi 3:9a06c2bed650 11 DigitalOut ADS_START(PTC16);
nikitateggi 3:9a06c2bed650 12 DigitalOut RESET_BAR(PTC17);
nikitateggi 3:9a06c2bed650 13 DigitalOut myled(LED1);
nikitateggi 3:9a06c2bed650 14 PwmOut led(PTB18);
nikitateggi 3:9a06c2bed650 15 float value = 0;
nikitateggi 3:9a06c2bed650 16 unsigned int value1;
nikitateggi 3:9a06c2bed650 17 unsigned int value2;
nikitateggi 3:9a06c2bed650 18 unsigned int value3;
nikitateggi 3:9a06c2bed650 19 unsigned int value4;
nikitateggi 3:9a06c2bed650 20 unsigned int value5;
nikitateggi 3:9a06c2bed650 21 unsigned int value6;
nikitateggi 20:7c64e6ecad76 22 uint8_t data1;
nikitateggi 3:9a06c2bed650 23 unsigned int count;
nikitateggi 3:9a06c2bed650 24
nikitateggi 3:9a06c2bed650 25 //unsigned char chk2= 0;
nikitateggi 3:9a06c2bed650 26 //float value = 0;
nikitateggi 3:9a06c2bed650 27 /*unsigned int value1 = 0;
nikitateggi 3:9a06c2bed650 28 unsigned int value2 = 0;
nikitateggi 3:9a06c2bed650 29 unsigned int value3 = 0;
nikitateggi 3:9a06c2bed650 30 unsigned int value4 = 0;
nikitateggi 3:9a06c2bed650 31 unsigned int value5 = 0;
nikitateggi 3:9a06c2bed650 32 unsigned int value6 = 0;
nikitateggi 3:9a06c2bed650 33 unsigned int data1 = 0;
nikitateggi 3:9a06c2bed650 34 unsigned int count = 0;*/
nikitateggi 3:9a06c2bed650 35
nikitateggi 3:9a06c2bed650 36 //static int32_t ecg_x[500];
nikitateggi 3:9a06c2bed650 37 /* SPI is the spi function written in mbed and mySpi is the instance name*/
nikitateggi 3:9a06c2bed650 38
nikitateggi 3:9a06c2bed650 39 typedef void (*func_ptr)(void) ; /*creates typedef to function pointer, does not take any arguement and returns void*/
nikitateggi 3:9a06c2bed650 40
nikitateggi 3:9a06c2bed650 41
nikitateggi 3:9a06c2bed650 42 void lpf_coef(void);
nikitateggi 3:9a06c2bed650 43 float lpf( float coeff[5], float);
nikitateggi 3:9a06c2bed650 44 void drdy_int(void);
nikitateggi 3:9a06c2bed650 45 /*FILE *sd_openfile(char *buf);
nikitateggi 3:9a06c2bed650 46 void sd_write (FILE *n,int value);
nikitateggi 3:9a06c2bed650 47 void sd_close(FILE *n);
nikitateggi 3:9a06c2bed650 48 time_t rtc_read();*/
nikitateggi 3:9a06c2bed650 49
nikitateggi 3:9a06c2bed650 50 typedef struct _cmd_func {
nikitateggi 3:9a06c2bed650 51 char *name ;
nikitateggi 3:9a06c2bed650 52 func_ptr func ;
nikitateggi 3:9a06c2bed650 53 } cmd_func_type ;
nikitateggi 3:9a06c2bed650 54
nikitateggi 3:9a06c2bed650 55 cmd_func_type cmd_list[] = { /*"cmd_func_type cmd_list[]" is same as "struct cmd_list[]"*/
nikitateggi 3:9a06c2bed650 56 {"help", doHelp},
nikitateggi 3:9a06c2bed650 57 {"status", doStatus},
nikitateggi 3:9a06c2bed650 58 {"freq", doFreq},
nikitateggi 3:9a06c2bed650 59 {"mode", doMode},
nikitateggi 3:9a06c2bed650 60 {"bit", doBit},
nikitateggi 3:9a06c2bed650 61 {"write", doWrite},
nikitateggi 3:9a06c2bed650 62 {"read", doRead},
nikitateggi 3:9a06c2bed650 63 {"loop", doLoop},
nikitateggi 3:9a06c2bed650 64 { 0, 0 }
nikitateggi 3:9a06c2bed650 65 } ;
nikitateggi 3:9a06c2bed650 66
nikitateggi 3:9a06c2bed650 67 func_ptr getFunc(char *cmd) /*here "func_ptr is same as void*/
nikitateggi 3:9a06c2bed650 68 {
nikitateggi 3:9a06c2bed650 69 int i = 0 ;
nikitateggi 3:9a06c2bed650 70 while(cmd_list[i].name != 0) {
nikitateggi 3:9a06c2bed650 71 if (strcmp(cmd, cmd_list[i].name) == 0) {
nikitateggi 3:9a06c2bed650 72 return(cmd_list[i].func) ; ;
nikitateggi 3:9a06c2bed650 73 }
nikitateggi 3:9a06c2bed650 74 i++ ;
nikitateggi 3:9a06c2bed650 75 }
nikitateggi 3:9a06c2bed650 76 return(0) ;
nikitateggi 3:9a06c2bed650 77 }
nikitateggi 3:9a06c2bed650 78
nikitateggi 3:9a06c2bed650 79 void doHello()
nikitateggi 3:9a06c2bed650 80 {
nikitateggi 3:9a06c2bed650 81 printf("=== spi test program ===\n\r") ;
nikitateggi 3:9a06c2bed650 82 printf("please set your terminal program\n\r") ;
nikitateggi 3:9a06c2bed650 83 printf("local echo on\n\r") ;
nikitateggi 3:9a06c2bed650 84 printf("\n\r") ;
nikitateggi 3:9a06c2bed650 85 }
nikitateggi 3:9a06c2bed650 86
nikitateggi 3:9a06c2bed650 87
nikitateggi 3:9a06c2bed650 88 void setup()
nikitateggi 3:9a06c2bed650 89 {
nikitateggi 3:9a06c2bed650 90 //initially make all inputs low until power is up and stabilized
nikitateggi 3:9a06c2bed650 91 CHIPSEL_BAR = 0;
nikitateggi 3:9a06c2bed650 92 ADS_START = 0;
nikitateggi 3:9a06c2bed650 93 RESET_BAR = 0;
nikitateggi 3:9a06c2bed650 94 //wait for oscillator to wake up
nikitateggi 3:9a06c2bed650 95 wait(1);
nikitateggi 3:9a06c2bed650 96
nikitateggi 3:9a06c2bed650 97 CHIPSEL_BAR = 1;
nikitateggi 3:9a06c2bed650 98 RESET_BAR = 1; //wait for tpor time
nikitateggi 3:9a06c2bed650 99 //wait for power on reset
nikitateggi 3:9a06c2bed650 100 wait(1);
nikitateggi 3:9a06c2bed650 101 RESET_BAR = 0; // send a reset pulse and wait for t_reset amount of time
nikitateggi 3:9a06c2bed650 102 wait(1);
nikitateggi 3:9a06c2bed650 103 RESET_BAR = 1;//release the reset
nikitateggi 3:9a06c2bed650 104 //Wait for 18 tclks = 36 us
nikitateggi 3:9a06c2bed650 105 wait_us(36);
nikitateggi 3:9a06c2bed650 106
nikitateggi 3:9a06c2bed650 107 //Device wakes up in RDATAC mode so send SDATAC command to write to registers
nikitateggi 3:9a06c2bed650 108 cmdWrite(CMD_SDATAC) ;
nikitateggi 3:9a06c2bed650 109 // printf("Device is in SDATAC mode\n");
nikitateggi 3:9a06c2bed650 110
nikitateggi 3:9a06c2bed650 111 regRead(REG_ID);
nidhinvarghese 11:9a6545c2eb5d 112 printf("DEVICE ID register read from ADS is= 0x%X\n",data1);
nikitateggi 3:9a06c2bed650 113 wait(1);
nikitateggi 3:9a06c2bed650 114
nikitateggi 3:9a06c2bed650 115 //Since we are using internal 2.42V reference and enable clock on the CLK PIN
nikitateggi 3:9a06c2bed650 116 //Write 0xA8 to CONFIG2 register
nikitateggi 3:9a06c2bed650 117 regWrite(REG_CONFIG2,no_mode);
nikitateggi 3:9a06c2bed650 118
nikitateggi 3:9a06c2bed650 119 //Set continuous sampling mode, 500 SPS
nikitateggi 3:9a06c2bed650 120 regWrite(REG_CONFIG1,sps500);
nikitateggi 3:9a06c2bed650 121
nikitateggi 3:9a06c2bed650 122 //PGA Gain = 6, inputs shorted for noise measurements
nikitateggi 3:9a06c2bed650 123 regWrite(REG_CH1SET, offset_meas);
nikitateggi 3:9a06c2bed650 124
nikitateggi 3:9a06c2bed650 125 //read data from CONFIG2 register
nikitateggi 3:9a06c2bed650 126 regRead(REG_CONFIG2);
nikitateggi 3:9a06c2bed650 127 // printf("REG_CONFIG2 register read from ADS for initial setup is= 0x%X\n",data1);
nikitateggi 3:9a06c2bed650 128
nikitateggi 3:9a06c2bed650 129 //read data from CONFIG1 register
nikitateggi 3:9a06c2bed650 130 regRead(REG_CONFIG1);
nikitateggi 3:9a06c2bed650 131 // printf("REG_CONFIG1 register read from ADS for initial setup is= 0x%X\n",data1);
nikitateggi 3:9a06c2bed650 132
nikitateggi 3:9a06c2bed650 133 //read data from CONFIG1 register
nikitateggi 3:9a06c2bed650 134 regRead(REG_CH1SET);
nikitateggi 3:9a06c2bed650 135 // printf("REG_CH1SET register read from ADS for initial setup is= 0x%X\n",data1);
nikitateggi 3:9a06c2bed650 136 }
nikitateggi 3:9a06c2bed650 137
nikitateggi 3:9a06c2bed650 138 void testsetup()
nikitateggi 3:9a06c2bed650 139 {
nikitateggi 3:9a06c2bed650 140 //Send SDATAC command to write to registers to set test signals
nikitateggi 3:9a06c2bed650 141 cmdWrite(CMD_SDATAC) ;
nikitateggi 3:9a06c2bed650 142 printf("Device is in SDATAC mode\n");
nikitateggi 3:9a06c2bed650 143
nikitateggi 3:9a06c2bed650 144 //Since we are using internal 2.42V reference and enable clock on the CLK PIN
nikitateggi 3:9a06c2bed650 145 //Write 0xA3 to CONFIG2 register to set test signal and its freq = 1Hz
nikitateggi 3:9a06c2bed650 146 regWrite(REG_CONFIG2,test_mode);
nikitateggi 3:9a06c2bed650 147
nikitateggi 3:9a06c2bed650 148 //PGA Gain = 6, test signal selected
nikitateggi 3:9a06c2bed650 149 regWrite(REG_CH1SET, test_inp);
nikitateggi 3:9a06c2bed650 150
nikitateggi 3:9a06c2bed650 151 //read data from CONFIG2 register
nikitateggi 3:9a06c2bed650 152 regRead(REG_CONFIG2);
nikitateggi 3:9a06c2bed650 153 printf("REG_CONFIG2 register read from ADS for test signal setup is= 0x%X\n",data1);
nikitateggi 3:9a06c2bed650 154
nikitateggi 3:9a06c2bed650 155 //read data from CONFIG1 register
nikitateggi 3:9a06c2bed650 156 regRead(REG_CH1SET);
nikitateggi 3:9a06c2bed650 157 printf("REG_CH1SET register read from ADS for test signal setup is= 0x%X\n",data1);
nikitateggi 3:9a06c2bed650 158 }
nikitateggi 3:9a06c2bed650 159
nikitateggi 3:9a06c2bed650 160 void ecgsetup()
nikitateggi 3:9a06c2bed650 161 {
nikitateggi 3:9a06c2bed650 162 cmdWrite(CMD_SDATAC) ; //Set to SDATAC mode to set CH1SET register
nikitateggi 3:9a06c2bed650 163
nikitateggi 3:9a06c2bed650 164 regWrite(REG_CONFIG1,sps500);
nikitateggi 3:9a06c2bed650 165 regWrite(REG_CONFIG2, default_mode);//put INT_TEST and TEST_FREQ bits to default mode(set those bits to '0')
nikitateggi 3:9a06c2bed650 166 regWrite(REG_LOFF, loff_conf);
nikitateggi 3:9a06c2bed650 167 regWrite(REG_CH1SET, elec_inp);// Set to read normal electrode input
nikitateggi 3:9a06c2bed650 168 regWrite(REG_RLD_SENS, rld_sens_sig);//Set RLD_SENS
nikitateggi 3:9a06c2bed650 169 regWrite(REG_LOFF_SENS, loff_sens_sig);//Set LOFF_SENS
nikitateggi 3:9a06c2bed650 170 regWrite(REG_MISC1, misc1_inp );//Set RESP1
nikitateggi 3:9a06c2bed650 171 regWrite(REG_MISC2, misc2_inp );//Set RESP2
nikitateggi 3:9a06c2bed650 172 //printf("connect ECG leads\n");
nikitateggi 3:9a06c2bed650 173 wait(0.5);
nikitateggi 3:9a06c2bed650 174 regRead(REG_LOFF_STAT);//Read LOFF_STAT register
nikitateggi 3:9a06c2bed650 175 printf("REG_LOFF_STAT register read from ADS for ecg setup is= 0x%X\n",data1);
nikitateggi 20:7c64e6ecad76 176
nikitateggi 3:9a06c2bed650 177 }
nikitateggi 3:9a06c2bed650 178
nikitateggi 3:9a06c2bed650 179 void doHelp(void)
nikitateggi 3:9a06c2bed650 180 {
nikitateggi 3:9a06c2bed650 181 printf("=== spi test ===\n\r") ;
nikitateggi 3:9a06c2bed650 182 printf("commands available\n\r") ;
nikitateggi 3:9a06c2bed650 183 printf("help\n\r") ;
nikitateggi 3:9a06c2bed650 184 printf("status\n\r") ;
nikitateggi 3:9a06c2bed650 185 printf("freq freq_in_hz\n\r") ;
nikitateggi 3:9a06c2bed650 186 printf("mode (0 | 1 | 2 | 3)\n\r") ;
nikitateggi 3:9a06c2bed650 187 printf("bit (4 - 16)\n\r") ;
nikitateggi 3:9a06c2bed650 188 printf("write value\n\r") ;
nikitateggi 3:9a06c2bed650 189 printf("read\n\r") ;
nikitateggi 3:9a06c2bed650 190 printf("loop number (set repeat number for read/write)\n\r") ;
nikitateggi 3:9a06c2bed650 191 }
nikitateggi 3:9a06c2bed650 192
nikitateggi 3:9a06c2bed650 193 void doStatus(void)
nikitateggi 3:9a06c2bed650 194 {
nikitateggi 3:9a06c2bed650 195 printf("=== Status Report ===\n\r") ;
nikitateggi 3:9a06c2bed650 196 printf("bits: %d\n\r", bits) ;
nikitateggi 3:9a06c2bed650 197 printf("mode: %d\n\r", mode) ;
nikitateggi 3:9a06c2bed650 198 printf("freq: %d Hz\n\r", freq) ;
nikitateggi 3:9a06c2bed650 199 printf("loop: %d\n\r", loop) ;
nikitateggi 3:9a06c2bed650 200 }
nikitateggi 3:9a06c2bed650 201
nikitateggi 3:9a06c2bed650 202 void doFreq(void)
nikitateggi 3:9a06c2bed650 203 {
nikitateggi 3:9a06c2bed650 204 // int freq = 0 ;
nikitateggi 3:9a06c2bed650 205 // scanf("%d", &freq) ;
nikitateggi 3:9a06c2bed650 206 printf("setting frequency to %d\n\r", freq) ;
nikitateggi 3:9a06c2bed650 207 mySpi.frequency(freq) ;
nikitateggi 3:9a06c2bed650 208 }
nikitateggi 3:9a06c2bed650 209
nikitateggi 3:9a06c2bed650 210 void doMode(void)
nikitateggi 3:9a06c2bed650 211 {
nikitateggi 3:9a06c2bed650 212 //scanf("%d", &mode) ;
nikitateggi 3:9a06c2bed650 213 printf("setting format(%d, %d)\n\r",bits, mode) ;
nikitateggi 3:9a06c2bed650 214 mySpi.format(bits, mode) ;
nikitateggi 3:9a06c2bed650 215 }
nikitateggi 3:9a06c2bed650 216
nikitateggi 3:9a06c2bed650 217 void doBit(void)
nikitateggi 3:9a06c2bed650 218 {
nikitateggi 3:9a06c2bed650 219 // scanf("%d", &bits) ;
nikitateggi 3:9a06c2bed650 220 printf("setting format(%d, %d)\n\r",bits, mode) ;
nikitateggi 3:9a06c2bed650 221 mySpi.format(bits, mode) ;
nikitateggi 3:9a06c2bed650 222 }
nikitateggi 3:9a06c2bed650 223
nikitateggi 3:9a06c2bed650 224 void doWrite(void)
nikitateggi 3:9a06c2bed650 225 {
nikitateggi 3:9a06c2bed650 226
nikitateggi 3:9a06c2bed650 227 //DRDY_BAR1.disable_irq();
nikitateggi 3:9a06c2bed650 228
nikitateggi 3:9a06c2bed650 229 CHIPSEL_BAR = 0;
nikitateggi 3:9a06c2bed650 230 // int freq1 = 50000;
nikitateggi 3:9a06c2bed650 231 // mySpi.frequency(freq1) ;
nikitateggi 3:9a06c2bed650 232 value1 = mySpi.write(0x00);
nikitateggi 3:9a06c2bed650 233 value2 = mySpi.write(0x00);
nikitateggi 3:9a06c2bed650 234 value3 = mySpi.write(0x00);
nikitateggi 3:9a06c2bed650 235 value4 = mySpi.write(0x00);
nikitateggi 3:9a06c2bed650 236 value5 = mySpi.write(0x00);
nikitateggi 3:9a06c2bed650 237 value6 = mySpi.write(0x00);
nikitateggi 3:9a06c2bed650 238
nikitateggi 3:9a06c2bed650 239 CHIPSEL_BAR = 0;
nikitateggi 3:9a06c2bed650 240 //DRDY_BAR1.enable_irq();
nikitateggi 3:9a06c2bed650 241 }
nikitateggi 3:9a06c2bed650 242
nikitateggi 3:9a06c2bed650 243 void doRead(void)
nikitateggi 3:9a06c2bed650 244 {
nikitateggi 3:9a06c2bed650 245 int dummy = 0 ;
nikitateggi 3:9a06c2bed650 246
nikitateggi 3:9a06c2bed650 247 while(!DRDY_BAR)
nikitateggi 3:9a06c2bed650 248 ADS_START = 0;
nikitateggi 3:9a06c2bed650 249
nikitateggi 3:9a06c2bed650 250 value = mySpi.write(dummy) ;
nikitateggi 3:9a06c2bed650 251
nikitateggi 3:9a06c2bed650 252 }
nikitateggi 3:9a06c2bed650 253
nikitateggi 3:9a06c2bed650 254 void doLoop(void)
nikitateggi 3:9a06c2bed650 255 {
nikitateggi 3:9a06c2bed650 256 // scanf("%d", &loop) ;
nikitateggi 3:9a06c2bed650 257 printf("repeat number has been set to %d\n\r", loop) ;
nikitateggi 3:9a06c2bed650 258 }
nikitateggi 3:9a06c2bed650 259
nikitateggi 3:9a06c2bed650 260 void cmdWrite(int data)
nikitateggi 3:9a06c2bed650 261 {
nikitateggi 3:9a06c2bed650 262 CHIPSEL_BAR = 0;
nikitateggi 3:9a06c2bed650 263 mySpi.write(data) ;
nikitateggi 3:9a06c2bed650 264 wait_ms(1);
nikitateggi 3:9a06c2bed650 265 CHIPSEL_BAR = 1;
nikitateggi 3:9a06c2bed650 266 }
nikitateggi 3:9a06c2bed650 267
nikitateggi 3:9a06c2bed650 268 void regWrite(int address, int data)
nikitateggi 3:9a06c2bed650 269 {
nikitateggi 3:9a06c2bed650 270 int data_to_send = CMD_WREG << 5;
nikitateggi 3:9a06c2bed650 271 data_to_send = data_to_send | address;
nikitateggi 3:9a06c2bed650 272 CHIPSEL_BAR = 0;
nikitateggi 3:9a06c2bed650 273 mySpi.write(data_to_send);
nikitateggi 3:9a06c2bed650 274 wait_ms(1);
nikitateggi 3:9a06c2bed650 275 mySpi.write(0x00) ;
nikitateggi 3:9a06c2bed650 276 wait_ms(1);
nikitateggi 3:9a06c2bed650 277 mySpi.write(data) ;
nikitateggi 3:9a06c2bed650 278 wait_ms(1);
nikitateggi 3:9a06c2bed650 279 CHIPSEL_BAR = 1;
nikitateggi 3:9a06c2bed650 280 }
nikitateggi 3:9a06c2bed650 281
nikitateggi 3:9a06c2bed650 282 void regRead(int address)
nikitateggi 3:9a06c2bed650 283 {
nikitateggi 3:9a06c2bed650 284 int data_to_receive = CMD_RREG << 5;
nikitateggi 3:9a06c2bed650 285 data_to_receive = data_to_receive | address;
nikitateggi 3:9a06c2bed650 286 CHIPSEL_BAR = 0;
nikitateggi 3:9a06c2bed650 287 mySpi.write(data_to_receive);
nikitateggi 3:9a06c2bed650 288 wait_ms(1);
nikitateggi 3:9a06c2bed650 289 mySpi.write(0x00) ;
nikitateggi 3:9a06c2bed650 290 wait_ms(1);
nikitateggi 3:9a06c2bed650 291 data1 = mySpi.write(0x00) ;
nikitateggi 3:9a06c2bed650 292
nikitateggi 3:9a06c2bed650 293 //printf("DEVICE ID register read from ADS is= 0x%X\n",data1);
nikitateggi 3:9a06c2bed650 294
nikitateggi 3:9a06c2bed650 295 //wait_ms(1);
nikitateggi 3:9a06c2bed650 296 CHIPSEL_BAR = 1;
nikitateggi 3:9a06c2bed650 297 }
nikitateggi 3:9a06c2bed650 298
nikitateggi 3:9a06c2bed650 299
nikitateggi 3:9a06c2bed650 300
nikitateggi 3:9a06c2bed650 301 void freqset()
nikitateggi 3:9a06c2bed650 302 {
nikitateggi 3:9a06c2bed650 303 mySpi.frequency(freq) ;
nikitateggi 3:9a06c2bed650 304 mySpi.format(bits, mode) ;
nikitateggi 3:9a06c2bed650 305 }
nikitateggi 3:9a06c2bed650 306
nikitateggi 3:9a06c2bed650 307
nikitateggi 3:9a06c2bed650 308
nikitateggi 3:9a06c2bed650 309 void setupfunc()
nikitateggi 3:9a06c2bed650 310 {
nikitateggi 3:9a06c2bed650 311 setup() ;
nikitateggi 3:9a06c2bed650 312 cmdWrite(CMD_RDATAC) ;
nikitateggi 3:9a06c2bed650 313 ADS_START = 1;
nikitateggi 3:9a06c2bed650 314 }
nikitateggi 3:9a06c2bed650 315
nikitateggi 20:7c64e6ecad76 316 uint8_t ecgsetupfunc()
nikitateggi 3:9a06c2bed650 317 {
nikitateggi 20:7c64e6ecad76 318 // uint8_t lead=0;
nikitateggi 3:9a06c2bed650 319 ecgsetup(); // To set the ADS1291 registers for ECG signal generation
nikitateggi 3:9a06c2bed650 320 cmdWrite(CMD_RDATAC) ;
nikitateggi 3:9a06c2bed650 321 ADS_START = 1;
nikitateggi 20:7c64e6ecad76 322 return data1; // returns lead off reg value // 14/06
nikitateggi 3:9a06c2bed650 323 }
nikitateggi 3:9a06c2bed650 324
nikitateggi 3:9a06c2bed650 325 void ecgtestsetupfunc()
nikitateggi 3:9a06c2bed650 326 {
nikitateggi 3:9a06c2bed650 327 testsetup(); // To set the ADS1291 registers for ECG signal generation
nikitateggi 3:9a06c2bed650 328 cmdWrite(CMD_RDATAC) ;
nikitateggi 3:9a06c2bed650 329 ADS_START = 1;
nikitateggi 3:9a06c2bed650 330
nikitateggi 3:9a06c2bed650 331 }
avp2417 36:00d96aa14658 332 uint32_t readvalue()
nikitateggi 3:9a06c2bed650 333 {
avp2417 36:00d96aa14658 334 uint32_t concatenate_value;
nikitateggi 3:9a06c2bed650 335 while(DRDY_BAR);
nikitateggi 3:9a06c2bed650 336 doWrite() ;
nikitateggi 3:9a06c2bed650 337 concatenate_value = ((value4<< 16)|(value5 <<8) |(value6));
nikitateggi 3:9a06c2bed650 338
nikitateggi 3:9a06c2bed650 339 return concatenate_value;
nikitateggi 3:9a06c2bed650 340 }
nikitateggi 3:9a06c2bed650 341
nikitateggi 3:9a06c2bed650 342
nikitateggi 3:9a06c2bed650 343
nikitateggi 3:9a06c2bed650 344
nikitateggi 3:9a06c2bed650 345