Агуулгын хүснэгт:

ESP8266 GPIO0/GPIO2/GPIO15 зүү ашиглах: 4 алхам
ESP8266 GPIO0/GPIO2/GPIO15 зүү ашиглах: 4 алхам

Видео: ESP8266 GPIO0/GPIO2/GPIO15 зүү ашиглах: 4 алхам

Видео: ESP8266 GPIO0/GPIO2/GPIO15 зүү ашиглах: 4 алхам
Видео: Как сделать 4-канальное реле Wi-Fi ESP8266 ESP01 | ESP01 Домашняя автоматизация | УдаленныйXY 2024, Арваннэгдүгээр
Anonim
ESP8266 GPIO0/GPIO2/GPIO15 зүү ашиглан
ESP8266 GPIO0/GPIO2/GPIO15 зүү ашиглан

2018 оны 7-р сарын 1-ний шинэчлэлт-GPIO0 нь гаралт байх үед дахин програмчлах тухай тэмдэглэл нэмсэн

Энэ бол ESP8266 модуль дээр GPIO0 / GPIO2 ба GPIO15 тээглүүрийг хэрхэн ашиглах тухай маш богино тэмдэглэл юм.

Шинэчлэлт: ESP8266-01 тээглүүрийг хэрхэн ашиглах талаар үзнэ үү

Танилцуулга

ESP8266 бол wifi -ийг дэмждэг хямд өртөгтэй чип юм. Энэ нь янз бүрийн модулийн төрлүүдтэй бөгөөд янз бүрийн аргаар програмчилж болно. Бүх модулиуд нь GPIO0 ба GPIO2 -ийг хүртээмжтэй болгодог. ESP8266-01-ээс бусад ихэнх модулиуд GPIO15-ийг хүртээмжтэй болгодог. Эдгээр GPIO нь модулийг хэрхэн эхлүүлэхийг хянадаг бөгөөд хэрэв тэдгээрийг огт ашиглахгүй бол тусгай зохицуулалт хийх шаардлагатай болдог. GPIO6-GPIO11 нь доор тайлбарласны дагуу тусгай эмчилгээ шаарддаг.

Алхам 1: Flash GPIO Pins - GPIO6 -аас GPIO11 хүртэл

Ихэнх ESP8266 самбарууд нь GPIO6-GPIO11-ийн зарим хэсэг эсвэл бүгдэд холбогдсон флаш чиптэй байдаг. Ихэнх програмууд флэш санах ой болон RAM ашигладаг тул хэрэв таны код зөвхөн RAM -аас ажилладаг эсэхийг баталгаажуулахгүй бол та эдгээр зүүг өөр зорилгоор ашиглах боломжгүй.

GPIO6 -аас GPIO11 хүртэлх зүүгүүдийн яг тоо нь таны модульд ашигласан флаш тоног төхөөрөмжийн төрлөөс хамаарна. Quad IO нь өгөгдөлд 4 мөр ашигладаг (нийт 6 зүү) нь стандартаас 4 дахин их хурдтай байдаг. Хос IO нь өгөгдөлд 2 мөр ашигладаг (нийт 4 зүү) Стандарт нь өгөгдөлд нэг мөр ашигладаг (нийт 3 зүү).

Хэрэв таны самбар яг юу шаарддагийг мэдэхгүй л бол GPIO6 -г GPIO11 -ийг үл тоомсорлож, кодоосоо дурдахгүй байх нь дээр.

Алхам 2: GPIO0, GPIO2 ба GPIO15 зүү

GPIO0, GPIO2 ба GPIO15 зүү
GPIO0, GPIO2 ба GPIO15 зүү

Эдгээр зүү нь чип ямар горимд эхлэхийг тодорхойлдог.

Програмыг хэвийн ажиллуулахын тулд GPIO0 ба GPIO2 -ийг Vcc (3.3V) хүртэл, GPIO15 -ийг GND руу татах шаардлагатай бөгөөд тус бүр нь 2K -аас 10K хүртэлх эсэргүүцэлтэй байна. 2K эсэргүүцэл нь дуу чимээний дархлааг сайжруулдаг. OLIMEX нь 2K резистор ашигладаг SparkFun нь 10K эсэргүүцэл ашигладаг. Би 3K3 резистор ашигладаг.

Эдгээр оролтын тохиргоог чипийг асаах (эсвэл дахин тохируулах) үед л шалгадаг. Үүний дараа тээглүүрийг ерөнхий зориулалтаар ашиглах боломжтой боловч доор дурдсанчлан эдгээр дээш татах/доош эсэргүүцэх хүчээр тэдгээрийн хэрэглээг хязгаарласан болно.

Алхам 3: GPIO0, GPIO2, GPIO15 -ийг гаралт болгон ашиглах

GPIO0, GPIO2 ба GPIO15 -ийг гаралт болгон ашиглах
GPIO0, GPIO2 ба GPIO15 -ийг гаралт болгон ашиглах

Дээр дурдсанчлан эдгээр тээглүүр нь GPIO15 -ийн VCC (GPIO0 ба GPIO2) эсвэл GND -тэй холбогдсон резистортой байх болно. Энэ нь реле эсвэл LED+эсэргүүцэл гэх мэт аливаа гадны төхөөрөмжийг хэрхэн холбохыг тодорхойлдог. GPIO0 ба GPIO2 -ийн хувьд гадаад реле нь VCC ба зүү хооронд холбогдсон байх ёстой бөгөөд ингэснээр татах эсэргүүцлийн үйлдэлд саад болохгүй. Үүний эсрэгээр GPIO15 -тэй холбогдсон гадаад реле нь GND ба зүү хооронд холбогдсон байх ёстой бөгөөд ингэснээр доош татах эсэргүүцлийн үйл ажиллагаанд саад болохгүй.

