Мазмұны:

ESP32 код генераторы - Wifi, BLE, Bluetooth: 9 қадам
ESP32 код генераторы - Wifi, BLE, Bluetooth: 9 қадам

Бейне: ESP32 код генераторы - Wifi, BLE, Bluetooth: 9 қадам

Бейне: ESP32 код генераторы - Wifi, BLE, Bluetooth: 9 қадам
Бейне: Как использовать ESP32 WiFi и Bluetooth с Arduino IDE, полная информация с примерами и кодом. 2024, Қараша
Anonim
ESP32 код генераторы - Wifi, BLE, Bluetooth
ESP32 код генераторы - Wifi, BLE, Bluetooth

Кіріспе

ESP32 - WiFi, Bluetooth Classic және BLE (Bluetooth Low Energy) қолдайтын қос процессорлы арзан процессор. Чип бірнеше жылдар бойы жұмыс істемесе де, Arduino кодын қолдау әлі де аяқталмаған (2018 жылдың сәуіріндегідей), бірақ бұл нұсқаулық пен код генераторы BLE мен analogWrite жетіспейтін функцияларын толтырады.

Кеңес: ESP32 -де «стандартты Arduino» analogWrite функциясы жоқ. Дегенмен, бұл код генераторы оны модельдейтін кодты жасайды

Кеңес: ESP кодын орнату BLE қолдауын қамтымайды. Мұнда сипатталған орнату BLE қолдауын қамтиды

Бұл веб -бетте ESP32 -ді BLE, Bluetooth немесе WiFi қосылымдарына бағдарламалау үшін Arduino IDE -ді орнату қарастырылады. PfodDesigner осы қосылым түрлерінің әрқайсысы үшін код жасайды, сонымен қатар analogWrite жетіспейтін функциясын модельдеу үшін код жасайды.

ESP32 - WiFi, Bluetooth Classic және BLE (Bluetooth Low Energy) қолдауымен екі жақты процессорлық чип. Чип бірнеше жылдар бойы жұмыс істемесе де, Arduino кодын қолдау әлі де аяқталмаған (2018 жылдың сәуірінде), бірақ бұл оқу құралы мен код генераторы BLE мен analogWrite функцияларын толтырады. Arduino IDE BSP, Bluetooth немесе WiFi қосылымдары үшін ESP32 бағдарламалауға арналған. PfodDesigner осы қосылым түрлерінің әрқайсысы үшін код жасайды, сонымен қатар analogWrite жетіспейтін функциясын модельдеу үшін код жасайды.

Arduino қондырмасы 31 ESP32 тақтасын қолдайды. PfodDesigner қолданған кезде, сіздің арнайы тақтада бар байланыстарға сәйкес келетін түйреуіштерді таңдау қажет болады. Мұнда Sparkfun ESP32 Thing (немесе Adafruit HUZZAH32 Feather) ESP32 тақтасының мысалы ретінде пайдаланылады, бірақ сіз кодты қолдайтын 31 ESP32 тақтасының кез келгеніне қолдана аласыз.

Тегін pfodDesignerV3 Android қосымшасы басқару мәзірін (WYSIWYG) жасау үшін пайдаланылады, содан кейін BLE, WiFi немесе Bluetooth байланысы үшін ESP32 кодын жасайды. ESP32 тақтасын бағдарламалаған соң, сіз pfodApp Android қосымшасын (ақылы) пайдалана отырып, ESP32 -ге (BLE немесе WiFi немесе Bluetooth арқылы) қосылып, басқару мәзірін көрсетіп, ESP32 -ді басқара аласыз. Егер сіз pfodApp қолданғыңыз келмесе, сіз өзіңіздің WiFi, BLE (Nordic UART) немесе Bluetooth қосылымдарының негізі ретінде құрылған кодты пайдалана аласыз, себебі ол осы қосылым түрлерінің әрқайсысына ағындық (басып шығару/оқу) интерфейсін қамтамасыз етеді..

