Menyelesaikan masalah I2C Grove Oled SSD1315 tak dikesan pada Circuitpython

Penyambungan I2C adalah sambungan yang membolehkan pelbagai sensor disambungkan pada pin yang sama. Tetapi tidak semua papan pembangun dibuat serupa.

Sebagai contoh untuk circuitpython , pada seeduino Xiao. apabila kita menyenaraikan semua sambugan dalam kelas board menggunakan dir(board) , kita akan dapati bahawa I2C tersenarai sebagai salah satu pin yang tersedia. Jadi untuk menggunakan I2C kita tidak perlu memetakan dengan mana2 pin digital.

Tetapi apabila kita cuba menyenaraikannya menggunakan arahan dir(board) pada Maker Nano RP2040, tiada pin I2C tersenarai. oleh itu kita perlu memetakan dengan pin GPIO yang sesuai.

Kita semak gambarajah pinout, sepatutnya terdapat beberapa pin GPIO yang boleh digunakan dan mempunyai fungsi SDA dam SCL (untuk I2C)

Malangnya, apabila saya cuba menggunakan Grove OLED SSD1315 0.96 inci pada beberapa pin digital, alamat I2c tidak dikesan. Akhirnya satu pasangan pin sahaja yang boleh mengesan alamat I2C 0x3C untuk paparan tersebut iaitu pin GP12 dan GP13.

import board
import busio
OLED_SDA = board.GP12
OLED_SCL = board.GP13
i2c = busio.I2C(scl=OLED_SCL, sda=OLED_SDA)
oled = adafruit_ssd1306.SSD1306_I2C(128, 64, i2c)Code language: JavaScript (javascript)

Saya tidak pasti masalah ini datang dari mana, kerana saya telah melihat contoh penggunaan pada paparan OLED yang lain tiada masalah . kemungkinan kerana pustaka untuk circuitpython untuk OLED masih baru jadi ada ciri-ciri yang belum disokong sepenuhnya.

Leave a Reply

Alamat e-mel anda tidak akan disiarkan. Medan diperlukan ditanda dengan *

Related Post