Mundarija:

ESP8266 GPIO0/GPIO2/GPIO15 pinlaridan foydalanish: 4 qadam
ESP8266 GPIO0/GPIO2/GPIO15 pinlaridan foydalanish: 4 qadam

Video: ESP8266 GPIO0/GPIO2/GPIO15 pinlaridan foydalanish: 4 qadam

Video: ESP8266 GPIO0/GPIO2/GPIO15 pinlaridan foydalanish: 4 qadam
Video: Знакомство с платой разработки Heltec LoRa CubeCell HTCC-AB01 2024, Noyabr
Anonim
ESP8266 GPIO0/GPIO2/GPIO15 pinlaridan foydalanish
ESP8266 GPIO0/GPIO2/GPIO15 pinlaridan foydalanish

2018 yil 1-iyulni yangilang-GPIO0 chiqqanda qayta dasturlash haqida eslatma qo'shildi

Bu ESP8266 modulida GPIO0 / GPIO2 va GPIO15 pinlarini ishlatish bo'yicha juda qisqa eslatma.

Yangilash: Shuningdek, ESP8266-01 pinlarini qanday ishlatishni ko'rib chiqing

Kirish

ESP8266 - bu Wi -Fi bilan ishlaydigan arzon narxlardagi chip. U har xil turdagi modullarga ega va ularni har xil usulda dasturlash mumkin. Barcha modullar GPIO0 va GPIO2 ga kirishni ta'minlaydi. ESP8266-01 dan tashqari ko'pchilik modullar ham GPIO15-ni ochiq qiladi. Bu GPIO modulning qanday ishga tushishini nazorat qiladi va agar umuman ishlatilsa maxsus ishlov berishni talab qiladi. GPIO6-GPIO11 shuningdek, quyida tasvirlanganidek, maxsus davolanishni talab qiladi.

1 -qadam: Flash GPIO pinlari - GPIO6 dan GPIO11gacha

Ko'pgina ESP8266 platalarida GPIO6-GPIO11-ning bir qismiga yoki barchasiga ulangan flesh-chip mavjud. Ko'pgina dasturlar tezkor xotira bilan bir qatorda flesh -xotiradan ham foydalanadi, shuning uchun sizning kodingiz faqat RAMdan ishlayotganiga aniq ishonch hosil qilmasangiz, bu pinlarni boshqa maqsadlarda ishlata olmaysiz.

GPIO6 dan GPIO11 oralig'ida ishlatiladigan pinlarning aniq soni modulingizda ishlatiladigan flesh -uskunalar turiga bog'liq. Quad IO standarti 4 barobargacha bo'lgan ma'lumot uchun 4 ta chiziqdan (jami 6 ta pin) foydalanadi. Dual IO ma'lumotlar uchun 2 qatordan foydalanadi (jami 4 ta pin) standart ma'lumotlar uchun bitta chiziqdan foydalanadi (jami 3 ta pin).

Agar sizning taxtangiz nimani talab qilayotganini aniq bilmasangiz, GPIO6 -ni GPIO11 -ga e'tiborsiz qoldirganingiz ma'qul va o'z kodingizdan ularga murojaat qilmaganingiz ma'qul.

2 -qadam: GPIO0, GPIO2 va GPIO15 pinlari

GPIO0, GPIO2 va GPIO15 pinlari
GPIO0, GPIO2 va GPIO15 pinlari

Bu pinlar chip qanday rejimda ishga tushishini aniqlaydi.

Dasturning normal ishlashi uchun GPIO0 va GPIO2 Vcc (3.3V) ga ko'tarilishi kerak va GPIO15 GND ga tortilishi kerak, har bir rezistor 2K dan 10K oralig'ida. 2K rezistor shovqinlarga yaxshi immunitet beradi. OLIMEX 2K rezistorlardan foydalanadi SparkFun 10K rezistorlardan foydalanadi. Men 3K3 rezistorlardan foydalanaman.