1 -қадам: Кеңес: BLE қолдауымен ESP32 үшін Arduino қолдауын орнату

2018 жылдың сәуір айындағы жағдай бойынша Arduino ESP32 қолдауын орнату басқа тақталардың көпшілігіне қатысты және жеткізілген код кітапханалары аяқталмаған. ESP32 қолдауын орнату үшін Arduino Board менеджерін пайдалана алмайсыз. Arduino -ны ESP32 бағдарламалауына орнату үшін мына қадамдарды орындаңыз. Бұл ESP32 және BLE қолдауын орнатады.

1 Arduino Sketchbook орналасу каталогының жолын табыңыз. Arduino IDE бағдарламасын ашыңыз және Файл-> Параметрлер бөлімін қараңыз, содан кейін экранның жоғарғы жағында Sketchbook орнын көресіз.

2 Осы ESP32_hardware.zip файлын жүктеп алып, Sketchbook орнына ашыңыз. Ол онда аппараттық ішкі каталог жасайды. Мүмкін емес жағдайда, сізде Sketchbook орнында аппараттық ішкі каталог бар болса, оның мазмұнын осымен біріктіріңіз.

3 Xtensa және ESP32 құралдарын орнатыңыз. Ескерту: Бұл жүктеу мен орнату ~ 0.5Gig файлдарды өңдеуге біраз уақыт кетеді. / Espressif / esp32 / tools каталогына өтіңіз, содан кейін Windows машиналары үшін get.exe файлын іске қосыңыз. Mac және Linux пайдаланушылары үшін құралдарды жүктеу үшін get.py python сценарийін іске қосыңыз. Терминалды қолданып, hardware/espressif/esp32/tools қалтасына өтіңіз. Содан кейін теріңіз: python get.py «get.py» python сценарийі Xtensa GNU құралдарын және ESP32 бағдарламалық қамтамасыз етуді дамыту жинағын (SDK) жүктейді және оларды тиісті орынға шығарады.

Сіз «құралдар» каталогында бірнеше жаңа қалталарды көруіңіз керек, оның ішінде «sdk» және «xtensa-esp32-elf».

Бұл аяқталғаннан кейін Arduino IDE жабыңыз және қайта ашыңыз, енді сізде құралдар-тақталар мәзірінен таңдау үшін ESP32 тақталарының ұзақ тізімі болуы керек. «SparkFun ESP32 затын» таңдаңыз (немесе «Adafruit ESP32 қауырсыны»)

Содан кейін ESP32 мысал файлдарының санын көру үшін File-Examples тізімін ашуға болады

Жоғарыдағы процесс бір ZIP файлына біріктірілген ESP32 және BLE қолдауына арналған github кодының суретін орнатады. PfodDesigner коды мен төмендегі мысалдар осы кітапханалардың осы нұсқасын қолданады. Егер сіз басқа нұсқалар мен қателер болуы мүмкін соңғы нұсқаны алғыңыз келсе, https://github.com/espressif/arduino-esp32 соңғы нұсқасының ZIP файлын жүктеп алып, оны аппараттық/эспресифке шығарып алып, атын өзгертіңіз. esp32 қалтасын, содан кейін BLE қолдау үшін https://github.com/espressif/arduino-esp32 соңғы нұсқасының ZIP файлын жүктеп алып, оны esp32/libraries қалтасына ашыңыз және оны ESP32_BLE_Arduino атауын өзгертіңіз (қажет болса).

2 -қадам: ESP32 үшін PfodParser кітапханаларын орнату

a) Содан кейін pfodParser.zip V3.23+ кітапханасын жүктеңіз, pfodDwgControls.zip және ESP32 WiFi үшін pfodESP32BufferedClient.zip файлдарын компьютерге жүктеңіз, оларды жұмыс үстеліне немесе басқа қалтаға оңай табыңыз.

b) Содан кейін оларды орнату үшін Arduino 1.8.2 IDE мәзірінің эскизі → Кітапхананы импорттау → Кітапхананы қосу опциясын қолданыңыз. (Егер Arduino оны орнатуға рұқсат етпесе, себебі кітапхана бұрыннан бар болса, ескі pfodParser, pfodCmdParser немесе pfodCHAP т.б. қалталарды тауып жойыңыз, содан кейін оларды импорттаңыз)

c) Arduino IDE-ді тоқтатыңыз және қайта іске қосыңыз және Файл-> Мысалдар бөлімінде сіз енді pfodParser, pfodDwgControls және pfodESP32BufferedClient кітапханаларын және көптеген мысалдарды көресіз.

3 -қадам: ESP32 үшін PfodDesignerV3 пайдалану

Тегін pfodDesignerV3 (V3291+) қолданбасы BLE, WiFi немесе Bluetooth Classic арқылы pfodApp (ақылы) арқылы қосылу үшін ESP32 чипінің кодын шығаруды қолдайды.

PfodDesignerV3 көмегімен тақталардың кең ассортиментін басқару үшін Android ұялы телефонына басқару элементтерін құру туралы көптеген нұсқаулықтар бар. PfodDesignerV3 көмегімен сіз шығуды қосатын/өшіретін немесе импульстейтін басқару элементтерін жасай аласыз, PWM арқылы шығуды басқара аласыз, кіріс немесе аналогтық мәннің күйін, журнал мен сюжеттік деректер мен ішкі мәзірлерді және тағы басқаларды көрсете аласыз.

Кеңес: ESP32 Arduino қолдауында 31 түрлі ESP32 тақталарына қолдау бар. PfodDesignerV3 барлық ESP32 енгізу -шығару түйреуіштеріне қол жеткізуге мүмкіндік береді, бірақ барлық тақталар барлық ESP32 түйреуіштерін түйреуіш түйреуіштермен байланыстырмайды. Қандай түйреуіштер қол жетімді екендігі туралы тақтаның құжаттамасын тексеріңіз және тақтаның / espressif / esp32 / variants каталогының астындағы pins_arduino.h файлын қараңыз.

pfodDesignerV3 түйреуіштер тізімінде Sparkfun ESP32 Thing пен Adafruit HUZZAH32 - ESP32 қауырсынды тақталарының қолжетімділігі мен арнайы пайдалану түйреуіштері туралы түсініктемелер бар.

Бұл мысалдар Sparkfun ESP32 Thing тақтасын қолданады және сіздің Android ұялы телефоныңыздан 5 -ші пинге қосылған борттық жарықдиодты жарықтылығын бақылау үшін жүгірткі жасайды. Егер сіз оның орнына Adafruit HUZZAH32 - ESP32 Feather тақтасын қолдансаңыз, онда Led борт 13 -істікшеге қосылады. Жоғарыда орнатылған ESP32 Arduino тірегі Arduino analogWrite -ке тікелей қолдау көрсетпейді. Оның орнына ESP32 -де кез келген шығуды басқаруға және қосуға болатын 16 PWM арнасы бар. PfodDesignerV3 арнаны бөлу және оны таңдалған шығысқа қосу үшін барлық қажетті кодты жасайды. Google Play -ден тегін pfodDesignerV3 (V3291+) орнатыңыз.

4 -қадам: ESP32 BLE код генераторы

ESP32 BLE код генераторы
ESP32 BLE код генераторы
ESP32 BLE код генераторы
ESP32 BLE код генераторы
ESP32 BLE код генераторы
ESP32 BLE код генераторы
ESP32 BLE код генераторы
ESP32 BLE код генераторы

Жаңа мәзірді іске қосыңыз

Мақсатты құрылғыны өзгерту үшін Мақсатты түймешікті басыңыз.

Бірінші мақсат ESP32 BLE болады, сондықтан Bluetooth төмен энергия түймесін басыңыз.

BLE арқылы қосылған ESP32 таңдаңыз, содан кейін негізгі экранға оралу үшін ұялы телефонның артқа түймесін басыңыз.

5 -қадам: Мәзірді құру - шақыру

Мәзірді құру - шақыру
Мәзірді құру - шақыру
Мәзірді құру - шақыру
Мәзірді құру - шақыру
Мәзірді құру - шақыру
Мәзірді құру - шақыру

Бұл қарапайым мысалда тек шақыру мен жалғыз басқару болады. Шақыру мәтінін орнату үшін «Өңдеуді өзгерту» түймесін, содан кейін «Мәтінді өңдеу» түймесін басыңыз.

Мұнда шақыру «ESP32 Led» күйіне орнатылады. Өзгертулерді сақтап, алдыңғы экранға оралу үшін құсбелгіні басыңыз. Содан кейін басқару фонының түсінің барлығын таңдау үшін Фонды орнату түсін басыңыз.

Әр басқару үшін әр түрлі түстерді таңдауға болады. Шақыру үшін қол жетімді басқа форматтар бар. Мұнда фон көк түске орнатылған, қаріп өлшемі +5 және мәтін қалың. Пішімделген шақырудың алдын ала көрінісі Өңдеу сұрауы экранының төменгі жағында көрсетіледі.

6 -қадам: Мәзірді жобалау - PWM Led Control

Мәзірді жобалау - PWM Led Control
Мәзірді жобалау - PWM Led Control
Мәзірді жобалау - PWM Led Control
Мәзірді жобалау - PWM Led Control
Мәзірді жобалау - PWM Led Control
Мәзірді жобалау - PWM Led Control
Мәзірді жобалау - PWM Led Control
Мәзірді жобалау - PWM Led Control

Негізгі мәзірге оралу үшін ұялы телефонның кері түймесін пайдаланыңыз, содан кейін басқару элементін немесе дисплей элементін қосу үшін Мәзір элементін қосу түймесін басыңыз.

PWM Output элементін таңдаңыз. Экранның жоғарғы жағында басқару элементінің алдын ала көрінісі көрсетіледі.

Кеңес: ESP32 -де «стандартты Arduino» analogWrite функциясы жоқ. Дегенмен, бұл код генераторы оны модельдейтін кодты жасайды

Негізгі мәтінді өңдеу түймесін басыңыз және «PWM параметрін» «Led» етіп өзгертіңіз, «Led» пайыздық көрсеткіштен бөлу үшін бос орынға назар аударыңыз.

Өзгертулерді сақтау үшін құсбелгі түймесін басыңыз, содан кейін «Енгізу -шығару түйініне қосылмаған» түймесіне өтіңіз.

Шығу ретінде пайдалануға болатын түйреуіштердің тізімін көрсету үшін сол түймені басыңыз.

Бұл Sparkfun ESP32 Thing және Adafruit HUZZAH32 Feather тақталарына арналған арнайы түйреуіштерді көрсетеді. Жүгірткіні басқару Sparkfun ESP32 Thing-тің борттық жарықтылығын басқаратындай етіп 5-істікті таңдаңыз. Егер сіз Adafruit HUZZAH32 қауырсын тақтасын қолдансаңыз, оның орнына 13 түйреуішті таңдаңыз. Басқа тақталар үшін тақтаның құжаттамасын және тақтаның / espressif / esp32 / нұсқалар каталогындағы pins_arduino.h файлын тексеріңіз.

Содан кейін, осы жүгірткіге кез келген басқа пішімдеу параметрлерін орнатуды аяқтағаннан кейін, ұялы телефонның артқа түймесін басып, негізгі мәзірге оралыңыз және pfodApp көрсеткенде ұялы телефоныңызда соңғы мәзір қандай болатынын көру үшін Алдын ала қарау мәзірін басыңыз. Басқару элементтері тірі, сондықтан оларды алдын ала қарауда жылжытуға болады.

7 -қадам: ESP32 кодын жасаңыз

ESP32 кодын жасаңыз
ESP32 кодын жасаңыз
ESP32 кодын жасаңыз
ESP32 кодын жасаңыз

Негізгі мәзірге оралыңыз және Кодты генерациялау түймешігіне төмен жылжыңыз.

Кодты жасау үшін «Кодты генерациялау» түймесін, содан кейін «Файлға кодты жазу» түймесін басыңыз

PfodDesignerV3 бағдарламасынан шығып, /pfodAppRawData/pfodDesignerV3.txt ішіндегі кодты ұялы телефоннан компьютерге жіберіңіз. Мұны істеу жолдары үшін pfodAppForAndroidGettingStarted.pdf қараңыз. SmarterDroid арқылы wifi файлды жіберу бағдарламасы - бұл аударым жасаудың бір әдісі.

Кодты жасау экранындағы «Мақсатты өзгерту» батырмасын қолдана отырып, сіз BLE арқылы ESP32, Bluetooth арқылы ESP32 және WiFi арқылы ESP32 арасында ауыса аласыз.

8 -қадам: Мысалдарды іске қосу

Мысалдарды іске қосу
Мысалдарды іске қосу

Кодты жасау экранындағы «Мақсатты өзгерту» батырмасын қолдана отырып, сіз BLE арқылы ESP32, Bluetooth арқылы ESP32 және WiFi арқылы ESP32 арасында ауыса аласыз.

Жоғарыда келтірілген дизайннан келесі үш мысал эскиздері осылай жасалды.

PfodESP32_BLE мысалын іске қосу

Мақсатты ESP32-ге BLE арқылы орнату pfodESP32_LED_BLE.ino кодын жасайды. Бұл эскиз File-> Examples-> pfodParser астында да бар. Бұл мысалды ашыңыз, содан кейін Sparkfun ESP32 Thing бағдарламасын (немесе басқа ESP32 тақтасын) бағдарламалағаннан кейін, оған pfodApp -та қосылым орнатыңыз (егжей -тегжейлі ақпаратты pfodAppForAndroidGettingStarted.pdf қараңыз) және қосылып, оның жарықтығын реттей аласыз. тақта басқарды.

КЕҢЕС: ESP32 BLE және Bluetooth үшін бірдей bluetooth мекен -жайын қолданады, сондықтан егер сіз бұрын pfodApp -та ESP32 Bluetooth қосылымын орнатқан болсаңыз, BLE қосылымын орнатпас бұрын pfodApp Bluetooth байланысын жоюыңыз қажет, себебі pfodApp бар қосылымдарды сүзеді. мекенжайы) қол жетімді құрылғылардың дисплей тізімінен. Сондай -ақ, ұялы телефоныңыздың параметрлерін ашып, ESP32 Bluetooth қосылымын «ұмытып», содан кейін Bluetooth жинағын өшіру үшін ұялы телефонның Bluetooth өшіріп, телефонды қайта жүктеу қажет болуы мүмкін

КЕҢЕС: Нил Колбанның ESP32_BLE_Arduino кітапханасы pdodDesigner жасаған басқа BLE мақсаттары қолданатын Sandeep Mistry BLEPeripheral кітапханасымен үйлесімді емес. ESP32 BLE эскиздерін құрастыру үшін сізге Arduino/library каталогынан BLEPeripheral каталогын (егер ол бар болса) алып тастау қажет.

PfodESP32_Bluetooth мысалын іске қосу

Мақсатты Bluetooth арқылы ESP32-ге орнату pfodESP32_LED_Bluetooth.ino кодын шығарады. Бұл эскиз File-> Examples-> pfodParser бөлімінде де бар. Бұл мысалды ашыңыз, содан кейін Sparkfun ESP32 Thing бағдарламасын (немесе басқа ESP32 тақтасын) бағдарламалаңыз. Сізге ESP32 телефонын жұптастыру қажет, пин нөмірі қажет емес. Содан кейін pfodApp -та оған қосылым орнатыңыз (егжей -тегжейлерді pfodAppForAndroidGettingStarted.pdf қараңыз) және жалғаңыз және тақтаның жарықтылығын реттей аласыз.

PfodESP32_WiFi мысалын іске қосу

Мақсатты WiFi арқылы ESP32-ге орнату pfodESP32_LED_WiFi.ino кодын жасайды. Бұл эскиз File-> Examples-> pfodParser бөлімінде де бар. Бұл мысалды ашып, желінің атын және құпия сөзін енгізіңіз және осы құрылғы үшін тұрақты IP таңдаңыз. Содан кейін, Sparkfun ESP32 Thing бағдарламасын (немесе басқа ESP32 тақтасын) бағдарламалағаннан кейін, оған pfodApp -та қосылым орнату керек (егжей -тегжейлі ақпаратты pfodAppForAndroidGettingStarted.pdf бөлімінен қараңыз) және жалғаңыз және тақтаның жарықтылығын реттей аласыз.

9 -қадам: WiFi қауіпсіздігі

Егер ESP32 -ге интернет арқылы (Wi -Fi арқылы) қосылсаңыз, онда қауіпсіздік маңызды. Сіз, мысалы, сіздің гараж есігіңізді кез келген адам ашқысы келмейді. Код генераторы мен pfodParser кітапханасы 128 биттік қауіпсіздікті қолдайды. Бұл қауіпсіздік хабарламаларды шифрламайды, бірақ рұқсат етілмеген байланыс пен бақылаудан қорғау үшін әр хабарға криптографиялық хэш қосады. Бұл қауіпсіздіктің қалай жүзеге асырылатыны туралы толық ақпарат алу үшін SipHash Secure Challenge and Response бөлімін қараңыз.

128 биттік қауіпсіздік қосылады

Құрылғыңызға Интернет арқылы кіруге рұқсаты жоқ пайдаланушылардан қорғау-құпия кодты қосу үшін «Definition pfodSecurityCode» «өңдеу» сияқты оңай. (32 он алтылық санға дейін)

Мысалы, 173057F7A706AF9BBE65D51122A14CEE қауіпсіздік кодын орнату үшін сіз#define pfodSecurityCode «173057F7A706AF9BBE65D51122A14CEE» қолданасыз, әрине, сіз өзіңіздің құпия кодты пайдалануыңыз керек. PfodApp қосылымында жеке кодты орнату сізге және басқа ешкімге қосылуға мүмкіндік бермейді.

Жақсы қауіпсіздік үшін ұзақ кездейсоқ код қажет. pfodApp 32 биттік сан ретінде 128 битке дейін қолдайды.

Жеке құпия кодты жасау үшін құпия кілт генераторын осы жерден жүктеуге болады құпия кілт генераторы осы жерден. Кездейсоқ кілттерді шығарумен қатар, бұл бағдарлама оларды QR кодтары ретінде жазады, осылайша оларды pfodApp қосылымында оңай және дәл орнатуға болады.

Сіз QR кодын басып шығарып, оны pfodDevice -ке тіркей аласыз. Содан кейін құпия сөзді оқу үшін pfodApp WiFi қосылымындағы QR сканерлеу батырмасын басыңыз.

Кілт генераторы мен QR кодын қолдану туралы егжей -тегжейлі мысал үшін 128 биттік қауіпсіздігі бар қарапайым WiFi/Arduino pfodDevice ™ қараңыз.

Қорытынды

Бұл оқу құралы ESP32 бағдарламалау үшін Arduino IDE қалай орнату керектігін көрсетті. Содан кейін ол ақысыз pfodDesigner қосымшасын пайдаланып, BLE, Bluetooth немесе WiFi арқылы ESP32 -ге қосылу үшін борттық жарықдиодты және генерацияланған кодтың жарықтығын басқаратын мәзір құрды. Егер сіз pfodApp apppfodApp қосымшасы арқылы қосылсаңыз, сіз жасаған мәзірді көресіз және жүгірткі арқылы жарықдиодты басқара аласыз. PfodDesigner барлық Arduino кодын жасайды, соның ішінде Arduino analogWrite модельдеу. Arduino кодтау қажет емес. PfodApp барлық Android жағына қамқорлық жасайды, Android кодтау қажет емес.

Ұсынылған: