IGGE Power board

Dependencies:   mbed ADS1015 USBDevice MCP4725

Committer:
jamesdem1123
Date:
Wed Mar 26 02:56:20 2014 +0000
Revision:
1:dd6f8dc1e54e
Parent:
0:54d5ccfcb14c
Child:
2:321c8783ea30
Nightly 25 Mar

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jamesdem1123 1:dd6f8dc1e54e 1
jamesdem1123 0:54d5ccfcb14c 2 #include "mbed.h"
jamesdem1123 1:dd6f8dc1e54e 3 #include "Adafruit_ADS1015.h"
jamesdem1123 1:dd6f8dc1e54e 4 #include "USBSerial.h"
jamesdem1123 1:dd6f8dc1e54e 5
jamesdem1123 1:dd6f8dc1e54e 6 #define SERIAL_BAUD_RATE 9600
jamesdem1123 1:dd6f8dc1e54e 7
jamesdem1123 1:dd6f8dc1e54e 8 //library function setup
jamesdem1123 1:dd6f8dc1e54e 9 I2C i2c(p28, p27);
jamesdem1123 1:dd6f8dc1e54e 10 Adafruit_ADS1015 ads(&i2c);
jamesdem1123 1:dd6f8dc1e54e 11 USBSerial pc; // USB CDC serial port
jamesdem1123 1:dd6f8dc1e54e 12 CAN cantbus(p30, p29);
jamesdem1123 1:dd6f8dc1e54e 13
jamesdem1123 1:dd6f8dc1e54e 14 //leds
jamesdem1123 1:dd6f8dc1e54e 15 DigitalOut led0(LED1);
jamesdem1123 1:dd6f8dc1e54e 16 DigitalOut led1(LED2);
jamesdem1123 1:dd6f8dc1e54e 17 DigitalOut led2(LED3);
jamesdem1123 1:dd6f8dc1e54e 18 DigitalOut led3(LED4);
jamesdem1123 0:54d5ccfcb14c 19
jamesdem1123 1:dd6f8dc1e54e 20 //current readings
jamesdem1123 1:dd6f8dc1e54e 21 AnalogIn iBat(p15); //75a
jamesdem1123 1:dd6f8dc1e54e 22 AnalogIn iTwelve(p17); //31a
jamesdem1123 1:dd6f8dc1e54e 23 AnalogIn iFive(p18);//31a
jamesdem1123 1:dd6f8dc1e54e 24 AnalogIn iMot(p16);//75a
jamesdem1123 1:dd6f8dc1e54e 25 AnalogIn iCpu(p20);//31a
jamesdem1123 1:dd6f8dc1e54e 26 AnalogIn iPeri(p19);//31a
jamesdem1123 1:dd6f8dc1e54e 27
jamesdem1123 1:dd6f8dc1e54e 28 //voltage scalers
jamesdem1123 1:dd6f8dc1e54e 29 #define batScal 12.2
jamesdem1123 1:dd6f8dc1e54e 30 #define motScal 12.2
jamesdem1123 1:dd6f8dc1e54e 31 #define twelveScal 12.2
jamesdem1123 1:dd6f8dc1e54e 32 #define fiveScal 12.2
jamesdem1123 1:dd6f8dc1e54e 33
jamesdem1123 1:dd6f8dc1e54e 34 //Relays
jamesdem1123 1:dd6f8dc1e54e 35 DigitalOut relSens(p21);
jamesdem1123 1:dd6f8dc1e54e 36 DigitalOut relUsr(p22);
jamesdem1123 1:dd6f8dc1e54e 37 DigitalOut relNet(p23);
jamesdem1123 1:dd6f8dc1e54e 38 DigitalOut relCpuPower(p25);
jamesdem1123 1:dd6f8dc1e54e 39 DigitalOut relCpuRst(p24);
jamesdem1123 1:dd6f8dc1e54e 40
jamesdem1123 0:54d5ccfcb14c 41
jamesdem1123 1:dd6f8dc1e54e 42 //30 minute graph arrays
jamesdem1123 1:dd6f8dc1e54e 43 uint16_t iBatArr [180];
jamesdem1123 1:dd6f8dc1e54e 44 uint16_t vBatArr [180];
jamesdem1123 1:dd6f8dc1e54e 45 uint16_t iTwelveArr [180];
jamesdem1123 1:dd6f8dc1e54e 46 uint16_t vTwelveArr [180];
jamesdem1123 1:dd6f8dc1e54e 47 uint16_t iFiveArr [180];
jamesdem1123 1:dd6f8dc1e54e 48 uint16_t vFiveArr [180];
jamesdem1123 1:dd6f8dc1e54e 49 uint16_t iMotArr [180];
jamesdem1123 1:dd6f8dc1e54e 50 uint16_t vMotArr [180];
jamesdem1123 1:dd6f8dc1e54e 51 uint16_t iCpuArr [180];
jamesdem1123 1:dd6f8dc1e54e 52 uint16_t iPeriArr [180];
jamesdem1123 1:dd6f8dc1e54e 53
jamesdem1123 1:dd6f8dc1e54e 54
jamesdem1123 1:dd6f8dc1e54e 55 //volt
jamesdem1123 1:dd6f8dc1e54e 56 uint16_t vBat, vTwelve,vFive,vMot ;
jamesdem1123 1:dd6f8dc1e54e 57
jamesdem1123 1:dd6f8dc1e54e 58 void setup(void)
jamesdem1123 1:dd6f8dc1e54e 59 {
jamesdem1123 1:dd6f8dc1e54e 60 //initialize relays
jamesdem1123 1:dd6f8dc1e54e 61 relSens= 0;
jamesdem1123 1:dd6f8dc1e54e 62 relNet =0;
jamesdem1123 1:dd6f8dc1e54e 63 relCpuPower=0;
jamesdem1123 1:dd6f8dc1e54e 64 relCpuRst =0;
jamesdem1123 1:dd6f8dc1e54e 65 relUsr=0;
jamesdem1123 1:dd6f8dc1e54e 66
jamesdem1123 1:dd6f8dc1e54e 67 }
jamesdem1123 1:dd6f8dc1e54e 68
jamesdem1123 1:dd6f8dc1e54e 69
jamesdem1123 1:dd6f8dc1e54e 70 int main()
jamesdem1123 1:dd6f8dc1e54e 71 {
jamesdem1123 1:dd6f8dc1e54e 72 setup();
jamesdem1123 1:dd6f8dc1e54e 73 while (1) {
jamesdem1123 1:dd6f8dc1e54e 74 vBat = ads.readADC_SingleEnded(0); // read channel 0
jamesdem1123 1:dd6f8dc1e54e 75 vTwelve = ads.readADC_SingleEnded(1); // read channel 0
jamesdem1123 1:dd6f8dc1e54e 76 vFive = ads.readADC_SingleEnded(2); // read channel 0
jamesdem1123 1:dd6f8dc1e54e 77 vMot = ads.readADC_SingleEnded(3); // read channel 0
jamesdem1123 1:dd6f8dc1e54e 78
jamesdem1123 1:dd6f8dc1e54e 79 pc.printf("reading: %d\r\n", vBat); // print reading
jamesdem1123 1:dd6f8dc1e54e 80 pc.printf("reading: %d\r\n", vTwelve); // print reading
jamesdem1123 1:dd6f8dc1e54e 81 pc.printf("reading: %d\r\n", vFive); // print reading
jamesdem1123 1:dd6f8dc1e54e 82 pc.printf("reading: %d\r\n", vMot); // print reading
jamesdem1123 1:dd6f8dc1e54e 83
jamesdem1123 1:dd6f8dc1e54e 84 wait(2); // loop 2 sek
jamesdem1123 1:dd6f8dc1e54e 85 led0 = 1;
jamesdem1123 0:54d5ccfcb14c 86 wait(0.2);
jamesdem1123 1:dd6f8dc1e54e 87 led0 = 0;
jamesdem1123 0:54d5ccfcb14c 88 wait(0.2);
jamesdem1123 0:54d5ccfcb14c 89 }
jamesdem1123 0:54d5ccfcb14c 90 }
jamesdem1123 1:dd6f8dc1e54e 91
jamesdem1123 1:dd6f8dc1e54e 92
jamesdem1123 1:dd6f8dc1e54e 93
jamesdem1123 1:dd6f8dc1e54e 94
jamesdem1123 1:dd6f8dc1e54e 95
jamesdem1123 1:dd6f8dc1e54e 96
jamesdem1123 1:dd6f8dc1e54e 97
jamesdem1123 1:dd6f8dc1e54e 98
jamesdem1123 1:dd6f8dc1e54e 99
jamesdem1123 1:dd6f8dc1e54e 100
jamesdem1123 1:dd6f8dc1e54e 101
jamesdem1123 1:dd6f8dc1e54e 102
jamesdem1123 1:dd6f8dc1e54e 103