minor tweaks for XADC code #736
@ -28,6 +28,7 @@ will consitute of a breaking change warranting a new major release:
|
|||||||
components (no sensors available), irrespective of current switch state.
|
components (no sensors available), irrespective of current switch state.
|
||||||
- Make OBSW compatible to prospective FW version v5.0.0, where the Q7 I2C devices were
|
- Make OBSW compatible to prospective FW version v5.0.0, where the Q7 I2C devices were
|
||||||
moved to a PL I2C block and the TMP sensor devices were moved to the PS I2C0.
|
moved to a PL I2C block and the TMP sensor devices were moved to the PS I2C0.
|
||||||
|
- Made `Xadc` code a little bit more robust against errors.
|
||||||
|
|
||||||
## Fixed
|
## Fixed
|
||||||
|
|
||||||
|
@ -129,7 +129,7 @@ ReturnValue_t Xadc::readValFromFile(const char* filename, T& val) {
|
|||||||
sif::warning << "Xadc::readValFromFile: Failed to open file " << filename << std::endl;
|
sif::warning << "Xadc::readValFromFile: Failed to open file " << filename << std::endl;
|
||||||
return returnvalue::FAILED;
|
return returnvalue::FAILED;
|
||||||
}
|
}
|
||||||
char valstring[MAX_STR_LENGTH] = "";
|
char valstring[MAX_STR_LENGTH]{};
|
||||||
char* returnVal = fgets(valstring, MAX_STR_LENGTH, fp);
|
char* returnVal = fgets(valstring, MAX_STR_LENGTH, fp);
|
||||||
if (returnVal == nullptr) {
|
if (returnVal == nullptr) {
|
||||||
sif::warning << "Xadc::readValFromFile: Failed to read string from file " << filename
|
sif::warning << "Xadc::readValFromFile: Failed to read string from file " << filename
|
||||||
@ -139,6 +139,11 @@ ReturnValue_t Xadc::readValFromFile(const char* filename, T& val) {
|
|||||||
}
|
}
|
||||||
std::istringstream valSstream(valstring);
|
std::istringstream valSstream(valstring);
|
||||||
valSstream >> val;
|
valSstream >> val;
|
||||||
|
if(valSstream.bad()) {
|
||||||
|
sif::warning << "Xadc: Conversion of value to target type failed" << std::endl;
|
||||||
|
fclose(fp);
|
||||||
|
return returnvalue::FAILED;
|
||||||
|
}
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
return returnvalue::OK;
|
return returnvalue::OK;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user