Прошивка с открытым исходным кодом rp2040-ic2-interface от Nicolai Electronics для Raspberry Pi Pico (или других плат Raspberry Pi RP2040) преобразует плату в мост I2C-USB для подключения любого датчика или модуля I2C к ПК или другому оборудованию без GPIO.
Прошивка реализует протокол USB, ожидаемый драйвером ядра I2C-Tiny-USB, используемым исходным проектом I2C-Tiny-USB для 8-разрядных микроконтроллеров Microchip ATMega AVR. Однако RP2040 — это не форк оригинального проекта, а полная повторная реализация прошивки.
Вам нужно будет подключить датчик I2C, дисплей или другой модуль к контактам SDA (GPIO 2) и SCL (GPIO 3) микроконтроллера Raspberry Pi RP2040 и установить «предварительную» прошивку на плату. Вы найдете его вместе с исходным кодом, написанным на языке C, на GitHub. Обратите внимание, что проект имеет «статус проверки концепции», и необходимо дополнительное тестирование, чтобы убедиться, что все работает должным образом.
Этот проект лучше всего использовать с хостом Linux в качестве части ядра i2c-tiny-usb официального дерева исходных текстов ядра. Нам удалось легко загрузить его на Ubuntu 20.04:
1 2 3 |
jaufranc@cnx-laptop-4:~$ sudo modprobe i2c-tiny-usb jaufranc@cnx-laptop-4:~$ lsmod | grep tiny i2c_tiny_usb 20480 0 |
Но вы также найдете драйверы для Windows и macOS и документацию по вышеупомянутому проекту I2C-Tiny-USB. После того, как вы подключите плату RP2040 к хосту через USB-кабель, датчик/модуль I2C должен быть виден в стандартных клиентских приложениях, например, в инфраструктуре lm_sensors (датчики-обнаружение, датчики и т. д.).
Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.