INA226 Test Program. Using INA226 class library.

Dependencies:   INA226 mbed

Committer:
tosihisa
Date:
Sat Nov 24 18:38:51 2012 +0000
Revision:
1:a942950ac282
Parent:
0:b20f8673a7fa
recompile.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tosihisa 0:b20f8673a7fa 1 /*
tosihisa 0:b20f8673a7fa 2 * Copyright (c) 2011 Toshihisa T
tosihisa 0:b20f8673a7fa 3 * Released under the MIT License: http://mbed.org/license/mit
tosihisa 0:b20f8673a7fa 4 */
tosihisa 0:b20f8673a7fa 5
tosihisa 0:b20f8673a7fa 6 #include "mbed.h"
tosihisa 0:b20f8673a7fa 7 #include "INA226.hpp"
tosihisa 0:b20f8673a7fa 8
tosihisa 0:b20f8673a7fa 9 Serial debug(USBTX,USBRX);
tosihisa 0:b20f8673a7fa 10 DigitalOut myled(LED1);
tosihisa 0:b20f8673a7fa 11 I2C i2c(p28,p27);
tosihisa 0:b20f8673a7fa 12 INA226 VCmonitor(i2c);
tosihisa 0:b20f8673a7fa 13
tosihisa 0:b20f8673a7fa 14 int main() {
tosihisa 0:b20f8673a7fa 15 unsigned short val;
tosihisa 0:b20f8673a7fa 16 double V,C;
tosihisa 0:b20f8673a7fa 17 int count = 1;
tosihisa 0:b20f8673a7fa 18
tosihisa 0:b20f8673a7fa 19 debug.format(8,ParityNone,1);
tosihisa 0:b20f8673a7fa 20 debug.baud(115200);
tosihisa 0:b20f8673a7fa 21 debug.printf("VCmonitor INA226 TEST Program. (BUILD:[" __DATE__ "/" __TIME__ "])\n");
tosihisa 0:b20f8673a7fa 22
tosihisa 0:b20f8673a7fa 23 if(!VCmonitor.isExist()){
tosihisa 0:b20f8673a7fa 24 debug.printf("VCmonitor NOT FOUND\n");
tosihisa 0:b20f8673a7fa 25 while(1){}
tosihisa 0:b20f8673a7fa 26 }
tosihisa 0:b20f8673a7fa 27 debug.printf("VCmonitor FOUND\n");
tosihisa 0:b20f8673a7fa 28
tosihisa 0:b20f8673a7fa 29 val = 0;
tosihisa 0:b20f8673a7fa 30 if(VCmonitor.rawRead(0x00,&val) != 0){
tosihisa 0:b20f8673a7fa 31 debug.printf("VCmonitor READ ERROR\n");
tosihisa 0:b20f8673a7fa 32 while(1){}
tosihisa 0:b20f8673a7fa 33 }
tosihisa 0:b20f8673a7fa 34 debug.printf("VCmonitor Reg 0x00 : 0x%04x\n",val);
tosihisa 0:b20f8673a7fa 35
tosihisa 0:b20f8673a7fa 36 VCmonitor.setCurrentCalibration();
tosihisa 0:b20f8673a7fa 37
tosihisa 0:b20f8673a7fa 38 while(1) {
tosihisa 0:b20f8673a7fa 39 if((VCmonitor.getVoltage(&V) == 0) && (VCmonitor.getCurrent(&C) == 0)){
tosihisa 0:b20f8673a7fa 40 debug.printf("%d,V,%f,C,%f\n",count,V,C);
tosihisa 0:b20f8673a7fa 41 }
tosihisa 0:b20f8673a7fa 42 myled = 1;
tosihisa 0:b20f8673a7fa 43 wait(0.5);
tosihisa 0:b20f8673a7fa 44 myled = 0;
tosihisa 0:b20f8673a7fa 45 wait(0.5);
tosihisa 0:b20f8673a7fa 46 count++;
tosihisa 0:b20f8673a7fa 47 }
tosihisa 0:b20f8673a7fa 48 }