|
|
@ -29,7 +29,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
int sensConf(unsigned char uartNumber, int baudRate, unsigned char mode[], unsigned char response[], int tries);
|
|
|
|
int sensConf(unsigned char uartNumber, int baudRate, unsigned char mode[], unsigned char response[], int tries);
|
|
|
|
int measure(unsigned char uartNumber, unsigned char command[], int multiplier, int excess);
|
|
|
|
int measure(unsigned char uartNumber, unsigned char command[], int multiplier, int excess);
|
|
|
|
char *gmeasures(char src[], char fval, int nchar);
|
|
|
|
char *getMeasures(char src[], char fval, int nchar);
|
|
|
|
int str2int(unsigned char *ptr);
|
|
|
|
int str2int(unsigned char *ptr);
|
|
|
|
int DAQ(int t_hrs, int sp_s);
|
|
|
|
int DAQ(int t_hrs, int sp_s);
|
|
|
|
|
|
|
|
|
|
|
@ -98,35 +98,6 @@ int sensConf(unsigned char uartNumber, int baudRate, unsigned char mode[], unsig
|
|
|
|
return -1;
|
|
|
|
return -1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int measure(unsigned char uartNumber, unsigned char command[], int multiplier, int excess){
|
|
|
|
|
|
|
|
int measure;
|
|
|
|
|
|
|
|
uartTransmit(uartNumber, command);
|
|
|
|
|
|
|
|
uartReceive(uartNumber);
|
|
|
|
|
|
|
|
measure = (str2int(&receive[uartNumber]) - excess)*multiplier ;
|
|
|
|
|
|
|
|
return measure;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int read_measure(unsigned char uartNumber, int multiplier, int excess){
|
|
|
|
|
|
|
|
int measure;
|
|
|
|
|
|
|
|
uartReceive(uartNumber);
|
|
|
|
|
|
|
|
measure = (str2int(&receive[uartNumber]) - excess)*multiplier ;
|
|
|
|
|
|
|
|
return measure;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int str2int(unsigned char *ptr){
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int number = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
while (*ptr != '\0') {
|
|
|
|
|
|
|
|
if ((*ptr >= '0') && (*ptr <= '9')) {
|
|
|
|
|
|
|
|
int dig = (*ptr) - '0';
|
|
|
|
|
|
|
|
number = number*10 + dig;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
ptr++;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return number;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int DAQ(int t_hrs, int sp_s)
|
|
|
|
int DAQ(int t_hrs, int sp_s)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
FILE* dfp; // create a file pointer
|
|
|
|
FILE* dfp; // create a file pointer
|
|
|
@ -175,17 +146,17 @@ int DAQ(int t_hrs, int sp_s)
|
|
|
|
uartReceive(LuminOX);
|
|
|
|
uartReceive(LuminOX);
|
|
|
|
uartReceive(SprintIR);
|
|
|
|
uartReceive(SprintIR);
|
|
|
|
//interpreting and spliting measurements in variables
|
|
|
|
//interpreting and spliting measurements in variables
|
|
|
|
memcpy(co2_uf, gmeasures(receive[SprintIR],'z', 5), 5);
|
|
|
|
memcpy(co2_uf, getMeasures(receive[SprintIR],'z', 5), 5);
|
|
|
|
memcpy(co2_f, gmeasures(receive[SprintIR],'Z', 5), 5);
|
|
|
|
memcpy(co2_f, getMeasures(receive[SprintIR],'Z', 5), 5);
|
|
|
|
memcpy(co_uf, gmeasures(receive[COAF], 'z', 5), 5);
|
|
|
|
memcpy(co_uf, getMeasures(receive[COAF], 'z', 5), 5);
|
|
|
|
memcpy(co_f, gmeasures(receive[COAF], 'Z', 5), 5);
|
|
|
|
memcpy(co_f, getMeasures(receive[COAF], 'Z', 5), 5);
|
|
|
|
memcpy(o2_ppm, gmeasures(receive[LuminOX], 'O', 6), 6);
|
|
|
|
memcpy(o2_ppm, getMeasures(receive[LuminOX], 'O', 6), 6);
|
|
|
|
memcpy(o2_xcent, gmeasures(receive[LuminOX], '%', 6), 6);
|
|
|
|
memcpy(o2_xcent, getMeasures(receive[LuminOX], '%', 6), 6);
|
|
|
|
memcpy(co2_temp, gmeasures(receive[COAF], 'T', 5), 5);
|
|
|
|
memcpy(co2_temp, getMeasures(receive[SprintIR],'T', 5), 5);
|
|
|
|
memcpy(o2_temp, gmeasures(receive[LuminOX], 'T', 5), 5);
|
|
|
|
memcpy(o2_temp, getMeasures(receive[LuminOX], 'T', 5), 5);
|
|
|
|
memcpy(co2_press,gmeasures(receive[COAF], 'B', 5), 5);
|
|
|
|
memcpy(co2_press,getMeasures(receive[SprintIR],'B', 5), 5);
|
|
|
|
memcpy(o2_press, gmeasures(receive[LuminOX], 'P', 4), 4);
|
|
|
|
memcpy(o2_press, getMeasures(receive[LuminOX], 'P', 4), 4);
|
|
|
|
memcpy(co2_relH, gmeasures(receive[COAF], 'H', 5), 5);
|
|
|
|
memcpy(co2_relH, getMeasures(receive[SprintIR],'H', 5), 5);
|
|
|
|
//saving formated measurements in string DATA
|
|
|
|
//saving formated measurements in string DATA
|
|
|
|
sprintf(DATA,
|
|
|
|
sprintf(DATA,
|
|
|
|
"%d\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s",
|
|
|
|
"%d\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s",
|
|
|
@ -205,7 +176,7 @@ int DAQ(int t_hrs, int sp_s)
|
|
|
|
return 0;
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
char *gmeasures(char src[], char fval, int nchar){
|
|
|
|
char *getMeasures(char src[], char fval, int nchar){
|
|
|
|
char * ptr = &src[0];
|
|
|
|
char * ptr = &src[0];
|
|
|
|
static char s[10]="";
|
|
|
|
static char s[10]="";
|
|
|
|
|
|
|
|
|
|
|
@ -214,3 +185,32 @@ char *gmeasures(char src[], char fval, int nchar){
|
|
|
|
memcpy(s, ptr, nchar);
|
|
|
|
memcpy(s, ptr, nchar);
|
|
|
|
return s;
|
|
|
|
return s;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int read_measure(unsigned char uartNumber, int multiplier, int excess){
|
|
|
|
|
|
|
|
int measure;
|
|
|
|
|
|
|
|
uartReceive(uartNumber);
|
|
|
|
|
|
|
|
measure = (str2int(&receive[uartNumber]) - excess)*multiplier ;
|
|
|
|
|
|
|
|
return measure;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int str2int(unsigned char *ptr){
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int number = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
while (*ptr != '\0') {
|
|
|
|
|
|
|
|
if ((*ptr >= '0') && (*ptr <= '9')) {
|
|
|
|
|
|
|
|
int dig = (*ptr) - '0';
|
|
|
|
|
|
|
|
number = number*10 + dig;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
ptr++;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return number;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int measure(unsigned char uartNumber, unsigned char command[], int multiplier, int excess){
|
|
|
|
|
|
|
|
int measure;
|
|
|
|
|
|
|
|
uartTransmit(uartNumber, command);
|
|
|
|
|
|
|
|
uartReceive(uartNumber);
|
|
|
|
|
|
|
|
measure = (str2int(&receive[uartNumber]) - excess)*multiplier ;
|
|
|
|
|
|
|
|
return measure;
|
|
|
|
|
|
|
|
}
|
|
|
|