Ushbu kirishlar sozlamalari faqat chipni yoqish (yoki qayta o'rnatish) paytida tekshiriladi. Shundan so'ng, pinlar umumiy foydalanish uchun mavjud, lekin quyida muhokama qilinganidek, ularni yuqoriga/pastga tushirish qarshiliklari cheklangan.

3 -qadam: GPIO0, GPIO2 va GPIO15 -ni chiqish sifatida ishlatish

Chiqish sifatida GPIO0, GPIO2 va GPIO15 dan foydalanish
Chiqish sifatida GPIO0, GPIO2 va GPIO15 dan foydalanish

Yuqorida ta'kidlab o'tilganidek, bu pinlar allaqachon VCC (GPIO0 va GPIO2) yoki GPIO15 uchun GND ga ulangan qarshilikka ega bo'ladi. Bu har qanday tashqi qurilmani, masalan, o'rni yoki LED+rezistorini qanday ulash kerakligini aniqlaydi. GPIO0 va GPIO2 uchun VCC va pin o'rtasida tashqi o'rni ulanishi kerak, shunda u tortishish rezistorining harakatiga xalaqit bermaydi. Aksincha, GPIO15 ga ulangan tashqi o'rni GND va pin o'rtasida ulanishi kerak, bu esa qarshilik rezistorining harakatiga to'sqinlik qilmaydi.

Tashqi qurilmani faollashtirish uchun GPIO0 yoki GPIO2 LOW (Active LOW), GPIO15 esa HIGH (Active HIGH) bilan boshqarilishi kerak.

Yuqoridagi sxemada GPIO0 va GPIO2 va GPIO15 -ni chiqish sifatida qanday ishlatish ko'rsatilgan. Ushbu sxema kerakli tortish/tushirish rezistorlarini ham o'z ichiga oladi. E'tibor bering, GPIO0 tomonidan boshqariladigan 5V o'rni moduli opto-izolyatsiyalangan va kirish uchun alohida umumiy ulanishga ega. 5V VCCA kuchlanishining ESP8266 piniga qo'llanilmasligi muhim.

GPIO0 -ni chiqish sifatida ishlatganda qanday qayta dasturlash mumkin

E'tibor bering: dasturlash rejimiga o'tish uchun GPIO0 asoslanishi kerak. Agar siz uni eskizda baland haydab qo'ysangiz, uni erga ulash ESP8266 chipiga zarar etkazishi mumkin. Sizning kodingiz GPIO0 chiqishini boshqarganda, ESP8266-ni qayta dasturlashning xavfsiz usuli quyidagilardan iborat:- a) taxtani o'chiring b) qisqa GPIO0 dan to gngacha c) GPIO0 qisqa bo'lgani uchun dastur rejimiga o'tadigan taxtani yoqing GPIO0 dan qisqa, shuning uchun dastur ishlayotganda chiqishni qisqartirmaysiz e) taxtani qayta dasturlash f) agar kerak bo'lsa kartani quvvat bilan aylantiring.

4 -qadam: GPIO0, GPIO2 va GPIO15 -ni kirish sifatida ishlatish

Kirish sifatida GPIO0, GPIO2 va GPIO15 dan foydalanish
Kirish sifatida GPIO0, GPIO2 va GPIO15 dan foydalanish

Ushbu pinlarni kirish sifatida ishlatish biroz murakkab. ESP8266 modulini normal ish rejimida ishga tushirish uchun yuqorida aytilganidek, quvvatni yoqish va qayta o'rnatish vaqtida, bu pinlarni yuqoriga yoki pastga tortish kerak. Bu shuni anglatadiki, umuman olganda, bu pinlarga tashqi kalitni ulash mumkin emas, chunki, odatda, yoqilganda siz kalitni erga tortmasligini kafolatlay olmaysiz va shuning uchun modulning to'g'ri ishga tushishiga to'sqinlik qilasiz.

Tashqi kalitni GPIO0 yoki GPIO2 dan GND ga to'g'ridan -to'g'ri ulash emas, balki uni ESP8266 ishga tushgandan keyingina erga (chiqish sifatida) boshqa GPIO piniga ulash. Yodingizda bo'lsin, chiqish sifatida ishlatilganda, GPIO pinlari VCC yoki GND -ga qarshilik darajasi past yoki past bo'lishiga qarab juda past qarshilikka ega.

Bu erda faqat GPIO0 va GPIO2 hisobga olinadi. Ushbu usuldan foydalanib, siz ikkita (2) GPIO yordamida bitta (1) qo'shimcha kirishni olishingiz mumkin.

Shunga o'xshash usulni GPIO15 uchun boshqa GPIO pinini +VCC ga ulash uchun ishlatish mumkin, lekin bu qo'shimcha kirishga olib kelmaydi, siz boshqa GPIO pinini to'g'ridan -to'g'ri kirish sifatida ishlatishingiz mumkin.

Yuqoridagi sxema misol sifatida ESP8266-01 modulidan foydalanadi. Ushbu hiyla ishlatmasdan, agar siz UART ulanishi uchun RX/TX pinlarini ishlatayotgan bo'lsangiz, ESP8266-01-da kirish uchun foydalanish uchun bepul pinlar yo'q.

Eskizni o'rnatish () usuli faqat ESP8266 moduli ishga tushirilgandan so'ng ishga tushirilgandan so'ng, GPIO0 chiqishini LOW qilish xavfsiz bo'ladi, shuning uchun S1 uchun GPIO2 ga ulanadi. Keyin kalit sozlamalarini o'qish uchun eskizingizning boshqa joyida digitalRead (2) dan foydalanishingiz mumkin.

Xulosa

Bu qisqa eslatma GPIO0, GPIO2 va GPIO15 -ni chiqish sifatida qanday ishlatishni va GPIO0 va GPIO2 -ni birgalikda ishlatib, qo'shimcha kirishni qanday ishlatishni ko'rsatadi.

Tavsiya: