Добрый день, не подскажете как заставить работать данный модуль с micropython на esp32? почему то переключает только первые два канала остальные нет, ко всем подключены дисплеи 1602. from machine import I2C, Pin i2c = I2C(1, scl=Pin(22), sda=Pin(21), freq=400000) enable_bit = 0x08 for i in range(8): i2c.writeto(112, hex(enable_bit | i)) print(i2c.scan()) output: [39,112] [39,112] [112] [112] [112] [112] [112] [112]
Операция с буфером памяти только в таком формате принимает или через байт b'8' первый канал b'9' второй и т.д.
А если так Код (Python): i2c.writeto(112, enable_bit | i) или так написать? Код (Python): i2c.writeto(112, enable_bit + i)
Так тоже ошибку выдает, но Вы правы он хотел массив Код (Python): from machine import I2C, Pin i2c = I2C(1, sda=Pin(21), scl=Pin(22)) enable_bit = 8 for i in range(8): i2c.writeto(112, bytearray([enable_bit | i])) print(i2c.scan()) так все работает. Спасибо огромное.
Добрый день, честно говоря не сталкивался с такой ошибкой, пока ковырялся с проектом все было нормально. Но если есть интерес могу попробовать запустить на тест на сутки ради научного интереса?