albatross
/
INA226TEST
1月13日分
Fork of INA226TEST by
main.cpp@2:ae52901630fc, 2016-01-13 (annotated)
- Committer:
- YusukeWakuta
- Date:
- Wed Jan 13 11:07:27 2016 +0000
- Revision:
- 2:ae52901630fc
- Parent:
- 0:b20f8673a7fa
1?13??
Who changed what in which revision?
User | Revision | Line number | New 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() { |
YusukeWakuta | 2:ae52901630fc | 15 | i2c.start(); |
tosihisa | 0:b20f8673a7fa | 16 | unsigned short val; |
tosihisa | 0:b20f8673a7fa | 17 | double V,C; |
tosihisa | 0:b20f8673a7fa | 18 | int count = 1; |
tosihisa | 0:b20f8673a7fa | 19 | |
tosihisa | 0:b20f8673a7fa | 20 | debug.format(8,ParityNone,1); |
YusukeWakuta | 2:ae52901630fc | 21 | debug.baud(9600); |
YusukeWakuta | 2:ae52901630fc | 22 | debug.printf("VCmonitor INA226 TEST Program. (BUILD:[" __DATE__ "/" __TIME__ "])\n\r"); |
tosihisa | 0:b20f8673a7fa | 23 | |
tosihisa | 0:b20f8673a7fa | 24 | if(!VCmonitor.isExist()){ |
YusukeWakuta | 2:ae52901630fc | 25 | debug.printf("VCmonitor NOT FOUND\n\r"); |
tosihisa | 0:b20f8673a7fa | 26 | while(1){} |
tosihisa | 0:b20f8673a7fa | 27 | } |
tosihisa | 0:b20f8673a7fa | 28 | debug.printf("VCmonitor FOUND\n"); |
tosihisa | 0:b20f8673a7fa | 29 | |
tosihisa | 0:b20f8673a7fa | 30 | val = 0; |
tosihisa | 0:b20f8673a7fa | 31 | if(VCmonitor.rawRead(0x00,&val) != 0){ |
tosihisa | 0:b20f8673a7fa | 32 | debug.printf("VCmonitor READ ERROR\n"); |
tosihisa | 0:b20f8673a7fa | 33 | while(1){} |
tosihisa | 0:b20f8673a7fa | 34 | } |
tosihisa | 0:b20f8673a7fa | 35 | debug.printf("VCmonitor Reg 0x00 : 0x%04x\n",val); |
tosihisa | 0:b20f8673a7fa | 36 | |
tosihisa | 0:b20f8673a7fa | 37 | VCmonitor.setCurrentCalibration(); |
tosihisa | 0:b20f8673a7fa | 38 | |
tosihisa | 0:b20f8673a7fa | 39 | while(1) { |
tosihisa | 0:b20f8673a7fa | 40 | if((VCmonitor.getVoltage(&V) == 0) && (VCmonitor.getCurrent(&C) == 0)){ |
YusukeWakuta | 2:ae52901630fc | 41 | debug.printf("%d,V,%f,C,%f\n\r",count,V,C); |
tosihisa | 0:b20f8673a7fa | 42 | } |
tosihisa | 0:b20f8673a7fa | 43 | myled = 1; |
tosihisa | 0:b20f8673a7fa | 44 | wait(0.5); |
tosihisa | 0:b20f8673a7fa | 45 | myled = 0; |
tosihisa | 0:b20f8673a7fa | 46 | wait(0.5); |
tosihisa | 0:b20f8673a7fa | 47 | count++; |
tosihisa | 0:b20f8673a7fa | 48 | } |
YusukeWakuta | 2:ae52901630fc | 49 | i2c.stop(); |
tosihisa | 0:b20f8673a7fa | 50 | } |