Update: 更新micropython libs
This commit is contained in:
@@ -29,10 +29,9 @@ class CBR817:
|
|||||||
def __init__(self, i2c_bus, addr=CBR_ADDRESS, tx_power=3, threshold=5000, noise=256, delay=500, lock=500):
|
def __init__(self, i2c_bus, addr=CBR_ADDRESS, tx_power=3, threshold=5000, noise=256, delay=500, lock=500):
|
||||||
self._device = i2c_bus
|
self._device = i2c_bus
|
||||||
self._address = addr
|
self._address = addr
|
||||||
_str_i2c = str(self._device)
|
_str_i2c = str(self._device) #唤醒需要SCL管脚给高脉冲
|
||||||
self._scl = Pin(int(_str_i2c[_str_i2c.find('=') + 1 : _str_i2c.find(",")]), Pin.OUT, Pin.OPEN_DRAIN)
|
self._scl = Pin(int(_str_i2c[_str_i2c.find('=') + 1 : _str_i2c.find(",")]), Pin.OUT, Pin.OPEN_DRAIN)
|
||||||
|
|
||||||
self._wake()
|
|
||||||
self._configure()
|
self._configure()
|
||||||
self.tx_power(tx_power)
|
self.tx_power(tx_power)
|
||||||
self.threshold(threshold)
|
self.threshold(threshold)
|
||||||
@@ -54,6 +53,7 @@ class CBR817:
|
|||||||
time.sleep_us(10)
|
time.sleep_us(10)
|
||||||
|
|
||||||
def threshold(self, value=None):
|
def threshold(self, value=None):
|
||||||
|
self._wake()
|
||||||
if value is None:
|
if value is None:
|
||||||
return self._rreg(CBR_SENSOR_THR) | self._rreg(CBR_SENSOR_THR + 1) << 8
|
return self._rreg(CBR_SENSOR_THR) | self._rreg(CBR_SENSOR_THR + 1) << 8
|
||||||
else:
|
else:
|
||||||
@@ -61,6 +61,7 @@ class CBR817:
|
|||||||
self._wreg(CBR_SENSOR_THR + 1, (value >> 8) & 0xFF)
|
self._wreg(CBR_SENSOR_THR + 1, (value >> 8) & 0xFF)
|
||||||
|
|
||||||
def noise(self, value=None):
|
def noise(self, value=None):
|
||||||
|
self._wake()
|
||||||
if value is None:
|
if value is None:
|
||||||
return self._rreg(CBR_NOISE_THR) | self._rreg(CBR_NOISE_THR + 1) << 8
|
return self._rreg(CBR_NOISE_THR) | self._rreg(CBR_NOISE_THR + 1) << 8
|
||||||
else:
|
else:
|
||||||
@@ -68,6 +69,7 @@ class CBR817:
|
|||||||
self._wreg(CBR_NOISE_THR + 1, (value >> 8) & 0xFF)
|
self._wreg(CBR_NOISE_THR + 1, (value >> 8) & 0xFF)
|
||||||
|
|
||||||
def delay_ms(self, value=None):
|
def delay_ms(self, value=None):
|
||||||
|
self._wake()
|
||||||
if value is None:
|
if value is None:
|
||||||
return round((self._rreg(CBR_DELAY_TIM) | self._rreg(CBR_DELAY_TIM + 1) << 8 | self._rreg(CBR_DELAY_TIM + 2) << 16) / 32)
|
return round((self._rreg(CBR_DELAY_TIM) | self._rreg(CBR_DELAY_TIM + 1) << 8 | self._rreg(CBR_DELAY_TIM + 2) << 16) / 32)
|
||||||
else:
|
else:
|
||||||
@@ -77,6 +79,7 @@ class CBR817:
|
|||||||
self._wreg(CBR_DELAY_TIM + 2, (value >> 16) & 0xFF)
|
self._wreg(CBR_DELAY_TIM + 2, (value >> 16) & 0xFF)
|
||||||
|
|
||||||
def lock_ms(self, value=None):
|
def lock_ms(self, value=None):
|
||||||
|
self._wake()
|
||||||
if value is None:
|
if value is None:
|
||||||
return round((self._rreg(CBR_LOCK_TIM) | self._rreg(CBR_LOCK_TIM + 1) << 8 | self._rreg(CBR_LOCK_TIM + 2) << 16) // 32)
|
return round((self._rreg(CBR_LOCK_TIM) | self._rreg(CBR_LOCK_TIM + 1) << 8 | self._rreg(CBR_LOCK_TIM + 2) << 16) // 32)
|
||||||
else:
|
else:
|
||||||
@@ -86,12 +89,14 @@ class CBR817:
|
|||||||
self._wreg(CBR_LOCK_TIM + 2, (value >> 16) & 0xFF)
|
self._wreg(CBR_LOCK_TIM + 2, (value >> 16) & 0xFF)
|
||||||
|
|
||||||
def tx_power(self, value=None):
|
def tx_power(self, value=None):
|
||||||
|
self._wake()
|
||||||
if value is None:
|
if value is None:
|
||||||
return self._rreg(CBR_TX_RF) & 0x07
|
return self._rreg(CBR_TX_RF) & 0x07
|
||||||
else:
|
else:
|
||||||
self._wreg(CBR_TX_RF, (value & 0x07) | 0x30)
|
self._wreg(CBR_TX_RF, (value & 0x07) | 0x30)
|
||||||
|
|
||||||
def _configure(self):
|
def _configure(self):
|
||||||
|
self._wake()
|
||||||
self._wreg(CBR_SEL_REG, 0xC0) #唤醒射频芯片
|
self._wreg(CBR_SEL_REG, 0xC0) #唤醒射频芯片
|
||||||
_star = time.ticks_ms()
|
_star = time.ticks_ms()
|
||||||
while self._rreg(CBR_SEL_REG) != 0xC0:
|
while self._rreg(CBR_SEL_REG) != 0xC0:
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ class CI130X:
|
|||||||
_buf = self._rreg(_CI_ID_GET, 3)
|
_buf = self._rreg(_CI_ID_GET, 3)
|
||||||
if not repeat:
|
if not repeat:
|
||||||
self._wreg(bytes([_CI_ID_CLE, 0, 0, _CI_ID_END]))
|
self._wreg(bytes([_CI_ID_CLE, 0, 0, _CI_ID_END]))
|
||||||
|
time.sleep_ms(50)
|
||||||
self._cmd_id = _buf[0] if _buf[2] == _CI_ID_END else None
|
self._cmd_id = _buf[0] if _buf[2] == _CI_ID_END else None
|
||||||
return self._cmd_id
|
return self._cmd_id
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user