Агуулгын хүснэгт:
- Алхам 1: I2C сүлжээний автобусанд холбогдох
- Алхам 2: Татах эсэргүүцэл нэмэх
- Алхам 3: Боолыг програмчлах
- Алхам 4: Мастерыг програмчлах
Видео: I2C: 4 алхамыг ашиглан хоёр OOBoards -ийг хооронд нь холбох
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:05
Энэхүү зааварчилгаа нь I2C ашиглан хоёр OOBoards -ийг хэрхэн холбохыг хамарна.
Алхам 1: I2C сүлжээний автобусанд холбогдох
OOBoards дээр хоёр I2C автобус, орон нутгийн автобус, сүлжээний автобус байдаг.
OOPIC код нь үндсэндээ орчуулагдсан хэл юм, өөрөөр хэлбэл "код" нь EEPROM -д хадгалагдаж, микропроцессор бодит цаг хугацаанд уншиж/тайлбарладаг. EEPROM нь микроконтроллертой холбогдохын тулд LOCAL I2C автобусыг ашигладаг. Хэрэв та осциллоскопоор орон нутгийн энэ автобусыг харах юм бол тасралтгүй шуугилдахыг харах болно. OOBoards самбар дээр орон нутгийн автобус нь I2C холбогчтой холбогддог бөгөөд энэ нь бидний хүссэн зүйл биш юм. NETWORK автобус нь ихэвчлэн бусад төхөөрөмж/oopics -тэй харилцахад ашигладаг автобус бөгөөд OOBoards дээр энэ автобус нь холбогчгүй байдаг. Энэ автобусанд нэвтрэхийн тулд та микроконтроллерийн 42 ба 37 -р зүү рүү утсыг гагнах ёстой (схемд N_SDA, N_SCL гэж тэмдэглэсэн).
Алхам 2: Татах эсэргүүцэл нэмэх
Процессор бүрт SDA ба SCL холболтыг хийсний дараа хоёр самбарыг холбож болно
SDA -ийг SDA -д, SCL -ийг SCL -д холбох, самбаруудын хооронд нийтлэг газардуулгын утсыг холбох замаар хооронд нь холбох боломжтой. Мөр бүр дээр татах эсэргүүцэл хэрэгтэй болно (би 12к ашигладаг байсан, гэхдээ энэ бол миний хажууд байсан зүйл юм). Нийт хоёр эсэргүүцэлтэй (4 биш) нэг мөрөнд зөвхөн нэг татах эсэргүүцэл хэрэгтэй гэдгийг анхаарна уу.
Алхам 3: Боолыг програмчлах
Одоо физик холболтууд байгаа тул та боолын микроконтроллерыг програмчлах хэрэгтэй болно. Таныг эхлүүлэхийн тулд би доор хэдэн код нэмсэн.
Бяцхан боол шинэ oDDELinkDim LED нь шинэ oDIO1Sub Main () ба бидний I2C хаягийг 2 болгож тохируулна уу (энэ нь мастер кодонд тохируулсан алсын зай ба апостресстэй таарч байх ёстой) ooPIC. Node = 2 & LED LED. IOLine = 5 LED. = cvOutput & aposnow, бидний DDELink объектын гаралтыг & aposthe LED -тэй холбож асаагаарай … одоо автоматаар LED SLAVE. Output. Link (LED) SLAVE. Operate = cvTrueEnd дэд
Алхам 4: Мастерыг програмчлах
Эцэст нь мастер микроконтроллерыг програмчилна уу. DDELink -ийн. Location шинж чанарыг тохируулсан мөрүүдэд анхаарлаа хандуулаарай: Хэрэв үүнийг зөв тохируулаагүй бол энэ нь ажиллахгүй болно!
Дим Мастер Шинэ oDDELinkDim утас шиг Шинэ oWireDim hz1 Шинэ Шинэ oBitSub Main () ба 1 секундын таймерыг бид хандах боломжтой хэсэг рүү холбоно & aposthis бит одоо секунд тутамд нэг удаа сэлгэнэ. Оролт. Link (ooPIC. Hz1) утас Link (hz1) утас. Operate = cvTrue & aposthis нь манай локал микроконтроллерын I2C хаягийг тогтоодог бөгөөд хаягийг тохируулах хүртэл I2C интерфэйс aposthe идэвхгүй байдаг. Объект нь бас. Output шинж чанарыг ашигладаг бөгөөд бид хүлээн авах горимд байх үед Master. Input. Link (hz1) & aposthis бол алсын микроконтроллерийн I2C хаяг бөгөөд боолын кодыг & aposin хийснээр бид 2 хаягтай байхыг хэлдэг. Master. Node = 2 & aposugh… энэ бол муухай хэсэг, энэ бол DDELink ба aposobject -ийн боол ба aposs санах ойн орон зайн "хаяг" юм. Энэ дугаарыг олж мэдэхийн тулд & aposwe нь боолын кодыг нээж хөрвүүлэх шаардлагатай бөгөөд дараа нь View-> Эмхэтгэсэн кодыг авах хэрэгтэй. & aposlook: & aposL *. Construct. Begin; Шинэ oDDELink шиг бүдгэрүүлээрэй & aposwhere * нь ямар ч тоо бөгөөд энэ нь таны DDELink объектын нэр бөгөөд боолын кодоо дарна уу. Дараах мөрөнд дараах зүйлийг унших ёстой: & aposC0020: 041; Энэ … & apos -ийн баруун талд байгаа хаяг & aposthe: & apos бол DDELink объектын эзэн Master. Location = 41 & aposthis нь бидний илгээж буй объектыг хэлнэ. өгөгдөл (өөрөөр хэлбэл, манай. Input property & aposto of the slaves.output property -аас өгөгдлийг хуулах = cvTrue Do & aposcheck, хэрэв бид Master. Transmitting = cvFalse Дараа нь өгөгдөл дамжуулж байгаа эсэхийг харахын тулд энэ утгыг 1 болгож авснаар мастер нь боол руу илгээгдэх болно. = 1 бол LoopEnd Sub байвал дуусна
Зөвлөмж болгож буй:
IC 555: 6 алхамыг ашиглан хоёр тонн хаалганы хонх
IC 555 ашиглан хоёр авиа хаалганы хонх: Aliexpress дээр хоёр өнгийн дуугаруулагчийг 10 доллараар зарж буй хүнийг харсан. Тархи тэр даруй хэлэв, чи нухацтай байна уу? Бага зэрэг цаг зав, урам зоригоо оруулснаар та энэ хэлхээг 3 доллараас бага үнээр хийх боломжтой
Arduino болон ESP8266: 8 алхамтай DS18B20 температур мэдрэгчийг хооронд нь холбох
Arduino ба ESP8266 -тай DS18B20 температур мэдрэгчийг хооронд нь холбох: Хөөе, залуусаа! Akarsh энд байна. Энэ нь DHT11 -тэй төстэй температур мэдрэгч боловч өөр өөр хэрэглээний багцтай. Бид үүнийг харьцуулах болно
I2C / IIC LCD дэлгэц - Arduino ашиглан SPI -IIC модулийг ашиглан I2C LCD дэлгэц рүү SPI LCD ашиглах: 5 алхам
I2C / IIC LCD дэлгэц | IUC LCD дэлгэц дээр SPI LCD дэлгэцийг SPI -ийг IIC модулийг ашиглан Arduino ашиглан ашиглаарай: Сайн байна уу залуусаа, ердийн SPI LCD 1602 -ийг холбоход хэт олон утас байдаг тул үүнийг arduino -той холбоход маш хэцүү боловч зах зээл дээр боломжтой нэг модуль байдаг. SPI дэлгэцийг IIC дэлгэц болгон хөрвүүлэх тул та зөвхөн 4 утас холбох хэрэгтэй
LM3914: 3 алхамыг ашиглан хоёр сувгийн Vu тоолуурыг хэрхэн яаж хийх вэ
LM3914 -ийг ашиглан хоёр сувгийн Vu тоолуурыг хэрхэн яаж хийх вэ: Энэ нийтлэлд би LM3914 IC ашиглан хоёр сувгийн Vu тоолуур хийх талаар хуваалцах болно. Та бичлэгийг хавсаргасан бичлэгийг үзэх боломжтой бөгөөд барилгын ажлыг дуусгах боломжтой болно. төслийн ажил эсвэл бичлэгийг үргэлжлүүлэн унших
Хандалтын цэг - Хоёр ESP8266 MCU -ийн хооронд станцын холбоо: 3 алхам
Хандалтын цэг - Хоёр ESP8266 MCU -ийн хооронд станцын холбоо: Сайн байна уу, үйлдвэрлэгчид! Өмнөх заавартаа би гэрийн WiFi чиглүүлэгчээр дамжуулан хоёр ESP8266 MCU -ийн хооронд WiFi холболт хийсэн. Сэтгэгдлүүдээс харахад ESP8266 MCU -ийг чиглүүлэгчийн хүрээнээс хол ашиглахыг хүсдэг үйлдвэрлэгчид байдаг. Тиймээс энд баар байна