Гадны төхөөрөмжийг идэвхжүүлэхийн тулд GPIO0 эсвэл GPIO2 -ийг LOW (Идэвхтэй LOW), GPIO15 -ийг HIGH (Active HIGH) жолоодох ёстой.

Дээрх схем нь GPIO0 ба GPIO2 ба GPIO15 -ийг гаралт болгон хэрхэн ашиглахыг харуулж байна. Энэ хэлхээнд шаардлагатай татах/татан буулгах резистор орно. GPIO0-ээр удирддаг 5В реле модулийг опто тусгаарлагчтай бөгөөд оролтын хувьд тусдаа нийтлэг холболттой болохыг анхаарна уу. 5V VCCA хүчдэлийг ESP8266 зүү дээр ашиглахгүй байх нь чухал юм.

GPIO0 -ийг гаралт болгон ашиглахдаа хэрхэн дахин програмчлах вэ

Тэмдэглэл: Програмчлалын горимд орохын тулд GPIO0 -ийг газардуулах шаардлагатай. Хэрэв та ноорогоо өндөр жолоодож байгаа бол газардуулга хийх нь ESP8266 чипийг гэмтээж болзошгүй юм. Таны код GPIO0 гаралтыг жолоодох үед ESP8266-ийг дахин програмчлах аюулгүй арга бол:- a) Самбарыг унтраах b) богино GPIO0-аас gnd хүртэл c) GPIO0-ийн богино холболтын улмаас програмын горимд шилжсэн самбарыг асаах d) устгах GPIO0 -ийн товчлол, ингэснээр програм ажиллаж байх үед гаралтыг богиносгохгүй e) самбарыг дахин програмчлах f) шаардлагатай бол самбарыг асаах.

Алхам 4: GPIO0, GPIO2 ба GPIO15 -ийг оролт болгон ашиглах

GPIO0, GPIO2 ба GPIO15 -ийг оролт болгон ашиглах
GPIO0, GPIO2 ба GPIO15 -ийг оролт болгон ашиглах

Эдгээр тээглүүрийг оролт болгон ашиглах нь жаахан төвөгтэй юм. Дээр дурдсанчлан, асаах, дахин тохируулах үед ESP8266 модулийг хэвийн ажиллаж байгаа горимд эхлүүлэхийн тулд эдгээр тээглүүрийг шаардлагатай хэмжээгээр дээш эсвэл доош татах ёстой. Энэ нь ерөнхийдөө та эдгээр тээглүүрт гадны унтраалга залгах боломжгүй гэсэн үг юм, учир нь асаахад ихэвчлэн унтраалга нь оролтыг газарт татахгүй гэсэн баталгаа өгөхгүй тул модулийг зөв эхлүүлэхээс сэргийлнэ.

Заль мэх нь гадаад унтраалгыг GPIO0 эсвэл GPIO2 -аас GND руу шууд холбох биш харин ESP8266 -ийг ажиллуулсны дараа л газардуулж (гаралт болгон) өөр GPIO зүүгээр холбох явдал юм. GPIO тээглүүрийг гаралт болгон ашиглахдаа HIGH эсвэл LOW жолоодох эсэхээс хамааран VCC эсвэл GND -ийн эсэргүүцэл багатай холболтыг бий болгодог гэдгийг санаарай.

Энд зөвхөн GPIO0 ба GPIO2 -ийг авч үзэх болно. Энэ аргыг ашигласнаар та эдгээр хоёр (2) GPIO -ийг ашиглан нэг (1) нэмэлт оролт авах боломжтой.

Үүнтэй ижил төстэй аргыг GPIO15 -д өөр GPIO зүү ашиглан +VCC руу залгахад ашиглаж болно, гэхдээ энэ нь нэмэлт оролт авдаггүй тул та бусад GPIO зүүг шууд оролт болгон ашиглаж болно.

Дээрх хэлхээнд ESP8266-01 модулийг жишээ болгон ашиглаж байна. Энэхүү заль мэхийг ашиглахгүйгээр ESP8266-01 нь UART холболтод RX/TX тээглүүр ашиглаж байгаа бол оролт болгон ашиглах үнэгүй тээглүүр байхгүй болно.

Ноорог тохиргооны () аргыг зөвхөн ESP8266 модулийг ажиллуулсны дараа ажиллуулдаг тул GPIO0 гаралтыг LOW болгож аюулгүй болгох боломжтой бөгөөд ингэснээр S1 нь GPIO2 -тэй холбогддог. Та дижитал зургийнхаа өөр хэсэгт digitalRead (2) ашиглан шилжүүлэгчийн тохиргоог уншиж болно.

Дүгнэлт

Энэхүү богино тэмдэглэлд GPIO0, GPIO2 ба GPIO15 -ийг хэрхэн гаралт болгон ашиглах, хэрхэн ашиглах талаар GPIO0 ба GPIO2 -ийг ашиглан нэмэлт оролт авах боломжтойг харуулав.

Зөвлөмж болгож буй: