else:
from machine import I2C as _I2C
from microcontroller.pin import i2cPorts
+ busnum = None
for portId, portScl, portSda in i2cPorts:
- if scl == portScl and sda == portSda:
- self._i2c = _I2C(portId, mode=_I2C.MASTER, baudrate=frequency)
- break
+ try:
+ if scl == portScl and sda == portSda:
+ self._i2c = _I2C(portId, mode=_I2C.MASTER, baudrate=frequency)
+ busnum = portId
+ break
+ except RuntimeError:
+ pass
else:
- raise NotImplementedError(
+ raise ValueError(
"No Hardware I2C on (scl,sda)={}\nValid I2C ports: {}".format((scl, sda), i2cPorts)
)
self._pins = (portSck, portMosi, portMiso)
break
else:
- raise NotImplementedError(
+ raise ValueError(
"No Hardware SPI on (SCLK, MOSI, MISO)={}\nValid SPI ports:{}".
format((clock, MOSI, MISO), spiPorts))
)
break
else:
- raise NotImplementedError(
+ raise ValueError(
"No Hardware UART on (tx,rx)={}\nValid UART ports: {}".format((tx, rx), uartPorts)
)