Мазмуну:
- 1 -кадам: Кээ бир Shell Comands
- 2 -кадам: Биринчи жагдай: I2c түзмөктөрү бир эле дарекке ээ
- 3 -кадам: Case 2: Ар түрдүү I2c даректери
Video: Raspberry PI бир нече I2C түзмөктөрү: 3 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Долбооруңузда бир эле I2C түзмөктөрүн колдоно албаганыңыз үчүн капа болосуз. Жай мультиплексорлорду колдонуунун кажети жок. Акыркы raspbian ядросу GPIO казыктарын колдонуу менен бир нече I2C автобустарын түзүүнү колдойт. Бул чечим супер тез.
1 -кадам: Кээ бир Shell Comands
I2c түзмөктөрүңүздүн бирин туташтырыңыз, малина пиңиз турганда, малина пиңизди баштаңыз жана чуркаңыз
sudo i2cdetect -y 1
Сиз тиркемедеги сүрөттөгүдөй таблицаны көрөсүз. Менде BMP280 темп -расы жана барометрдик басым сенсору бар. I2c дареги столго ылайык 0x76. Бул дарекке көңүл буруңуз.
Муну бардык i2c түзмөктөрүңүз үчүн жасаңыз.
2 -кадам: Биринчи жагдай: I2c түзмөктөрү бир эле дарекке ээ
Бул дайыма көйгөйлүү иш болгон. I2c автобусу бир нече түзмөктү башкара алат, бирок аларда i2c даректери башка болушу керек. Кээ бир i2c түзмөктөрүндө башка i2c даректерин орнотуу үчүн секиргичтер бар, бирок көбүндө жок. Бул учурда i2c SDA (Маалымат) жана SCL (Саат) айландыруу үчүн i2c мультиплексорун (жабдыкты) колдонсоңуз болот же кошумча i2c автобусун же андан көп түзө аласыз.
Мен эки кошумча автобус түзөм, nl автобус 3 жана 4
Клипти ачып, чуркаңыз
cd /boot
sudo nano config.txt
Төмөнкү кодду кошуңуз, spi жана i2c иштетилген бөлүмдө.
dtoverlay = i2c-gpio, bus = 4, i2c_gpio_delay_us = 1, i2c_gpio_sda = 23, i2c_gpio_scl = 24
Бул линия GPIO 23 боюнча SDA жана GPIO 24 боюнча SCL катары GPIO 23 боюнча кошумча i2c автобусун (4 -автобус) түзөт (GPIO 23 жана 24 демейки)
I2c автобусун түзүү үчүн төмөнкү сапты да кошуңуз 3
dtoverlay = i2c-gpio, bus = 3, i2c_gpio_delay_us = 1, i2c_gpio_sda = 17, i2c_gpio_scl = 27
GPIO 17 SDA болот жана GPIO 27 i2c автобус 4 үчүн SCL болот.
Чыгуу үчүн X түрүн көзөмөлдөө.
Автобустун номери жана тартиби жөнүндө эскертүү:
0 жана 2 автобусту эч качан колдонбоңуз, бул тактадагы башка нерселер үчүн колдонулат, шляпалардагы eprom ж
2019 -жылдын апрель айында raspbian чыгарылышы үчүн:
Сиз ар дайым config.txt файлыңыздын эң бийик автобусунан (4 -автобус) баштаңыз жана эң төмөнкү автобуска чейин иштеңиз (3 -автобус).
Эң төмөн автобус дайыма 3 -автобус болушу керек
Эгер сизге 5 кошумча автобус керек болсо, автобустар 7, 6, 5, 4, 3 иретинде би болушу керек
Автобустун заказы боюнча бул маселе бул Нускама башында жазылганда болгон эмес. Ядрого өзгөртүүлөр киргизилген окшойт.
Пиңизди өчүрүп коюңуз. I2c түзмөктөрүңүздү 4 -автобуска (SDA GPIO 23кө жана SCL GPIO 24кө), экинчиси i2c автобус 3кө (SDA GPIO 17ге жана SCL GPIO 27ге) туташтырыңыз.
Пити күйгүзүңүз.
Чуркоо:
sudo i2cdetect -l (Кичи тамгасы L)
Сиз азыр i2c 3 жана 4 -автобустардын да тизмеде турганын көрөсүз. Ошондой эле иштетүү:
sudo i2cdetect -y 3
sudo i2cdetect -y 4
Эми сенсорду программалоо тилинде колдоно аласың. Туура i2c автобустарын көрсөтүүнү унутпаңыз.
Тиркөө популярдуу BMP280 температура жана басым сенсоруна мисал. Эч бир мультиплексор 2 BMP280ти тез окуй албайт.
2 Sensirion SDP 810 сенсорунун мисалы дагы тиркелет. Дагы мен мурун колдонгон мультиплексорго караганда алда канча ылдамыраак иштейм
Мен adafruitтен эки жаңы BMP388ди окуу үчүн python кодун түздүм.
Мен келечекте башка сенсорлорду кошо алам
3 -кадам: Case 2: Ар түрдүү I2c даректери
Жөнөкөй. i2c - бул автобус. Автобустун максаты - бир нече түзмөк менен байланышуу. Түзмөктөрдү бир эле i2c шинасына туташтырыңыз. Сиз автобусту колдоно аласыз.
Чуркоо:
sudo i2cdetect -y 1
Сиз тизмеленген түзмөктөрдү көрөсүз.
Сунушталууда:
Arduino Connect Бир нече I2C түзмөктөрү: 6 кадам
Arduino Connect Бир нече I2C Түзмөктөрү: Бул үйрөткүчтө биз I2C туташуусу менен бир нече модулдарды arduino менен кантип туташтырууну үйрөнөбүз. Видеону көрүңүз! Биздин учурда биз 4 OLED дисплейди мисал катары колдонобуз, бирок сиз башка I2C модулдарын колдоно аласыз/ Кааласаңыз сенсорлор.Эскертүү: 4 OLED дисплейи
Бир аналог пинди колдонуу менен бир нече аналогдук баалуулуктарды кантип окуу керек: 6 кадам (сүрөттөр менен)
Бир аналог пинди колдонуу менен бир нече аналогдук баалуулуктарды кантип окуу керек: Бул үйрөткүчтө мен сизге бир эле аналогдук кирүүчү пинди колдонуу менен бир нече аналогдук баалуулуктарды кантип окууну көрсөтөм
Бир нече баскычтарды Arduinoдогу бир пинге туташтыруу: 4 кадам
Бир нече баскычтарды Arduino'догу бир пинге туташтыруу: Саламатсыздарбы, Arduino долбоорлоруңузда жаркыраган светодиоддору ашып кеткенде, сиз өзүңүзгө кошумча казыктарга муктаж болуп калышыңыз мүмкүн. Мен сизге бир кнопканы көрсөтөм, анда сиз бир эле баскычка ээ боло аласыз, бардыгы бир эле аналогдук пинге туташкан
Fusion 360 бир нече денени бир STL файлы катары экспорттоо: 5 кадам
Fusion 360 бир нече денени бир STL файлы катары экспорттоо: Мен биринчи жолу Fusion 360 колдоно баштаганымда, менин эң жакшы көргөн өзгөчөлүктөрүмдүн бири 3D моделинен 3D басып чыгарууга өтүү болгон. Башка эч кандай программалык камсыздоо жумшак иштөө процессин камсыз кылган эмес. Эгерде сиздин модельде бир гана дене бар болсо, муну жасоо абдан жөнөкөй. Бирок
Бир жолу колдонулуучу камераны кайра колдонуп, планетаны сактаңыз! жана бир нече Quid сактоо: 4 кадам
Бир жолу колдонулуучу камераны кайра колдонуп, планетаны сактаңыз! and Save a Few Quid: Жакында мен жергиликтүү фото дүкөнүмө (jessops) түшүп, бир нече жолу колдонулган бир жолу колдонулуучу камераларды алдым, анткени алар шок адамдар үчүн абдан кызыктуу экенин билесиз. Жөн эле сураңыз, алар беришет. Мен дагы ойлодум, ээ, бул компаниялар камераларды кайра алышат, коет