Skip to content
Snippets Groups Projects
Commit bcafe251 authored by Paulus Kruger's avatar Paulus Kruger
Browse files

RCU version working

parent 6be0083d
Branches
No related tags found
1 merge request!8Pypcc2
...@@ -33,6 +33,6 @@ def I2C1server(addr,data,reg=None,read=0): ...@@ -33,6 +33,6 @@ def I2C1server(addr,data,reg=None,read=0):
return True; return True;
except: except:
if bus: bus.close() if bus: bus.close()
data[0]=0 # data[0]=0
return False; return False;
from I2C import * from I2C import *
import time import time
RCU=1 RCU=3
Ver="RCU2L v1.1" Ver="RCU2L v0.3"
R1=32 R1=0
ROM=0x50 ROM=0x50
#Set switch
I2C1server(0x70,[1<<RCU],reg=None,read=0) #select RCU
#Get ID
ID=[0]*4
I2C1server(ROM,ID,reg=0xFC,read=1) #select RCU
print(ID)
#exit()
#Upload version
Ver2=[ord(c.encode('utf-8')[0]) for c in Ver] Ver2=[ord(c.encode('utf-8')[0]) for c in Ver]
print(len(Ver),Ver,Ver2) print(len(Ver),Ver,Ver2)
V2=[0] V2=[0]
I2C1server(0x70,[1<<RCU],reg=None,read=0) #select RCU
for i,v in enumerate(Ver2): for i,v in enumerate(Ver2):
I2C1server(ROM,[],reg=R1+i,read=0) #select RCU time.sleep(0.1)
time.sleep(0.01) I2C1server(ROM,[v],reg=R1+i,read=0) #select RCU
I2C1server(ROM,[v],reg=None,read=0) #select RCU # I2C1server(ROM,[v],reg=None,read=0) #select RCU
time.sleep(0.01) time.sleep(0.1)
I2C1server(ROM,V2,reg=R1+i,read=1) #select RCU I2C1server(ROM,V2,reg=R1+i,read=1) #select RCU
print(i,v,V2) print(i,v,V2)
#Download version
Ver2=[0]*10 Ver2=[0]*10
I2C1server(ROM,Ver2,reg=R1,read=1) #select RCU I2C1server(ROM,Ver2,reg=R1,read=1) #select RCU
print(Ver2) print(Ver2)
...@@ -45,8 +45,8 @@ RCU_HBA2=DevReg(0x42,0,0,2) ...@@ -45,8 +45,8 @@ RCU_HBA2=DevReg(0x42,0,0,2)
RCU_HBA3=DevReg(0x43,0,0,3) RCU_HBA3=DevReg(0x43,0,0,3)
RCU_ROM_ID =DevReg(0x50,0,0,0) #32 bit ID=4 bytes RCU_ROM_ID =DevReg(0x50,0xfc,0xfc,0) #32 bit ID=4 bytes
RCU_ROM_Ver=DevReg(0x50,4,4,0) #String RCU_ROM_Ver=DevReg(0x50,0,0,0) #String
#Bitbang devices #Bitbang devices
#BBdev=namedtuple("BBdev","nPins devs pins addr") #BBdev=namedtuple("BBdev","nPins devs pins addr")
......
...@@ -197,6 +197,8 @@ class RCU1(): ...@@ -197,6 +197,8 @@ class RCU1():
self.SetI2CAddr(self,dev) self.SetI2CAddr(self,dev)
for RCUi in range(self.N): for RCUi in range(self.N):
self.SWcallback(1<<Vars.RCU_MPaddr.Switch[RCUi]) self.SWcallback(1<<Vars.RCU_MPaddr.Switch[RCUi])
#for i in range(len(value2)): value2[i]*=0;
value2[0]=0
self.GetI2Cnoreg(RCUi,dev,width,bitoffset,value2) self.GetI2Cnoreg(RCUi,dev,width,bitoffset,value2)
value[RCUi]=value2[0] value[RCUi]=value2[0]
return value; return value;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment