Სარჩევი:

ESP32: შიდა დეტალები და Pinout: 11 ნაბიჯი
ESP32: შიდა დეტალები და Pinout: 11 ნაბიჯი

ვიდეო: ESP32: შიდა დეტალები და Pinout: 11 ნაბიჯი

ვიდეო: ESP32: შიდა დეტალები და Pinout: 11 ნაბიჯი
ვიდეო: #2 FLProg Basics Elements & Trigger | ESP32 NodeMCU | Arduino ვიზუალური ჩაშენებული პროგრამირება 2024, ივნისი
Anonim
Image
Image

ამ სტატიაში ჩვენ ვისაუბრებთ შიდა დეტალებზე და ESP32– ის დამაგრებაზე. მე გაჩვენებთ თუ როგორ სწორად ამოვიცნოთ ქინძისთავები მონაცემთა ფურცლის დათვალიერებისას, როგორ დავადგინოთ რომელი ქინძისთავები მუშაობს როგორც OUTPUT / INPUT, როგორ გვაქვს მიმოხილვა სენსორებისა და პერიფერიული მოწყობილობების შესახებ, რასაც ESP32 გვთავაზობს, გარდა ჩექმა ამიტომ, მე მჯერა, რომ ქვემოთ მოყვანილი ვიდეოთი, მე შემეძლება ვუპასუხო რამდენიმე კითხვას, რომელიც მე მივიღე შეტყობინებებში და კომენტარებში ESP32 მითითებების შესახებ, სხვა ინფორმაციასთან ერთად.

ნაბიჯი 1: NodeMCU ESP-WROOM-32

ESP-WROOM-32
ESP-WROOM-32

აქ ჩვენ გვაქვს PINOUT

WROOM-32, რომელიც ემსახურება კარგი მითითებას პროგრამის დაგეგმვისას. მნიშვნელოვანია ყურადღება მიაქციოთ General Purpose Input / Output (GPIO) - ს, ანუ მონაცემთა პროგრამირებადი შეყვანის და გამომავალი პორტები, რომლებიც მაინც შეიძლება იყოს AD კონვერტორი ან Touch pin, როგორიცაა GPIO4, მაგალითად. ეს ასევე ხდება Arduino– სთან, სადაც შესასვლელი და გამომავალი ქინძისთავები ასევე შეიძლება იყოს PWM.

ნაბიჯი 2: ESP-WROOM-32

ზემოთ მოცემულ სურათზე ჩვენ გვაქვს თავად ESP32. არსებობს რამდენიმე სახის ჩანართები განსხვავებული მახასიათებლებით მწარმოებლის მიხედვით.

ნაბიჯი 3: მაგრამ, რა არის ჩემთვის სწორი Pinout ჩემი ESP32– ის გამოსაყენებლად?

მაგრამ, რა არის სწორი Pinout, რომ გამოვიყენო ჩემი ESP32– ისთვის?
მაგრამ, რა არის სწორი Pinout, რომ გამოვიყენო ჩემი ESP32– ისთვის?
მაგრამ, რა არის სწორი Pinout, რომ გამოვიყენო ჩემი ESP32– ისთვის?
მაგრამ, რა არის სწორი Pinout, რომ გამოვიყენო ჩემი ESP32– ისთვის?
მაგრამ, რა არის სწორი Pinout, რომ გამოვიყენო ჩემი ESP32– ისთვის?
მაგრამ, რა არის სწორი Pinout, რომ გამოვიყენო ჩემი ESP32– ისთვის?
მაგრამ, რა არის ჩემთვის სწორი Pinout გამოსაყენებლად ჩემი ESP32– ისთვის?
მაგრამ, რა არის ჩემთვის სწორი Pinout გამოსაყენებლად ჩემი ESP32– ისთვის?

ESP32 არ არის რთული. ეს იმდენად ადვილია, რომ შეგვიძლია ვთქვათ, რომ თქვენს გარემოში დიდაქტიკური საზრუნავი არ არსებობს. თუმცა, ჩვენ გვჭირდება დიდაქტიკა, დიახ. თუ გსურთ პროგრამირება Assembler– ში, ეს ნორმალურია. მაგრამ, საინჟინრო დრო ძვირია. ასე რომ, თუ ყველაფერი, რაც ტექნოლოგიის მიმწოდებელია, მოგცემთ ინსტრუმენტს, რომელსაც დრო სჭირდება მისი მუშაობის გასაგებად, ეს ადვილად შეიძლება გახდეს თქვენთვის პრობლემა, რადგან ეს ყველაფერი გაზრდის საინჟინრო დროს, ხოლო პროდუქტი უფრო ძვირი გახდება. ეს განმარტავს ჩემს უპირატესობას მარტივ ნივთებზე, ისეთებიც, რამაც შეიძლება ჩვენი დღე გაადვილოს, რადგან დრო მნიშვნელოვანია, განსაკუთრებით დღევანდელ დატვირთულ სამყაროში.

ESP32– ზე დაბრუნებისას, მონაცემთა ცხრილში, როგორც ზემოთ მოცემულში, ჩვენ გვაქვს სწორი PIN იდენტიფიკაცია მაჩვენებლებში. ხშირად, ჩიპზე იარლიყი არ ემთხვევა ქინძისთავის რეალურ რიცხვს, რადგან ჩვენ გვაქვს სამი სიტუაცია: GPIO, სერიული ნომერი და ასევე თავად ბარათის კოდი.

როგორც ქვემოთ მოცემულ მაგალითშია ნაჩვენები, ჩვენ გვაქვს LED კავშირი ESP– ში და კონფიგურაციის სწორი რეჟიმი:

გაითვალისწინეთ, რომ ეტიკეტი არის TX2, მაგრამ ჩვენ უნდა დავიცვათ სწორი იდენტიფიკაცია, როგორც ეს წინა სურათზეა მონიშნული. ამრიგად, პინის სწორი იდენტიფიკაცია იქნება 17. სურათი გვიჩვენებს, თუ რამდენად ახლოს უნდა იყოს კოდი.

ნაბიჯი 4: შეყვანა / გამოსავალი

შეყვანა / გამოსავალი
შეყვანა / გამოსავალი

ქინძისთავებზე INPUT და OUTPUT ტესტების ჩატარებისას ჩვენ მივიღეთ შემდეგი შედეგები:

INPUT არ მუშაობდა მხოლოდ GPIO0– ზე.

OUTPUT არ მუშაობდა მხოლოდ GPIO34 და GPIO35 პინებზე, რომლებიც შესაბამისად VDET1 და VDET2.

* VDET ქინძისთავები მიეკუთვნება RTC დენის დომენს. ეს ნიშნავს, რომ ისინი შეიძლება გამოყენებულ იქნას როგორც ADC ქინძისთავები და რომ ULP-coprocessor- ს შეუძლია მათი წაკითხვა. ისინი შეიძლება იყოს მხოლოდ ჩანაწერი და არასოდეს გასასვლელი.

ნაბიჯი 5: ბლოკირების დიაგრამა

ბლოკის დიაგრამა
ბლოკის დიაგრამა

ეს დიაგრამა გვიჩვენებს, რომ ESP32– ს აქვს ორმაგი ბირთვი, ჩიპების არე, რომელიც აკონტროლებს WiFi– ს და სხვა არე, რომელიც აკონტროლებს Bluetooth– ს. მას ასევე გააჩნია დაშიფვრის აპარატურის დაჩქარება, რაც საშუალებას იძლევა დაუკავშირდეს LoRa– ს, საქალაქთაშორისო ქსელს, რომელიც იძლევა კავშირს 15 კმ – მდე ანტენის გამოყენებით. ჩვენ ასევე ვაკვირდებით საათის გენერატორს, რეალურ დროში საათს და სხვა წერტილებს, რომლებიც მოიცავს, მაგალითად, PWM, ADC, DAC, UART, SDIO, SPI და სხვა. ეს ყველაფერი ხდის მოწყობილობას საკმაოდ სრულყოფილ და ფუნქციონალურ.

ნაბიჯი 6: პერიფერიული მოწყობილობები და სენსორები

პერიფერიული მოწყობილობები და სენსორები
პერიფერიული მოწყობილობები და სენსორები

ESP32– ს აქვს 34 GPIO, რომლებიც შეიძლება მიენიჭოს სხვადასხვა ფუნქციებს, როგორიცაა:

მხოლოდ ციფრული;

ანალოგი ჩართულია (შესაძლებელია ციფრული სახით კონფიგურაცია);

Capacitive-touch- ჩართულია (შესაძლებელია ციფრული სახით კონფიგურაცია);

Და სხვა.

მნიშვნელოვანია აღინიშნოს, რომ ციფრული GPIO– ების უმრავლესობა შეიძლება იყოს კონფიგურირებული, როგორც შიდა გასაშლელი ან ჩამოსაშლელი, ან კონფიგურირებული მაღალი წინაღობისთვის. შეყვანისას მნიშვნელობის წაკითხვა შესაძლებელია რეგისტრის საშუალებით.

ნაბიჯი 7: GPIO

ანალოგური ციფრული გადამყვანი (ADC)

Esp32 აერთიანებს 12 – ბიტიან ADC– ს და მხარს უჭერს გაზომვებს 18 არხზე (ანალოგური ჩართული ქინძისთავები). ESP32- ში ULP- პროცესორი ასევე შექმნილია ძაბვის გასაზომად ძილის რეჟიმში მუშაობისას, რაც იძლევა დაბალი ენერგიის მოხმარების საშუალებას. პროცესორის გაღვიძება შესაძლებელია ბარიერის პარამეტრების და / ან სხვა გამომწვევების საშუალებით.

ციფრული ანალოგური გადამყვანი (DAC)

ორი 8 ბიტიანი DAC არხი შეიძლება გამოყენებულ იქნას ორი ციფრული სიგნალის ორ ანალოგიურ ძაბვის გამოსასვლელად. ეს ორმაგი DAC მხარს უჭერს კვების ბლოკს, როგორც შეყვანის ძაბვის მითითებას და შეუძლია სხვა სქემების მართვა. ორმაგი არხი მხარს უჭერს დამოუკიდებელ გარდაქმნებს.

ნაბიჯი 8: სენსორები

სენსორები
სენსორები
სენსორები
სენსორები

შეხების სენსორი

ESP32– ს აქვს 10 capacitive გამოვლენის GPIO, რომლებიც გამოავლენენ გამოწვეულ ცვალებადობას GPIO– სთან თითის ან სხვა საგნების შეხებისას ან მიახლოებისას.

ESP32– ს ასევე აქვს ტემპერატურის სენსორი და შიდა დარბაზის სენსორი, მაგრამ მათთან მუშაობისთვის თქვენ უნდა შეცვალოთ რეგისტრების პარამეტრები. უფრო დეტალური ინფორმაციისთვის იხილეთ ტექნიკური სახელმძღვანელო ბმულზე:

www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf

ნაბიჯი 9: დარაჯი

ESP32– ს აქვს სამი სათვალთვალო ქრონომეტრი: ერთი თითოეულ ტაიმერის ორ მოდულზე (ე.წ. პირველადი სადარაჯო ტაიმერი, ან MWDT) და ერთი RTC მოდულზე (სახელწოდებით RTC Watchdog Timer ან RWDT).

ნაბიჯი 10: Bluetooth

ბლუთუზი
ბლუთუზი
ბლუთუზი
ბლუთუზი

Bluetooth ინტერფეისი v4.2 BR / EDR და Bluetooth LE (დაბალი ენერგია)

ESP32 აერთიანებს Bluetooth კავშირის კონტროლერს და Bluetooth საბაზისო ზოლს, რომლებიც ასრულებენ ბეზბენდ პროტოკოლებს და სხვა დაბალი დონის ბმულებს, როგორიცაა მოდულაცია / დემოდულაცია, პაკეტების დამუშავება, ბიტ-ნაკადის დამუშავება, სიხშირის გამოძახილი და ა.შ.

კავშირის კონტროლერი მუშაობს სამ ძირითად მდგომარეობაში: ლოდინი, კავშირი და ყნოსვა. ის იძლევა მრავალრიცხოვან კავშირებს და სხვა ოპერაციებს, როგორიცაა გამოძიება, გვერდი და უსაფრთხო მარტივი დაწყვილება, და ამით იძლევა პიკონეტისა და სკატერნეტის საშუალებას.

ნაბიჯი 11: ჩატვირთვა

ჩექმა
ჩექმა
ჩექმა
ჩექმა

ჩამონტაჟებული USB / სერიული მრავალ განვითარების დაფაზე, esptool.py- ს შეუძლია ავტომატურად გადატვირთოს დაფა ჩატვირთვის რეჟიმში.

ESP32 შევა სერიული ჩატვირთვისას, როდესაც GPIO0 დაბალი დარჩება გადატვირთვისას. წინააღმდეგ შემთხვევაში, ის გაუშვებს პროგრამას ფლეშში.

GPIO0– ს აქვს შიდა გამყვანი რეზისტორი, ასე რომ, თუ ის კავშირის გარეშეა, ის მაღლა წავა.

ბევრი დაფა იყენებს ღილაკს "Flash" (ან "BOOT" ზოგიერთ Espressif განვითარების დაფაზე), რომელიც დაჭერისას იწვევს GPIO0 ქვევით.

GPIO2 ასევე უნდა დარჩეს დაუკავშირებელი / მცურავი.

ზემოთ მოცემულ სურათზე შეგიძლიათ ნახოთ ტესტი, რომელიც მე ჩავატარე. ESP– ის ყველა ქინძისთავზე დავაყენე ოსცილოსკოპი, რომ ვნახო რა მოხდა მისი ჩართვისას. აღმოვაჩინე, რომ როდესაც ვიღებ ქინძისთავს, ის წარმოქმნის რხევას 750 მიკროწამს, როგორც ეს ნაჩვენებია ხაზგასმულ არეში მარჯვენა მხარეს. რა შეგვიძლია ამის გაკეთება? ჩვენ გვაქვს რამოდენიმე ვარიანტი, მაგალითად, ტრანზისტორით, კარის გაფართოებით ჩართვასთან შეფერხება. მე აღვნიშნავ, რომ GPIO08 საპირისპიროა. რხევა გამოდის ზემოთ და არა ქვევით.

კიდევ ერთი დეტალი არის ის, რომ ჩვენ გვაქვს რამდენიმე ქინძისთავები, რომლებიც იწყება მაღალიდან, ხოლო სხვები დაბალიდან. ამრიგად, ეს PINOUT არის მითითება, როდესაც ESP32 ჩართულია, განსაკუთრებით მაშინ, როდესაც თქვენ მუშაობთ დატვირთვაზე, რათა გამოიწვიოთ, მაგალითად, ტრიაკი, რელე, კონტაქტორი ან რაიმე სიმძლავრე.

გირჩევთ: