#include <stdio.h>
#include <stdint.h>
static float prv_detector_cur_get_amps(void)
{
const uint32_t dac1 = 2000;
const float Io = (((4096 - (float) dac1) * 3.3f) / 4096) /
10000.0; /* offset current */
const int32_t a = 0;
const int32_t b = 0;
int32_t iadc = 32768 - a;
const float Ia = Io + ((((float) iadc * 3.3f) / 65536) /
16000.0);
iadc = 32768 - b;
const float Ib = Io + ((((float) iadc * 3.3f) / 65536) /
16000.0);
const float Isense = Ia + Ib;
return Isense;
}
int main(void) {
// your code goes here
printf("%f", (prv_detector_cur_get_amps
() * 1e3) / 28.
f); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRpbnQuaD4KCnN0YXRpYyBmbG9hdCBwcnZfZGV0ZWN0b3JfY3VyX2dldF9hbXBzKHZvaWQpCnsKICAgIGNvbnN0IHVpbnQzMl90IGRhYzEgPSAyMDAwOwogICAgY29uc3QgZmxvYXQgIElvICAgPSAoKCg0MDk2IC0gKGZsb2F0KSBkYWMxKSAqIDMuM2YpIC8gNDA5NikgLwogICAgICAgICAgICAgICAgICAgICAgIDEwMDAwLjA7IC8qIG9mZnNldCBjdXJyZW50ICovCiAgICBjb25zdCBpbnQzMl90IGEgICAgICA9IDA7CiAgICBjb25zdCBpbnQzMl90IGIgICAgICA9IDA7CiAgICBpbnQzMl90ICAgICAgIGlhZGMgICA9IDMyNzY4IC0gYTsKICAgIGNvbnN0IGZsb2F0IElhICAgICA9IElvICsgKCgoKGZsb2F0KSBpYWRjICogMy4zZikgLyA2NTUzNikgLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE2MDAwLjApOwogICAgaWFkYyAgICAgICAgICAgICAgICAgPSAzMjc2OCAtIGI7CiAgICBjb25zdCBmbG9hdCBJYiAgICAgPSBJbyArICgoKChmbG9hdCkgaWFkYyAqIDMuM2YpIC8gNjU1MzYpIC8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNjAwMC4wKTsKICAgIGNvbnN0IGZsb2F0IElzZW5zZSA9IElhICsgSWI7CiAgICByZXR1cm4gSXNlbnNlOwp9CgppbnQgbWFpbih2b2lkKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglwcmludGYoIiVmIiwgKHBydl9kZXRlY3Rvcl9jdXJfZ2V0X2FtcHMoKSAqIDFlMykgLyAyOC5mKTsKCXJldHVybiAwOwp9Cg==