218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
|
]
def __init__(self, spi_bus, spi_dev, config = None):
spi = spidev.SpiDev()
spi.open(spi_bus, spi_dev)
self.__spi = spi
self.__set_spi_mode(1)
self.configure(config)
if len(self.__register_map) != 53:
raise ValueError('Inconsistent register map!')
return None
|
<
<
|
218
219
220
221
222
223
224
225
226
227
228
229
230
231
|
]
def __init__(self, spi_bus, spi_dev, config = None):
spi = spidev.SpiDev()
spi.open(spi_bus, spi_dev)
self.__spi = spi
self.configure(config)
if len(self.__register_map) != 53:
raise ValueError('Inconsistent register map!')
return None
|
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
|
if reg_string.isnumeric():
return int(reg_string)
for reg_number, reg_info in enumerate(self.__register_map):
if reg_info['name'] == reg_string:
return reg_number
raise NameError("Invalid register value {}".format(reg_string_orig))
def __set_spi_mode(self, mode):
if mode != self.__spi.mode:
self.__spi.mode = mode
return True
def __get_spi_mode(self):
return self.__spi.mode
def __check_radio(self):
old_mode = self.__get_spi_mode()
value1 = self.get_register(0);
value2 = self.get_register(1);
if value1 == 0x6fe0 and value2 == 0x5681:
return True
return False
|
<
<
<
<
<
<
<
<
<
<
|
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
|
if reg_string.isnumeric():
return int(reg_string)
for reg_number, reg_info in enumerate(self.__register_map):
if reg_info['name'] == reg_string:
return reg_number
raise NameError("Invalid register value {}".format(reg_string_orig))
def __check_radio(self):
value1 = self.get_register(0);
value2 = self.get_register(1);
if value1 == 0x6fe0 and value2 == 0x5681:
return True
return False
|
402
403
404
405
406
407
408
409
410
411
412
413
414
415
|
def configure(self, config):
self.__config = config
if config is None:
return None
self.__spi.max_speed_hz = self.__config.get('frequency', 4000000)
return None
def initialize(self):
self.__reset_device()
self.__set_defaults()
|
>
>
>
>
>
>
|
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
|
def configure(self, config):
self.__config = config
if config is None:
return None
self.__spi.max_speed_hz = self.__config.get('frequency', 4000000)
self.__spi.bits_per_word = self.__config.get('bits_per_word', 8)
self.__spi.cshigh = self.__config.get('csigh', False)
self.__spi.no_cs = self.__config.get('no_cs', False)
self.__spi.lsbfirst = self.__config.get('lsbfirst', False)
self.__spi.threewire = self.__config.get('threewire', False)
self.__spi.mode = self.__config.get('mode', 1)
return None
def initialize(self):
self.__reset_device()
self.__set_defaults()
|