Prius IPM controller

Dependencies:   mbed

Fork of analoghalls5_5 by N K

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers currentsensors.cpp Source File

currentsensors.cpp

00001 #include "includes.h"
00002 #include "sensors.h"
00003 
00004 AnalogCurrentSensor::AnalogCurrentSensor(PinName pin, float volts_per_amp) {
00005     _in = new AnalogIn(pin);
00006     _volts_per_amp = volts_per_amp;
00007     wait_us(100000);
00008     Zero();
00009 }
00010 
00011 void AnalogCurrentSensor::Zero() {
00012     float mean = 0;
00013     for(int i = 0; i < 1000; i++){
00014         mean += (float) *_in;
00015     }
00016     _zero_level = mean / 1000;
00017 }
00018 
00019 float AnalogCurrentSensor::GetCurrent() {
00020     return ((float) *_in - _zero_level) * 3.3f / _volts_per_amp;
00021 }