Problem with comparison.
/Modules/PowerSupply/LION2CELL01D/SW/setguage2cell.py |
---|
0,0 → 1,86 |
#!/usr/bin/python |
# Setuup of LION2CELL MLAB module |
import time |
import sys |
from pymlab import config |
while True: |
#### Sensor Configuration ########################################### |
cfg = config.Config( |
i2c = { |
"port": 0, # I2C bus number |
}, |
bus = [ |
{ |
"type": "i2chub", |
"address": 0x73, |
"children": [ |
{"name": "guage", "type": "lioncell", "channel": 7, }, |
], |
}, |
], |
) |
cfg.initialize() |
guage = cfg.get_device("guage") |
guage.WriteFlashByte(48, 0, 21, 0x0D) # Design Capacity 3350 mAh |
guage.WriteFlashByte(48, 0, 22, 0x16) # |
print "Design Capacity " |
guage.WriteFlashByte(48, 0, 23, 0x5E) # Design Energy 24120 mWh |
guage.WriteFlashByte(48, 0, 24, 0x38) # |
print "Design Energy" |
guage.WriteFlashByte(64, 0, 0, 0x9) # External Voltage Measurement |
print "External Voltage Measurement" |
guage.WriteFlashByte(64, 0, 7, 0x2) # Two Cells |
print "Two Cells" |
guage.WriteFlashByte(64, 0, 4, 0x74) # 8 LED (1+7), Shift Register |
print "LED" |
guage.WriteFlashByte(104, 0, 14, 0x28) # Voltage Measurement Range 10240 mV |
guage.WriteFlashByte(104, 0, 15, 0x00) # |
print "Voltage Measurement Range" |
guage.WriteFlashByte(82, 0, 0, 0x0D) # Set initial cell capacity 3350 mAh |
guage.WriteFlashByte(82, 0, 1, 0x16) # |
print "Initial cell capacity" |
guage.WriteFlashByte(83, 0, 0, 0x20) # Set Chem ID |
guage.WriteFlashByte(83, 0, 1, 0x17) # |
print "Chem ID" |
guage.reset() # Reset Guage |
print "Reset" |
time.sleep(1) |
flash = guage.ReadFlashBlock(48, 0) |
print "48 - ", |
print " ".join([hex(i) for i in flash]) |
flash = guage.ReadFlashBlock(64, 0) |
print "64 - ", |
print " ".join([hex(i) for i in flash]) |
flash = guage.ReadFlashBlock(104, 0) |
print "104 - ", |
print " ".join([hex(i) for i in flash]) |
print "DesCap =", guage.DesignCapacity(), "mAh" |
flash = guage.Chemistry() |
print "Chemistry = ", |
print " ".join([hex(i) for i in flash]) |
try: |
while True: |
# Battery status readout |
print "NominalAvailableCapacity =", guage.NominalAvailableCapacity(), "mAh, FullAvailabeCapacity =", guage.FullAvailabeCapacity(), "mAh, AvailableEnergy =", guage.AvailableEnergy(), "* 10 mWh" |
print "Temp =", guage.getTemp(), "degC, RemainCapacity =", guage.getRemainingCapacity(), "mAh, cap =", guage.FullChargeCapacity(), "mAh, U =", guage.Voltage(), "mV, I =", guage.AverageCurrent(), "mA, charge =", guage.StateOfCharge(), "%" |
time.sleep(3) |
except IOError: |
err = err + 1 |
print "IOError" |
continue |
except KeyboardInterrupt: |
sys.exit(0) |