diff options
author | Stanley Huang <stanleyhuangyc@gmail.com> | 2014-09-07 00:18:22 +1000 |
---|---|---|
committer | Stanley Huang <stanleyhuangyc@gmail.com> | 2014-09-07 00:18:22 +1000 |
commit | dc68f92f175fa8e0bf761baed4b49dc1e2aa150b (patch) | |
tree | 7d47ec70fa4bc156932488ea8b04b99f7cb46de5 /libraries/OBD/OBD.cpp | |
parent | 78698f65a918bfdb90dc3a19a85c84c9833125ba (diff) | |
download | 2021-arduino-obd-dc68f92f175fa8e0bf761baed4b49dc1e2aa150b.tar.gz 2021-arduino-obd-dc68f92f175fa8e0bf761baed4b49dc1e2aa150b.tar.bz2 2021-arduino-obd-dc68f92f175fa8e0bf761baed4b49dc1e2aa150b.zip |
Update getVoltage()
Diffstat (limited to 'libraries/OBD/OBD.cpp')
-rw-r--r-- | libraries/OBD/OBD.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/libraries/OBD/OBD.cpp b/libraries/OBD/OBD.cpp index a568d7a..0e09640 100644 --- a/libraries/OBD/OBD.cpp +++ b/libraries/OBD/OBD.cpp @@ -245,7 +245,7 @@ void COBD::wakeup() receive(); } -unsigned int COBD::getVoltage() +int COBD::getVoltage() { char buf[OBD_RECV_BUF_SIZE]; write("ATRV\r"); @@ -256,16 +256,16 @@ unsigned int COBD::getVoltage() int v1 = atoi(buf); int v2 = 0; char *p = strchr(buf, '.'); - if (p) v2 = atoi(p + 1); - if (v2 < 10) - v2 *= 100; - else if (v2 <100) - v2 *= 10; - return (unsigned int)v1 * 1000 + v2; + if (p++) { + if (*p >= '0' && *p <= '9') { + v2 = *p - '0'; + } + } + return v1 * 10 + v2; } } } - return 0; + return -1; } bool COBD::isValidPID(byte pid) |