Guest User

Untitled

a guest
May 23rd, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 26.37 KB | None | 0 0
  1. from i2ctools_python import I2C #i2ctools_python from bb_batery
  2.  
  3.  
  4.  
  5. device_lcd = I2C(0) #Lcd
  6.  
  7. device_pf0100 = I2C(1) #pf0100
  8.  
  9.  
  10. #MPF0100 registers adress:
  11.  
  12.  
  13.  
  14. #FUNCTIONAL PAGE
  15.  
  16. PF0100_DeviceID ="0x00" #3:0 device id, read only (0000=pf0100) | 7:4 unused
  17. #PF0100_ = "0x01"
  18. #PF0100_ = "0x02"
  19. PF0100_SILICONREVID ="0x03" #whatever
  20. PF0100_FABID ="0x04" #whatever
  21. PF0100_INTSTAT0 ="0x05" #
  22. PF0100_INTMASK0 ="0x06" #default 3Fh
  23. PF0100_INTSENSE0 ="0x07" #default 3Fh
  24. PF0100_INTSTAT1 ="0x08" #default 3Fh
  25. PF0100_INTMASK1 ="0x09" #default 3Fh
  26. PF0100_NTSENSE1 ="0x0A" #default 3Fh
  27. #PF0100_ ="0x0B"
  28. #PF0100_ ="0x0C"
  29. #PF0100_ ="0x0D"
  30. PF0100_INTSTAT3 ="0x0E" #default 3Fh
  31. PF0100_INTMASK3 ="0x0F" #default 3Fh
  32. PF0100_INTSENSE3 ="0x10" #default 3Fh
  33. PF0100_INTSTAT4 ="0x11" #default 3Fh
  34. PF0100_INTMASK4 ="0x12" #default 3Fh
  35. PF0100_INTSENSE4 ="0x13" #default 3Fh
  36. #PF0100_ ="0x14"
  37. #PF0100_ ="0x15"
  38. #PF0100_ ="0x16"
  39. #PF0100_ ="0x17"
  40. #PF0100_ ="0x18"
  41. #PF0100_ ="0x19"
  42. PF0100_COINCTL ="0x1A"
  43. PF0100_PWRCTL ="0x1B"
  44. PF0100_MEMA ="0x1C"
  45. PF0100_MEMB ="0x1D"
  46. PF0100_MEMC ="0x1E"
  47. PF0100_MEMD = "0x1F"
  48. PF0100_SW1ABVOLT = "0x20"
  49. PF0100_SW1ABSTBY ="0x21" #default 10h
  50. PF0100_SW1ABOFF ="0x022" #default 00h
  51. PF0100_SW1ABMODE ="0x23" #default 00h
  52. PF0100_SW1ABCONF ="0x24" #default 3Fh
  53. #PF0100_ ="0x25"
  54. #PF0100_ ="0x26"
  55. #PF0100_ ="0x27"
  56. #PF0100_ ="0x28"
  57. #PF0100_ ="0x29"
  58. #PF0100_ ="0x2A"
  59. #PF0100_ ="0x2B"
  60. #PF0100_ ="0x2C"
  61. #PF0100_ ="0x2D"
  62. PF0100_SW1CVOLT ="0x2E"
  63. PF0100_SW1CSTBY ="0x2F"
  64. PF0100_SW1COFF ="0x30"
  65. PF0100_SW1CMODE ="0x31"
  66. PF0100_SW1CCONF ="0x32"
  67. #PF0100_ ="0x33"
  68. #PF0100_ ="0x34"
  69. PF0100_SW2VOLT ="0x35"
  70. PF0100_SW2STBY ="0x36"
  71. PF0100_SW2OFF ="0x37"
  72. PF0100_SW2MODE ="0x38"
  73. PF0100_SW2CONF ="0x39"
  74. #PF0100_ ="0x3A"
  75. #PF0100_ ="0x3B"
  76. PF0100_SW3AVOLT ="0x3C"
  77. PF0100_SW3ASTBY ="0x3D"
  78. PF0100_SW3AOFF ="0x3E"
  79. PF0100_SW3AMODE ="0x3F"
  80. PF0100_SW3ACONF ="0x40"
  81. #PF0100_ ="0x41"
  82. #PF0100_ ="0x42"
  83. PF0100_SW3BVOLT ="0x43"
  84. PF0100_SW3BSTBY ="0x44"
  85. PF0100_SW3BOFF ="0x45"
  86. PF0100_SW3BMODE ="0x46"
  87. PF0100_SW3BCONF ="0x47"
  88. #PF0100_ ="0x48"
  89. #PF0100_ ="0x49"
  90. PF0100_SW4VOLT ="0x4A"
  91. PF0100_SW4STBY ="0x4B"
  92. PF0100_SW4OFF ="0x4C"
  93. PF0100_SW4MODE ="0x4D"
  94. PF0100_SW4CONF ="0x4E"
  95. #PF0100_ ="0x4F"
  96. #PF0100_ ="0x50"
  97. #PF0100_ ="0x51"
  98. #PF0100_ ="0x52"
  99. #PF0100_ ="0x53"
  100. #PF0100_ ="0x54"
  101. #PF0100_ ="0x55"
  102. #PF0100_ ="0x56"
  103. #PF0100_ ="0x57"
  104. #PF0100_ ="0x58"
  105. #PF0100_ ="0x59"
  106. #PF0100_ ="0x5A"
  107. #PF0100_ ="0x5B"
  108. #PF0100_ ="0x5C"
  109. #PF0100_ ="0x5D"
  110. #PF0100_ ="0x5E"
  111. #PF0100_ ="0x5F"
  112. #PF0100_ ="0x60"
  113. #PF0100_ ="0x61"
  114. #PF0100_ ="0x62"
  115. #PF0100_ ="0x63"
  116. #PF0100_ ="0x64"
  117. #PF0100_ ="0x65"
  118. PF0100_SWBSTCTL ="0x66"
  119. #PF0100_ ="0x67"
  120. #PF0100_ ="0x68"
  121. #PF0100_ ="0x69"
  122. PF0100_VREFDDRCTL ="0x6A"
  123. PF0100_VSNVSCTL ="0x6B"
  124. PF0100_VGEN1CTL ="0x6C"
  125. PF0100_VGEN2CTL ="0x6D"
  126. PF0100_VGEN3CTL ="0x6E"
  127. PF0100_VGEN4CTL ="0x6F"
  128. PF0100_VGEN5CTL ="0x70"
  129. PF0100_VGEN6CTL ="0x71"
  130. #PF0100_ ="0x72"
  131. #PF0100_ ="0x73"
  132. #PF0100_ ="0x74"
  133. #PF0100_ ="0x75"
  134. #PF0100_ ="0x76"
  135. #PF0100_ ="0x77"
  136. #PF0100_ ="0x78"
  137. #PF0100_ ="0x79"
  138. #PF0100_ ="0x7A"
  139. #PF0100_ ="0x7B"
  140. #PF0100_ ="0x7C"
  141. #PF0100_ ="0x7D"
  142. #PF0100_ ="0x7E"
  143. PF0100_Page_Register ="0x7F" #inicialmente em 00h, ten-se page 1 para 01h e page 2 para 02h.
  144.  
  145.  
  146. #Page_Register = (int(device.readI2C(PF0100_Page_Register),16))
  147.  
  148. #if Page_Register == 0x01:
  149.  
  150.  
  151. #PAGE1
  152.  
  153. PF0100_OTP_FUSE_READ_EN ="0x80"
  154. #PF0100_ ="0x81"
  155. #PF0100_ ="0x82"
  156. #PF0100_ ="0x83"
  157. PF0100_OTP_LOAD_MASK ="0x84"
  158. #PF0100_ ="0x85"
  159. #PF0100_ ="0x86"
  160. #PF0100_ ="0x87"
  161. #PF0100_ ="0x88"
  162. #PF0100_ ="0x89"
  163. PF0100_OTP_ECC_SE1 ="0x8A"
  164. PF0100_OTP_ECC_SE2 ="0x8B"
  165. PF0100_OTP_ECC_DE1 ="0x8C"
  166. PF0100_OTP_ECC_DE2 ="0x8D"
  167. #PF0100_ ="0x8E"
  168. #PF0100_ ="0x8F"
  169. #PF0100_ ="0x90"
  170. #PF0100_ ="0x91"
  171. #PF0100_ ="0x92"
  172. #PF0100_ ="0x93"
  173. #PF0100_ ="0x94"
  174. #PF0100_ ="0x95"
  175. #PF0100_ ="0x96"
  176. #PF0100_ ="0x97"
  177. #PF0100_ ="0x98"
  178. #PF0100_ ="0x99"
  179. #PF0100_ ="0x9A"
  180. #PF0100_ ="0x9B"
  181. #PF0100_ ="0x9C"
  182. #PF0100_ ="0x9D"
  183. #PF0100_ ="0x9E"
  184. #PF0100_ ="0x9F"
  185. PF0100_OTP_SW1AB_VOLT ="0xA0"
  186. PF0100_OTP_SW1AB_SEQ ="0xA1"
  187. PF0100_OTP_SW1AB_CONFIG ="0xA2"
  188. #PF0100_ ="0xA3"
  189. #PF0100_ ="0xA4"
  190. #PF0100_ ="0xA5"
  191. #PF0100_ ="0xA6"
  192. #PF0100_ ="0xA7"
  193. PF0100_OTP_SW1C_VOLT ="0xA8"
  194. PF0100_OTP_SW1C_SEQ ="0xA9"
  195. PF0100_OTP_SW1C_CONFIG ="0xAA"
  196. #PF0100_ ="0xAB"
  197. PF0100_OTP_SW2_VOLT ="0xAC"
  198. PF0100_OTP_SW2_SEQ ="0xAD"
  199. PF0100_OTP_SW2_CONFIG ="0xAE"
  200. #PF0100_ ="0xAF"
  201. PF0100_OTP_SW3A_VOLT ="0xB0"
  202. PF0100_OTP_SW3A_SEQ ="0xB1"
  203. PF0100_OTP_SW3A_CONFIG ="0xB2"
  204. #PF0100_ ="0xB3"
  205. PF0100_OTP_SW3B_VOLT ="0xB4"
  206. PF0100_OTP_SW3B_SEQ ="0xB5"
  207. PF0100_OTP_SW3B_CONFIG ="0xB6"
  208. #PF0100_ ="0xB7"
  209. PF0100_OTP_SW4_VOLT ="0xB8"
  210. PF0100_OTP_SW4_SEQ ="0xB9"
  211. PF0100_OTP_SW4_CONFIG ="0xBA"
  212. #PF0100_ ="0xBB"
  213. PF0100_OTP_SWBST_VOLT ="0xBC"
  214. PF0100_OTP_SWBST_SEQ ="0xBD"
  215. #PF0100_ ="0xBE"
  216. #PF0100_ ="0xBF"
  217. PF0100_OTP_VSNVS_VOLT ="0xC0"
  218. #PF0100_ ="0xC1"
  219. #PF0100_ ="0xC2"
  220. #PF0100_ ="0xC3"
  221. PF0100_OTP_VREFDDR_SEQ ="0xC4"
  222. #PF0100_ ="0xC5"
  223. #PF0100_ ="0xC6"
  224. #PF0100_ ="0xC7"
  225. PF0100_OTP_VGEN1_VOLT ="0xC8"
  226. PF0100_OTP_VGEN1_SEQ ="0xC9"
  227. #PF0100_ ="0xCA"
  228. #PF0100_ ="0xCB"
  229. PF0100_OTP_VGEN2_VOLT ="0xCC"
  230. PF0100_OTP_VGEN2_SEQ ="0xCD"
  231. #PF0100_ ="0xCE"
  232. #PF0100_ ="0xCF"
  233. PF0100_OTP_VGEN3_VOLT ="0xD0"
  234. PF0100_OTP_VGEN3_SEQ ="0xD1"
  235. #PF0100_ ="0xD2"
  236. #PF0100_ ="0xD3"
  237. PF0100_OTP_VGEN4_VOLT ="0xD4"
  238. PF0100_OTP_VGEN4_SEQ ="0xD5"
  239. #PF0100_ ="0xD6"
  240. #PF0100_ ="0xD7"
  241. PF0100_OTP_VGEN5_VOLT ="0xD8"
  242. PF0100_OTP_VGEN5_SEQ ="0xD9"
  243. #PF0100_ ="0xDA"
  244. #PF0100_ ="0xDB"
  245. PF0100_OTP_VGEN6_VOLT ="0xDC"
  246. PF0100_OTP_VGEN6_SEQ ="0xDD"
  247. #PF0100_ ="0xDE"
  248. #PF0100_ ="0xDF"
  249. PF0100_OTP_PU_CONFIG1 ="0xE0"
  250. PF0100_OTP_PU_CONFIG2 ="0xE1"
  251. PF0100_OTP_PU_CONFIG3 ="0xE2"
  252. PF0100_OTP_PU_CONFIG_XOR ="0xE3"
  253. PF0100_OTP_FUSE_POR1 ="0xE4"
  254. PF0100_OTP_FUSE_POR1 ="0xE5"
  255. PF0100_OTP_FUSE_POR1 ="0xE6"
  256. PF0100_OTP_FUSE_POR_XOR ="0xE7"
  257. PF0100_OTP_PWRGD_EN ="0xE8"
  258. #PF0100_ ="0xE9"
  259. #PF0100_ ="0xEA"
  260. #PF0100_ ="0xEB"
  261. #PF0100_ ="0xEC"
  262. #PF0100_ ="0xED"
  263. #PF0100_ ="0xEE"
  264. #PF0100_ ="0xFF"
  265. PF0100_OTP_EN_ECCO ="0xF0"
  266. PF0100_OTP_EN_ECC1 ="0xF1"
  267. #PF0100_ ="0xF2"
  268. #PF0100_ ="0xF3"
  269. PF0100_OTP_SPARE2_4 ="0xF4"
  270. PF0100_OTP_SPARE4_3 ="0xF5"
  271. PF0100_OTP_SPARE6_2 ="0xF6"
  272. PF0100_OTP_SPARE7_1 ="0xF7"
  273. #PF0100_ ="0xF8"
  274. #PF0100_ ="0xF9"
  275. #PF0100_ ="0xFA"
  276. #PF0100_ ="0xFB"
  277. #PF0100_ ="0xFC"
  278. #PF0100_ ="0xFD"
  279. PF0100_OTP_DONE ="0xFE"
  280. PF0100_OTP_I2C_ADDR ="0xFF"
  281.  
  282. #elif Page_Register == 0x02:
  283.  
  284.  
  285. #PAGE2
  286.  
  287. #PF0100_ ="0x80"
  288. PF0100_SW1AB_PWRSTG ="0x81"
  289. PF0100_PWRSTG_RSVD ="0x82"
  290. PF0100_SW1C_PWRSTG ="0x83"
  291. PF0100_SW2_PWRSTG ="0x84"
  292. PF0100_SW3A_PWRSTG ="0x85"
  293. PF0100_SW3B_PWRSTG ="0x86"
  294. PF0100_SW4_PWRSTG ="0x87"
  295. PF0100_PWRCTRL_OTP_CTRL ="0x88"
  296. #PF0100_ ="0x89"
  297. #PF0100_ ="0x8A"
  298. #PF0100_ ="0x8B"
  299. #PF0100_ ="0x8C"
  300. PF0100_ADDRESS_TRAP ="0x8D"
  301. PF0100_I2C_TRAP_PAGE ="0x8E"
  302. PF0100_I2C_TRAP_CNTR ="0x8F"
  303. PF0100_IO_DRV ="0x90"
  304. #PF0100_ ="0x91"
  305. #PF0100_ ="0x92"
  306. #PF0100_ ="0x93"
  307. #PF0100_ ="0x94"
  308. #PF0100_ ="0x95"
  309. #PF0100_ ="0x96"
  310. #PF0100_ ="0x97"
  311. #PF0100_ ="0x98"
  312. #PF0100_ ="0x99"
  313. #PF0100_ ="0x9A"
  314. #PF0100_ ="0x9B"
  315. #PF0100_ ="0x9C"
  316. #PF0100_ ="0x9D"
  317. #PF0100_ ="0x9E"
  318. #PF0100_ ="0x9F"
  319. #PF0100_ ="0xA0"
  320. #PF0100_ ="0xA1"
  321. #PF0100_ ="0xA2"
  322. #PF0100_ ="0xA3"
  323. #PF0100_ ="0xA4"
  324. #PF0100_ ="0xA5"
  325. #PF0100_ ="0xA6"
  326. #PF0100_ ="0xA7"
  327. #PF0100_ ="0xA8"
  328. #PF0100_ ="0xA9"
  329. #PF0100_ ="0xAA"
  330. #PF0100_ ="0xAB"
  331. #PF0100_ ="0xAC"
  332. #PF0100_ ="0xAD"
  333. #PF0100_ ="0xAE"
  334. #PF0100_ ="0xAF"
  335. #PF0100_ ="0xB0"
  336. #PF0100_ ="0xB1"
  337. #PF0100_ ="0xB2"
  338. #PF0100_ ="0xB3"
  339. #PF0100_ ="0xB4"
  340. #PF0100_ ="0xB5"
  341. #PF0100_ ="0xB6"
  342. #PF0100_ ="0xB7"
  343. #PF0100_ ="0xB8"
  344. #PF0100_ ="0xB9"
  345. #PF0100_ ="0xBA"
  346. #PF0100_ ="0xBB"
  347. #PF0100_ ="0xBC"
  348. #PF0100_ ="0xBD"
  349. #PF0100_ ="0xBE"
  350. #PF0100_ ="0xBF"
  351. #PF0100_ ="0xC0"
  352. #PF0100_ ="0xC1"
  353. #PF0100_ ="0xC2"
  354. #PF0100_ ="0xC3"
  355. #PF0100_ ="0xC4"
  356. #PF0100_ ="0xC5"
  357. #PF0100_ ="0xC6"
  358. #PF0100_ ="0xC7"
  359. #PF0100_ ="0xC8"
  360. #PF0100_ ="0xC9"
  361. #PF0100_ ="0xCA"
  362. #PF0100_ ="0xCB"
  363. #PF0100_ ="0xCC"
  364. #PF0100_ ="0xCD"
  365. #PF0100_ ="0xCE"
  366. #PF0100_ ="0xCF"
  367. PF0100_OTP_AUTO_ECC0 ="0xD0"
  368. PF0100_OTP_AUTO_ECC1 ="0xD1"
  369. #PF0100_ ="0xD2"
  370. #PF0100_ ="0xD3"
  371. #PF0100_ ="0xD4"
  372. #PF0100_ ="0xD5"
  373. #PF0100_ ="0xD6"
  374. #PF0100_ ="0xD7"
  375. PF0100_Reserved ="0xD8"
  376. PF0100_Reserved ="0xD9"
  377. #PF0100_ ="0xDA"
  378. #PF0100_ ="0xDB"
  379. #PF0100_ ="0xDC"
  380. #PF0100_ ="0xDD"
  381. #PF0100_ ="0xDE"
  382. #PF0100_ ="0xDF"
  383. #PF0100_ ="0xE0"
  384. PF0100_OTP_ECC_CTRL1 ="0xE1"
  385. PF0100_OTP_ECC_CTRL2 ="0xE2"
  386. PF0100_OTP_ECC_CTRL3 ="0xE3"
  387. PF0100_OTP_ECC_CTRL4 ="0xE4"
  388. PF0100_OTP_ECC_CTRL5 ="0xE5"
  389. PF0100_OTP_ECC_CTRL6 ="0xE6"
  390. PF0100_OTP_ECC_CTRL7 ="0xE7"
  391. PF0100_OTP_ECC_CTRL8 ="0xE8"
  392. PF0100_OTP_ECC_CTRL9 ="0xE9"
  393. PF0100_OTP_ECC_CTRL10 ="0xEA"
  394. #PF0100_ ="0xEB"
  395. #PF0100_ ="0xEC"
  396. #PF0100_ ="0xED"
  397. #PF0100_ ="0xEE"
  398. #PF0100_ ="0xFF"
  399. #PF0100_ ="0xF0"
  400. PF0100_OTP _FUSE_CTRL1 ="0xF1"
  401. PF0100_OTP_FUSE _CTRL2 ="0xF2"
  402. PF0100_OTP_FUSE_CTRL3 ="0xF3"
  403. PF0100_OTP_FUSE _CTRL4 ="0xF4"
  404. PF0100_OTP_FUSE_CTRL5 ="0xF5"
  405. PF0100_OTP_FUSE_CTRL6 ="0xF6"
  406. PF0100_OTP_FUSE_CTRL7 ="0xF7"
  407. PF0100_OTP_FUSE_CTRL8 ="0xF8"
  408. PF0100_OTP_FUSE_CTRL9 ="0xF9"
  409. PF0100_OTP_FUSE_CTRL10 ="0xFA"
  410.  
  411. #else:
  412.  
  413. #print "There is no such page"
  414.  
  415.  
  416.  
  417. '''
  418. FUNÇÕES
  419.  
  420. '''
  421.  
  422. def my_range(start, end, step):
  423. while start <= end:
  424. yield start
  425. start += step
  426.  
  427.  
  428.  
  429. def swxtensao(setebits): #tabela55(sw2), tabela65(sw3) e tabela79(sw4)
  430.  
  431. x = int(setebits,2)
  432. #print(x)
  433.  
  434. if x <= 63:
  435. tensao_func = 0.4
  436. for i in range(x):
  437. tensao_func = tensao_func + .025
  438.  
  439.  
  440.  
  441.  
  442.  
  443. else:
  444. tensao_func = 0.75
  445.  
  446. for i in my_range(64, x, 1):
  447. #print(i)
  448. tensao_func = tensao_func + .05
  449. #print (round(tensao_func,3))
  450.  
  451. return round(tensao_func,3)
  452.  
  453.  
  454.  
  455. def sw1tensao(seisbits): #tabela41
  456. tensao_func = 0.3
  457. x = int(seisbits,2)
  458.  
  459. for i in range(x):
  460. tensao_func = tensao_func + 0.025
  461.  
  462.  
  463. return round(tensao_func,3)
  464.  
  465.  
  466.  
  467.  
  468.  
  469. def bytediv(msb, lsb, byte):#[3:0] msb has to be bigger than lsb, you can also get an individual bit!
  470. x= 9-msb
  471. y= 9-lsb
  472. bit_str="0b"
  473. while x <= y:
  474.  
  475. #print(str(byte[x]))
  476. bit_str += str(byte[x])
  477. x = x+1
  478.  
  479.  
  480. return bit_str
  481.  
  482. '''
  483. batata = bytediv(7,4, binqualquer)
  484.  
  485. print(batata)
  486. print(int(batata,2))
  487. '''
  488.  
  489. def swxmode(swx_mode):
  490. #swx_mode = bytediv(3,0,swx)
  491.  
  492. if swx_mode == "0b0000":
  493. return {'Normal' : "Off", 'Standby' : "Off"}
  494. elif swx_mode == '0b0001':
  495. return {'Normal' : "PWM", 'Standby' : "Off"}
  496. elif swx_mode == '0b0010':
  497. return {'Normal' : "Reserved", 'Standby' : "Reserved"}
  498. elif swx_mode == '0b0011':
  499. return {'Normal' : "PFM", 'Standby' : "Off"}
  500. elif swx_mode == '0b0100':
  501. return {'Normal' : "APS", 'Standby' : "Off"}
  502. elif swx_mode == '0b0101':
  503. return {'Normal' : "PWM", 'Standby' : "PWM"}
  504. elif swx_mode == '0b0110':
  505. return {'Normal' : "PWM", 'Standby' : "APS"}
  506. elif swx_mode == '0b0111':
  507. return {'Normal' : "Reserved", 'Standby' : "Reserved"}
  508. elif swx_mode == '0b1000':
  509. return {'Normal' : "APS", 'Standby' : "APS"}
  510. elif swx_mode == '0b1001':
  511. return {'Normal' : "Reserved", 'Standby' : "Reserved"}
  512. elif swx_mode == '0b1010':
  513. return {'Normal' : "Reserved", 'Standby' : "Reserved"}
  514. elif swx_mode == '0b1011':
  515. return {'Normal' : "Reserved", 'Standby' : "Reserved"}
  516. elif swx_mode == '0b1100':
  517. return {'Normal' : "APS", 'Standby' : "PFM"}
  518. elif swx_mode == '0b1101':
  519. return {'Normal' : "PWM", 'Standby' : "PFM"}
  520. elif swx_mode == '0b1110':
  521. return {'Normal' : "Reserved", 'Standby' : "Reserved"}
  522. elif swx_mode == '0b1111':
  523. return {'Normal' : "Reserved", 'Standby' : "Reserved"}
  524.  
  525.  
  526. def sw1xdvsspeed(swx_dvs):
  527. if swx_dvs == '0b00':
  528. return {'DVS' : "25 mV step each 2.0 μs"}
  529. elif swx_dvs == '0b01':
  530. return {'DVS' : "25 mV step each 4.0 μs"}
  531. elif swx_dvs == "0b10":
  532. return {'DVS' : "25 mV step each 8.0 μs"}
  533. elif swx_dvs == "0b11":
  534. return {'DVS' : "25 mV step each 16.0 μs"}
  535.  
  536. #print(sw1xdvsspeed("0b00"))
  537.  
  538.  
  539. def swxdvsspeed(swx_dvs,swx):
  540. if bytediv(6,6,swx) == '0b0':
  541. if swx_dvs == '0b00':
  542. return {'DVS' : "25 mV step each 2.0 μs"}
  543. elif swx_dvs == '0b01':
  544. return {'DVS' : "25 mV step each 4.0 μs"}
  545. elif swx_dvs == "0b10":
  546. return {'DVS' : "25 mV step each 8.0 μs"}
  547. elif swx_dvs == "0b11":
  548. return {'DVS' : "25 mV step each 16.0 μs"}
  549. elif bytediv(6,6,swx) == '0b1':
  550. if swx_dvs == '0b00':
  551. return {'DVS' : "50 mV step each 4.0 μs"}
  552. elif swx_dvs == "0b01":
  553. return {'DVS' : "50 mV step each 8.0 μs"}
  554. elif swx_dvs == "0b10":
  555. return {'DVS' : "50 mV step each 16 μs"}
  556. elif swx_dvs == "0b11":
  557. return {'DVS' : "50 mV step each 32 μs"}
  558.  
  559.  
  560. #print(swxdvsspeed("0b01","0b01000000"))
  561.  
  562. def swxphase(swx_phase):
  563. if swx_phase == '0b00':
  564. return {'Phase' : "0 degrees"}
  565. elif swx_phase == '0b01':
  566. return {'Phase' : "90 degrees"}
  567. elif swx_phase == "0b10":
  568. return {'Phase' : "180 degrees"}
  569. elif swx_phase == "0b11":
  570. return {'Phase' : "270 degrees"}
  571.  
  572. def swxfreq(swx_freq):
  573. if swx_freq == '0b00':
  574. return {'Freq' : "1.0 Mhz"}
  575. elif swx_freq == '0b01':
  576. return {'Freq' : "2.0 Mhz"}
  577. elif swx_freq == "0b10":
  578. return {'Freq' : "4.0 Mhz"}
  579. elif swx_freq == "0b11":
  580. return {'Freq' : "Reserved"}
  581.  
  582.  
  583.  
  584. def registers():
  585. print "---------------------------"
  586. print "---------REGISTERS---------"
  587. print "---------------------------"
  588.  
  589. #print "TPS65271_CHIPID: "+ bin(int(device.readI2C(TPS65271_CHIPID),16)) #16???
  590.  
  591.  
  592.  
  593. '''
  594. DeviceID = bin(int(device.readI2C(PF0100_DeviceID),16))
  595. DEVICE_ID = bytediv(3, 0, DeviceID)
  596.  
  597. SILICONREVID = bin(int(device.readI2C(PF0100_SILICONREVID),16))
  598. FULL_LAYER_REV = bytediv(7, 4, SILICONREVID)
  599. METAL_LAYER_REV = bytediv(3, 0, SILICONREVID)
  600.  
  601. FABID = bin(int(device.readI2C(PF0100_FABID),16))
  602. FAB = bytediv(3, 2, FABID)
  603. FIN = bytediv(1, 0, FABID)
  604.  
  605. INTSTAT0 = bin(int(device.readI2C(PF0100_INTSTAT0),16))
  606. PWRONI = bytediv(0, 0, INTSTAT0)
  607. LOWVINI = bytediv(1, 1, INTSTAT0)
  608. THERM110I = bytediv(2, 2, INTSTAT0)
  609. THERM120I = bytediv(3, 3, INTSTAT0)
  610. THERM125I = bytediv(4, 4, INTSTAT0)
  611. THERM130I = bytediv(5, 5, INTSTAT0)
  612.  
  613. INTMASK0 = bin(int(device.readI2C(PF0100_INTMASK0),16))
  614. PWRONM = bytediv(5, 5, INTMASK0)
  615. LOWVINM = bytediv(2, 2, INTMASK0)
  616. THERM110M = bytediv(2, 2, INTMASK0)
  617. THERM120M = bytediv(2, 2, INTMASK0)
  618. THERM125M = bytediv(2, 2, INTMASK0)
  619. THERM130M = bytediv(2, 2, INTMASK0)
  620.  
  621. INTSENSE0 = bin(int(device.readI2C(PF0100_INTSENSE0),16))
  622.  
  623. INTSTAT1 = bin(int(device.readI2C(PF0100_INTSTAT1),16))
  624.  
  625. INTMASK1 = bin(int(device.readI2C(PF0100_INTMASK1),16))
  626.  
  627. INTSENSE1 = bin(int(device.readI2C(PF0100_INTSENSE1),16))
  628.  
  629. INTSTAT3 = bin(int(device.readI2C(PF0100_INTSTAT3),16))
  630.  
  631. INTMASK3 = bin(int(device.readI2C(PF0100_INTMASK3),16))
  632.  
  633. INTSENSE3 = bin(int(device.readI2C(PF0100_INTSENSE3),16))
  634.  
  635. INTSTAT4 = bin(int(device.readI2C(PF0100_INTSTAT4),16))
  636.  
  637. INTMASK4 = bin(int(device.readI2C(PF0100_INTMASK4),16))
  638.  
  639. INTSENSE4 = bin(int(device.readI2C(PF0100_INTSENSE4),16))
  640.  
  641. COINCTL = bin(int(device.readI2C(PF0100_COINCTL),16))
  642.  
  643. PWRCTL
  644.  
  645. MEMA
  646.  
  647. MEMB
  648.  
  649. MEMC
  650.  
  651. MEMD
  652.  
  653.  
  654. '''
  655. #SW1A/B/C
  656.  
  657.  
  658. SW1ABVOLT = bin(int(device.readI2C(PF0100_SW1ABVOLT),16)) #tabela41
  659. SW1AB_bin = bytediv(5, 0, SW1ABVOLT)
  660. SW1AB_dec = sw1tensao(SW1AB_bin) #valor que quero mostrar no display
  661.  
  662.  
  663. SW1ABSTBY = bin(int(device.readI2C(PF0100_SW1ABSTBY),16))
  664. SW1ABSTBY_bin = bytediv(5, 0, SW1ABSTBY)
  665. SW1ABSTBY_dec = sw1tensao(SW1ABSTBY_bin) #valor que quero mostrar no display
  666.  
  667. SW1ABOFF = bin(int(device.readI2C(PF0100_SW1ABOFF),16))
  668. SW1ABOFF_bin = bytediv(5, 0, SW1ABOFF)
  669. SW1ABOFF_dec = sw1tensao(SW1ABOFF_bin) #valor que quero mostrar no display
  670.  
  671. SW1ABMODE = bin(int(device.readI2C(PF0100_SW1ABMODE),16))
  672. SW1ABMODE_bin = bytediv(3,0,SW1ABMODE)
  673. SW1ABOMODE = bytediv(5,5,SW1ABMODE)
  674.  
  675. SW1ABCONF = bin(int(device.readI2C(PF0100_SW1ABCONF),16))
  676. SW1ABILIM = bytediv(0,0,SW1ABCONF)
  677. SW1ABFREQ = bytediv(3,2,SW1ABCONF)
  678. SW1BAPHASE = bytediv(5,4,SW1ABCONF)
  679. SW1ABDVSSPEED = bytediv(7,6,SW1ABCONF)
  680.  
  681. SW1CVOLT = bin(int(device.readI2C(PF0100_SW1CVOLT),16))
  682. SW1C_bin = bytediv(5, 0, SW1CVOLT)
  683.  
  684. SW1CSTBY = bin(int(device.readI2C(PF0100_SW1CSTBY),16))
  685. SW1CSTBY_bin = bytediv(5,0,SW1CSTBY)
  686.  
  687. SW1COFF = bin(int(device.readI2C(PF0100_SW1COFF),16))
  688. SW1COFF_bin = bytediv(5,0,SW1COFF)
  689.  
  690. SW1CMODE = bin(int(device.readI2C(PF0100_SW1CMODE),16))
  691. SW1CMODE_bin = bytediv(3,0,SW1CMODE)
  692. SW1COMODE = bytediv(5,5,SW1CMODE)
  693.  
  694. SW1CCONF = bin(int(device.readI2C(PF0100_SW1CCONF),16))
  695. SW1CILIM = bytediv(0,0,SW1CCONF)
  696. SW1CFREQ = bytediv(3,2,SW1CCONF)
  697. SW1CPHASE = bytediv(5,4,SW1CCONF)
  698. SW1CDVSSPEED = bytediv(7,6,SW1CCONF)
  699.  
  700. SW2VOLT = bin(int(device.readI2C(PF0100_SW2VOLT),16))
  701. SW2_bin = bytediv(6, 0, SW2VOLT)
  702.  
  703.  
  704. SW2STBY = bin(int(device.readI2C(PF0100_SW2STBY),16))
  705. SW2STBY_bin = bytediv(6, 0, SW2STBY)
  706.  
  707. SW2OFF = bin(int(device.readI2C(PF0100_SW2OFF),16))
  708. SW2OFF_bin = bytediv(6, 0, SW2OFF)
  709.  
  710. SW2MODE = bin(int(device.readI2C(PF0100_SW2MODE),16))
  711. SW2MODE_bin = bytediv(3,0,SW2MODE)
  712. SW2OMODE = bytediv(5,5,SW2MODE)
  713.  
  714. SW2CONF = bin(int(device.readI2C(PF0100_SW2CONF),16))
  715. SW2ILIM = bytediv(0,0,SW2CONF)
  716. SW2FREQ = bytediv(3,2,SW2CONF)
  717. SW2PHASE = bytediv(5,4,SW2CONF)
  718. SW2DVSSPEED = bytediv(7,6,SW2CONF)
  719.  
  720. SW3AVOLT = bin(int(device.readI2C(PF0100_SW3AVOLT),16))
  721. SW3A_bin = bytediv(6, 0, SW3AVOLT)
  722.  
  723. SW3ASTBY = bin(int(device.readI2C(PF0100_SW3ASTBY),16))
  724. SW3ASTBY_bin = bytediv(6, 0, SW3ASTBY)
  725.  
  726. SW3AOFF = bin(int(device.readI2C(PF0100_SW3AOFF),16))
  727. SW3AOFF_bin = bytediv(6, 0, SW3AOFF)
  728.  
  729. SW3AMODE = bin(int(device.readI2C(PF0100_SW3AMODE),16))
  730. SW3AMODE_bin = bytediv(3,0,SW3AMODE)
  731. SW3AOMODE = bytediv(5,5,SW3AOMODE)
  732.  
  733. SW3ACONF = bin(int(device.readI2C(PF0100_SW3ACONF),16))
  734. SW3AILIM = bytediv(0,0,SW3ACONF)
  735. SW3AFREQ = bytediv(3,2,SW3ACONF)
  736. SW3APHASE = bytediv(5,4,SW3ACONF)
  737. SW3ADVSSPEED = bytediv(7,6,SW3ACONF)
  738.  
  739. SW3BVOLT = bin(int(device.readI2C(PF0100_SW3BVOLT),16))
  740. SW3B_bin = bytediv(6,0,SW3BVOLT)
  741.  
  742. SW3BSTBY = bin(int(device.readI2C(PF0100_SW3BSTBY),16))
  743. SW3BSTBY_bin = bytediv(6,0,SW3BSTBY)
  744.  
  745. SW3BOFF = bin(int(device.readI2C(PF0100_SW3BOFF),16))
  746. SW3BOFF_bin = bytediv(6,0,SW3BOFF)
  747.  
  748. SW3BMODE = bin(int(device.readI2C(PF0100_SW3BMODE),16))
  749. SW3BMODE_bin = bytediv(3,0,SW3BMODE)
  750. SW3BOMODE = bytediv(5,5,SW3BMODE)
  751.  
  752. SW3BCONF = bin(int(device.readI2C(PF0100_SW3BCONF),16))
  753. SW3BILIM = bytediv(0,0,SW3BCONF)
  754. SW3BFREQ = bytediv(3,2,SW3BCONF)
  755. SW3BPHASE = bytediv(5,4,SW3BCONF)
  756. SW3BDVSSPEED = bytediv(7,6,SW3BCONF)
  757.  
  758. SW4VOLT = bin(int(device.readI2C(PF0100_SW4VOLT),16))
  759. SW4_bin = bytediv(6,0,SW4VOLT)
  760.  
  761. SW4STBY = bin(int(device.readI2C(PF0100_SW4STBY),16))
  762. SW4STBY_bin = bytediv(6,0,SW4STBY)
  763.  
  764. SW4OFF = bin(int(device.readI2C(PF0100_SW4OFF),16))
  765. SW4OFF_bin = bytediv(6,0,SW4OFF)
  766.  
  767. SW4MODE = bin(int(device.readI2C(PF0100_SW4MODE),16))
  768. SW4MODE_bin = bytediv(3,0,SW4MODE)
  769. SW4OMODE = bytediv(5,5,SW4MODE)
  770.  
  771. SW4CONF = bin(int(device.readI2C(PF0100_SW4CONF),16))
  772. SW4ILIM = bytediv(0,0,SW4CONF)
  773. SW4FREQ = bytediv(3,2,SW4CONF)
  774. SW4PHASE = bytediv(5,4,SW4CONF)
  775. SW4DVSSPEED = bytediv(7,6,SW4CONF)
  776.  
  777. '''
  778. SWBSTCTL = bin(int(device.readI2C(PF0100_SWBSTCTL),16))
  779. SWBST1VOLT = bytediv(1,0,SWBSTCTL)
  780. SWBST1MODE = bytediv(3,2,SWBSTCTL)
  781. SWBST1STBYMODE = bytediv(6,5,SWBSTCTL)
  782.  
  783. VREFDDRCTL = bin(int(device.readI2C(PF0100_VREFDDRCTL),16))
  784. VREFDDREN = bytediv(4,4,VREFDDRCTL)
  785.  
  786. VSNVSCTL = bin(int(device.readI2C(PF0100_VSNVSCTL),16))
  787. VSNVSVOLT = bytediv(2,0,VSNVSCTL)
  788.  
  789. VGEN1CTL = bin(int(device.readI2C(PF0100_VGEN1CTL),16))
  790. VGEN1 = bytediv(3,0,VGEN1CTL)
  791. VGEN1EN = bytediv(4,4,VGEN1CTL)
  792. VGEN1STBY = bytediv(5,5,VGEN1CTL)
  793. VGEN1LPWR = bytediv(6,6,VGEN1CTL)
  794.  
  795. VGEN2CTL = bin(int(device.readI2C(PF0100_VGEN2CTL),16))
  796. VGEN2 = bytediv(3,0,VGEN2CTL)
  797. VGEN2EN = bytediv(4,4,VGEN2CTL)
  798. VGEN2STBY = bytediv(5,5,VGEN2CTL)
  799. VGEN2LPWR = bytediv(6,6,VGEN2CTL)
  800.  
  801. VGEN3CTL = bin(int(device.readI2C(PF0100_VGEN3CTL),16))
  802. VGEN3 = bytediv(3,0,VGEN3CTL)
  803. VGEN3EN = bytediv(4,4,VGEN3CTL)
  804. VGEN3STBY = bytediv(5,5,VGEN3CTL)
  805. VGEN3LPWR = bytediv(6,6,VGEN3CTL)
  806.  
  807. VGEN4CTL = bin(int(device.readI2C(PF0100_VGEN4CTL),16))
  808. VGEN4 = bytediv(3,0,VGEN4CTL)
  809. VGEN4EN = bytediv(4,4,VGEN4CTL)
  810. VGEN4STBY = bytediv(5,5,VGEN4CTL)
  811. VGEN4LPWR = bytediv(6,6,VGEN4CTL)
  812.  
  813. VGEN5CTL = bin(int(device.readI2C(PF0100_VGEN5CTL),16))
  814. VGEN5 = bytediv(3,0,VGEN5CTL)
  815. VGEN5EN = bytediv(4,4,VGEN5CTL)
  816. VGEN5STBY = bytediv(5,5,VGEN5CTL)
  817. VGEN5LPWR = bytediv(6,6,VGEN5CTL)
  818.  
  819. VGEN6CTL = bin(int(device.readI2C(PF0100_VGEN6CTL),16))
  820. VGEN6 = bytediv(3,0,VGEN6CTL)
  821. VGEN6EN = bytediv(4,4,VGEN6CTL)
  822. VGEN6STBY = bytediv(5,5,VGEN6CTL)
  823. VGEN6LPWR = bytediv(6,6,VGEN6CTL)
  824.  
  825. Page_Register = bin(int(device.readI2C(PF0100_Page_RegisterL),16))
  826. PAGE = bytediv(4,0,Page_Register)
  827.  
  828. PAGE 1 #######################################################################################
  829.  
  830. OTP_FUSE_READ_EN = bin(int(device.readI2C(PF0100_OTP_FUSE_READ_EN),16))
  831.  
  832. OTP_LOAD_MASK = bin(int(device.readI2C(PF0100_OTP_LOAD_MASK),16))
  833.  
  834. OTP_ECC_SE1 = bin(int(device.readI2C(PF0100_OTP_ECC_SE1),16))
  835.  
  836. OTP_ECC_SE2 = bin(int(device.readI2C(PF0100_OTP_ECC_SE2),16))
  837.  
  838. OTP_ECC_DE1 = bin(int(device.readI2C(PF0100_OTP_ECC_DE1),16))
  839.  
  840. OTP_ECC_DE2 = bin(int(device.readI2C(PF0100_OTP_ECC_DE2),16))
  841.  
  842. OTP_SW1AB_VOLT = bin(int(device.readI2C(PF0100_OTP_SW1AB_VOLT),16))
  843.  
  844. OTP_SW1AB_SEQ = bin(int(device.readI2C(PF0100_OTP_SW1AB_SEQ),16))
  845.  
  846. OTP_SW1AB_CONFIG = bin(int(device.readI2C(PF0100_OTP_SW1AB_CONFIG),16))
  847.  
  848. OTP_SW1C_VOLT = bin(int(device.readI2C(PF0100_OTP_SW1C_VOLT),16))
  849.  
  850. OTP_SW1C_SEQ = bin(int(device.readI2C(PF0100_OTP_SW1C_SEQ),16))
  851.  
  852. OTP_SW1C_CONFIG = bin(int(device.readI2C(PF0100_OTP_SW1C_CONFIG),16))
  853.  
  854. OTP_SW2_VOLT = bin(int(device.readI2C(PF0100_OTP_SW2_VOLT),16))
  855.  
  856. OTP_SW2_SEQ = bin(int(device.readI2C(PF0100_OTP_SW2_SEQ),16))
  857.  
  858. OTP_SW2_CONFIG = bin(int(device.readI2C(PF0100_OTP_SW2_CONFIG),16))
  859.  
  860. OTP_SW3A_VOLT = bin(int(device.readI2C(PF0100_OTP_SW3A_VOLT),16))
  861.  
  862. OTP_SW3A_SEQ = bin(int(device.readI2C(PF0100_OTP_SW3A_SEQ),16))
  863.  
  864. OTP_SW3A_CONFIG = bin(int(device.readI2C(PF0100_OTP_SW3A_CONFIG),16))
  865.  
  866. OTP_SW3B_VOLT = bin(int(device.readI2C(PF0100_OTP_SW3B_VOLT),16))
  867.  
  868. OTP_SW3B_SEQ = bin(int(device.readI2C(PF0100_OTP_SW3B_SEQ),16))
  869.  
  870. OTP_SW3B_CONFIG = bin(int(device.readI2C(PF0100_OTP_SW3B_CONFIG),16))
  871.  
  872. OTP_SW4_VOLT = bin(int(device.readI2C(PF0100_OTP_SW4_VOLT),16))
  873.  
  874. OTP_SW4_SEQ = bin(int(device.readI2C(PF0100_OTP_SW4_SEQ),16))
  875.  
  876. OTP_SW4_CONFIG = bin(int(device.readI2C(PF0100_OTP_SW4_CONFIG),16))
  877.  
  878. OTP_SWBST_VOLT = bin(int(device.readI2C(PF0100_OTP_SWBST_VOLT),16))
  879.  
  880. OTP_SWBST_SEQ = bin(int(device.readI2C(PF0100_OTP_SWBST_SEQ),16))
  881.  
  882. OTP_VSNVS_VOLT = bin(int(device.readI2C(PF0100_OTP_VSNVS_VOLT),16))
  883.  
  884. OTP_VREFDDR_SEQ = bin(int(device.readI2C(PF0100_OTP_VREFDDR_SEQ),16))
  885.  
  886. OTP_VGEN1_VOLT = bin(int(device.readI2C(PF0100_OTP_VGEN1_VOLT),16))
  887.  
  888. OTP_VGEN1_SEQ = bin(int(device.readI2C(PF0100_OTP_VGEN1_SEQ),16))
  889.  
  890. OTP_VGEN2_VOLT = bin(int(device.readI2C(PF0100_OTP_VGEN2_VOLT),16))
  891.  
  892. OTP_VGEN2_SEQ = bin(int(device.readI2C(PF0100_OTP_VGEN2_SEQ),16))
  893.  
  894. OTP_VGEN3_VOLT = bin(int(device.readI2C(PF0100_OTP_VGEN3_VOLT),16))
  895.  
  896. OTP_VGEN3_SEQ = bin(int(device.readI2C(PF0100_OTP_VGEN3_SEQ),16))
  897.  
  898. OTP_VGEN4_VOLT = bin(int(device.readI2C(PF0100_OTP_VGEN4_VOLT),16))
  899.  
  900. OTP_VGEN4_SEQ = bin(int(device.readI2C(PF0100_OTP_VGEN4_SEQ),16))
  901.  
  902. OTP_VGEN5_VOLT = bin(int(device.readI2C(PF0100_OTP_VGEN5_VOLT),16))
  903.  
  904. OTP_VGEN5_SEQ = bin(int(device.readI2C(PF0100_OTP_VGEN5_SEQ),16))
  905.  
  906. OTP_VGEN6_VOLT = bin(int(device.readI2C(PF0100_OTP_VGEN6_VOLT),16))
  907.  
  908. OTP_VGEN6_SEQ = bin(int(device.readI2C(PF0100_OTP_VGEN6_SEQ),16))
  909.  
  910. OTP_PU_CONFIG1 = bin(int(device.readI2C(PF0100_OTP_PU_CONFIG1),16))
  911.  
  912. OTP_PU_CONFIG2 = bin(int(device.readI2C(PF0100_OTP_PU_CONFIG2),16))
  913.  
  914. OTP_PU_CONFIG3 = bin(int(device.readI2C(PF0100_OTP_PU_CONFIG3),16))
  915.  
  916. OTP_PU_CONFIG_XOR = bin(int(device.readI2C(PF0100_OTP_PU_CONFIG_XOR),16))
  917.  
  918. OTP_FUSE_POR1 = bin(int(device.readI2C(PF0100_OTP_FUSE_POR1),16))
  919.  
  920. OTP_FUSE_POR1 = bin(int(device.readI2C(PF0100_OTP_FUSE_POR1),16))
  921.  
  922. OTP_FUSE_POR1 = bin(int(device.readI2C(PF0100_OTP_FUSE_POR1),16))
  923.  
  924. OTP_FUSE_POR_XOR = bin(int(device.readI2C(PF0100_OTP_FUSE_POR_XOR),16))
  925.  
  926. OTP_PWRGD_EN = bin(int(device.readI2C(PF0100_OTP_PWRGD_EN),16))
  927.  
  928. OTP_EN_ECCO = bin(int(device.readI2C(PF0100_OTP_EN_ECCO),16))
  929.  
  930. OTP_EN_ECC1 = bin(int(device.readI2C(PF0100_OTP_EN_ECC1),16))
  931.  
  932. OTP_SPARE2_4 = bin(int(device.readI2C(PF0100_OTP_SPARE2_4),16))
  933.  
  934. OTP_SPARE4_3 = bin(int(device.readI2C(PF0100_OTP_SPARE4_3),16))
  935.  
  936. OTP_SPARE6_2 = bin(int(device.readI2C(PF0100_OTP_SPARE6_2),16))
  937.  
  938. OTP_SPARE7_1 = bin(int(device.readI2C(PF0100_OTP_SPARE7_1),16))
  939.  
  940. OTP_DONE = bin(int(device.readI2C(PF0100_OTP_DONE),16))
  941.  
  942. OTP_I2C_ADDR = bin(int(device.readI2C(PF0100_OTP_I2C_ADDR),16))
  943.  
  944. PAGE 2 ############################################################################################
  945.  
  946. SW1AB_PWRSTG = bin(int(device.readI2C(PF0100_SW1AB_PWRSTG),16))
  947.  
  948. PWRSTG_RSVD = bin(int(device.readI2C(PF0100_PWRSTG_RSVD),16))
  949.  
  950. SW1C_PWRSTG = bin(int(device.readI2C(PF0100_SW1C_PWRSTG),16))
  951.  
  952. SW2_PWRSTG = bin(int(device.readI2C(PF0100_SW2_PWRSTG),16))
  953.  
  954. SW3A_PWRSTG = bin(int(device.readI2C(PF0100_SW3A_PWRSTG),16))
  955.  
  956. SW3B_PWRSTG = bin(int(device.readI2C(PF0100_SW3B_PWRSTG),16))
  957.  
  958. SW4_PWRSTG = bin(int(device.readI2C(PF0100_SW4_PWRSTG),16))
  959.  
  960. PWRCTRL_OTP_CTRL = bin(int(device.readI2C(PF0100_PWRCTRL_OTP_CTRL),16))
  961.  
  962. I2C_WRITE_ADDRESS_TRAP = bin(int(device.readI2C(PF0100_I2C_WRITE_ADDRESS_TRAP),16))
  963.  
  964. I2C_TRAP_PAGE = bin(int(device.readI2C(PF0100_I2C_TRAP_PAGE),16))
  965.  
  966. I2C_TRAP_CNTR = bin(int(device.readI2C(PF0100_I2C_TRAP_CNTR),16))
  967.  
  968. IO_DRV = bin(int(device.readI2C(PF0100_IO_DRV),16))
  969.  
  970. OTP_AUTO_ECC0 = bin(int(device.readI2C(PF0100_OTP_AUTO_ECC0),16))
  971.  
  972. OTP_AUTO_ECC1 = bin(int(device.readI2C(PF0100_OTP_AUTO_ECC1),16))
  973.  
  974. Reserved_d8 = bin(int(device.readI2C(PF0100_Reserved_d8),16))
  975.  
  976. Reserved_d9 = bin(int(device.readI2C(PF0100_Reserved_d9),16))
  977.  
  978. OTP_ECC_CTRL1 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL1),16))
  979.  
  980. OTP_ECC_CTRL2 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL2),16))
  981.  
  982. OTP_ECC_CTRL3 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL3),16))
  983.  
  984. OTP_ECC_CTRL4 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL4),16))
  985.  
  986. OTP_ECC_CTRL5 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL5),16))
  987.  
  988. OTP_ECC_CTRL6 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL6),16))
  989.  
  990. OTP_ECC_CTRL7 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL7),16))
  991.  
  992. OTP_ECC_CTRL8 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL8),16))
  993.  
  994. OTP_ECC_CTRL9 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL9),16))
  995.  
  996. OTP_ECC_CTRL10 = bin(int(device.readI2C(PF0100_OTP_ECC_CTRL10),16))
  997.  
  998. OTP_FUSE_CTRL1 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL1),16))
  999.  
  1000. OTP_FUSE_CTRL2 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL2),16))
  1001.  
  1002. OTP_FUSE_CTRL3 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL3),16))
  1003.  
  1004. OTP_FUSE_CTRL4 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL4),16))
  1005.  
  1006. OTP_FUSE_CTRL5 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL5),16))
  1007.  
  1008. OTP_FUSE_CTRL6 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL6),16))
  1009.  
  1010. OTP_FUSE_CTRL7 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL7),16))
  1011.  
  1012. OTP_FUSE_CTRL8 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL8),16))
  1013.  
  1014. OTP_FUSE_CTRL9 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL9),16))
  1015.  
  1016. OTP_FUSE_CTRL10 = bin(int(device.readI2C(PF0100_OTP_FUSE_CTRL10),16))
  1017.  
  1018. '''
Add Comment
Please, Sign In to add comment