Мазмұны:

ESP8266 MicroPython -ды бастау: 10 қадам (суреттермен)
ESP8266 MicroPython -ды бастау: 10 қадам (суреттермен)
Anonim
ESP8266 -де MicroPython -ды бастау
ESP8266 -де MicroPython -ды бастау

C/C ++ бағдарламалау тілімен бірге Arduino IDE-ді қолданудың қарапайым әдісінен гөрі ESP8266 негізіндегі тақталарды бағдарламалаудың басқа әдісін қалайсыз ба?

Бұл оқулықта біз MicroPython көмегімен ESP8266 тақтасын кімнің конфигурациялауы мен басқаратынын білеміз.

ҚҰРУ УАҚЫТЫ: 60 МИНУТ ҚИЫНДЫҚ: РЕЙТИНГ: Оңай

1 -қадам: MicroPython дегеніміз не?

MicorPython - бұл ESP8266 модулін бағдарламалау үшін қолдануға болатын көптеген бағдарламалау тілдерінің бірі. Бұл Python 3 бағдарламалау тілінің қарапайым және жылдам нұсқасы және дәстүрлі бағдарламалау тілдерінен бірнеше артықшылықтары бар, мысалы, С және С ++.

MicroPython мүмкіндігінше қалыпты Python -мен үйлесімді етіп жасалған. Онда Python компиляторы мен жұмыс уақыты бар және REPL (Read-Eval-Print Loop) деп аталатын интерактивті шақыруды қамтамасыз етеді.

MicorPython бірнеше түрлі микроконтроллерлерді қолдауға арналған. Бірақ бұл оқулық үшін мен тек бір модельмен жұмыс жасаймын: ESP8266 негізіндегі тақта (NodeMCU). Бір чиппен сатып алуға болатын бірнеше түрлі тақталар бар екенін ескеріңіз.

Оқу және ресурстар:

MicroPython

NodeMCU

2 -қадам: талаптар

Талаптар
Талаптар
Талаптар
Талаптар
Талаптар
Талаптар
Талаптар
Талаптар

Бұл оқулықты орындау үшін сізге тек Python -мен кодтаудың қарапайым тәжірибесі қажет, микроконтроллерлер, электроника немесе тіпті MicroPython туралы бұрын білудің қажеті жоқ.

Сондай -ақ, сізге тегін USB порты бар Windows, Mac немесе Linux компьютері қажет болады, себебі оны бағдарламалау үшін компьютерге микроконтроллер қосылады.

Қажетті бөлшектер:

1 x NodeMCU (немесе басқа ESP8266 негізіндегі тақта)

1 x Қызыл 5мм жарық диоды

1 x 220Ω 1/4 Вт резистор

1 x 10KΩ айналмалы потенциометр

1 x Нан тақтасы

1 x USB - MicroUSB кабелі

Jumper Wires.

3-қадам: Неліктен ESP8266 негізіндегі тақта?

Неліктен ESP8266 негізіндегі тақта?
Неліктен ESP8266 негізіндегі тақта?

ESP8266 -дан максималды пайда алудың бір жолы - MicroPython. Сонымен қатар, ESP8266 модулі - MicroPython -ды қолдануды үйренетін ең жақсы платформалардың бірі. Бұл ESP8266 MicroPython бағдарламалау тілінің барлық аспектілерін тексеруге мүмкіндік беретін қарапайым GPIO пин басқару функцияларын, сондай -ақ сымсыз функционалдылықты қамтамасыз етеді.

ESP8266 чипі ашық көзді дамыту индустриясында танымал. Әр түрлі өндірушілердің ESP8266 чипін қолданатын көптеген даму тақталары бар. MicroPython сол тақталардың көпшілігінде жұмыс істей алатын, мүмкіндігінше шектеулері жоқ жалпы портты қамтамасыз етуге арналған. Порт Adafruit Feather HUZZAH тақтасына негізделген Басқа ESP8266 тақталарын пайдаланған кезде, олардың схемалары мен деректер кестелерін тексеріп, олардың Adafruit Feather HUZZAH тақтасынан айырмашылығын анықтауға болады. Осылайша, сіз кодтың айырмашылығын ескере аласыз.

Оқу және ресурстар:

ESP8266

Adafruit қауырсыны HUZZAH

4 -қадам: компьютерді реттеу

Компьютерді баптау
Компьютерді баптау
Компьютерді баптау
Компьютерді баптау
Компьютерді баптау
Компьютерді баптау
Компьютерді баптау
Компьютерді баптау

ESP8266 тақтасын бағдарламалау үшін MicroPython бағдарламасын қолданар алдында бірнеше параметрлерді орнату қажет, біз бұл қадамда орнату процесін өтетін боламыз. Осылайша сіз MicroPython -мен қолданылатын ESP8266 тақтасын қалай конфигурациялау керектігін білесіз.

Дайындалу

Бұл қадамнан 6 -қадамға дейін сізге тек ESP8266 мен USB кабелі қажет. ESP8266 тақтасын компьютерге қосыңыз.

Мұны қалай…

1 -ҚАДАМ: Құрылғы драйверлерін орнатыңыз

Егер сізде Linux компьютері болса, онда микроконтроллерге драйверлерді тану үшін ешқандай құрылғы драйверлерін орнатудың қажеті жоқ, бірақ сізде Mac немесе Windows машинасы болса, компьютерге микроконтроллерді тануға рұқсат беру үшін драйвер қажет. сериялық құрылғы ретінде.

www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.

2 -ҚАДАМ: Python орнатыңыз

ESP8266 -мен байланысу үшін қолданылатын құралдар Python -да жазылған, сондықтан компьютерге Python орнату қажет.

Егер сіздің операциялық жүйеде алдын ала оралған Python қамтамасыз етілмесе, https://python.org сайтына кіріп, кез келген қолдау көрсетілетін операциялық жүйенің ресми нұсқасын жүктеуге болады.

3 -ҚАДАМ: esptool мен rshell орнатыңыз

Pip көмегімен тақтаны басқаруға көмектесетін екі пакетті орнатыңыз, бұл үшін терминалды ашып, іске қосыңыз

pip esptool rshell орнатыңыз

4 -ҚАДАМ: MicroPython жүктеу

Ең соңғы MicroPython.bin микробағдарламасын мына сілтемеден жүктеп алыңыз:

Мен мұны жазған кезде, қазіргі нұсқа 1.11, ал микробағдарлама файлы esp8266-20190529-v1.11.bin деп аталады

Сіз мұны жасаған кезде сіз жаңа шығарылым таба аласыз.

5 -қадам: MicroPython жыпылықтауы Esptool.py көмегімен

Esptool.py көмегімен жыпылықтайтын MicroPython
Esptool.py көмегімен жыпылықтайтын MicroPython
Esptool.py көмегімен жыпылықтайтын MicroPython
Esptool.py көмегімен жыпылықтайтын MicroPython

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

. Bin файлын орналастырған жерге өтіңіз. Жарқылды өшіру үшін esptool.py пайдаланыңыз.

Linux үшін:

esptool.py --port /dev /ttyUSB0 erase_flash

Windows үшін:

esptool.py -COM3 erase_flash портын енгізіңіз

Пәрмендегі сериялық портты ESP8266 тақтасы қосылған сериялық портқа өзгерту қажет болуы мүмкін. Егер сіз ESP8266 сериялық порт нөмірін білмесеңіз, Arduino IDE -де тексере аласыз. IDE ашыңыз, содан кейін Tools | түймесін басыңыз Порттар. Сіз онда ESP8266 тақтасының сериялық портын көресіз. (/Dev/ttyUSB0) пәрменіндегі сериялық портты тақтаның сериялық портымен ауыстырыңыз.

Енді тақта толығымен жойылады, сіз жаңа жүктеген MicroPython конструкциясын жыпылықтай аласыз, бұл esptool.py пәрменімен де орындалады:

esptool.py --port /dev /ttyUSB0 --baud 460800 write_flash 0 esp8266-20190529-v1.11.bin

Бұл команда MicroPython.bin файлының мазмұнын 0 мекен -жайы бойынша тақтаға жазады.

Пәрмендегі (esp82688-2019-080529-v1.11.bin) микробағдарлама.bin файлының атауын сіз жүктеген микробағдарламалық жасақтамаға өзгертіңіз.

Микробағдарлама ESP8266 тақтасына сәтті орнатылғаннан кейін, сіз сымсыз қосылым (UART сериялық порты) немесе ойластырылған WiFi арқылы тақтадағы REPL -ке қол жеткізе аласыз.

6 -қадам: MicroPython REPL көмегімен Rshell көмегімен

Rshell көмегімен MicroPython REPL пайдалану
Rshell көмегімен MicroPython REPL пайдалану
Rshell көмегімен MicroPython REPL пайдалану
Rshell көмегімен MicroPython REPL пайдалану

Енді сіз MicroPython бағдарламасын ESP8266 тақтасында бастауға дайынсыз.

Мен сізге тақтада жұмыс істейтін Python шақыруына қалай қосылу керектігін көрсетемін. Бұл REPL деп аталады, ол «Read-Eval-Print-Loop» дегенді білдіреді. Бұл кәдімгі Python аудармашысымен жұмыс кезінде көруге болатын әдеттегі Python шақыруы, бірақ бұл жолы ол сіздің тақтаңызда жұмыс істейді және онымен өзара әрекеттесу үшін сіз компьютерге сериялық қосылымды қолданасыз.. Дайын ба?

Тақтаға қосылу және REPL сеансын ашу үшін келесі пәрменді енгізіңіз:

rshell -порт

Бұл пәрмен сізді rshell шақыруына әкеледі. Жоғарыдағы суретті қараңыз.

Егер сіз Windows -те осы оқулықты ұстанатын болсаңыз, rshell -де Windows -те жұмыс істеген кезде ақаулардың болғанын ескеріңіз.

Сондықтан бұл түрді түзету үшін:

rshell -a -порт COM3

Бұл шақырудан сіз микроконтроллер тақтасына қатысты басқару тапсырмаларын орындай аласыз, сонымен қатар нақты уақыт режимінде тақтамен өзара әрекеттесу үшін пайдалануға болатын Python REPL бағдарламасын бастай аласыз.

жауап беру

Барлығы жұмыс істейтініне көз жеткізу үшін қарапайым Python сөйлемін теріңіз:

басып шығару («Сәлем әлемі»)

7 -қадам: MicroPython көмегімен түйреуіштерді басқару

MicroPython көмегімен түйреуіштерді басқару
MicroPython көмегімен түйреуіштерді басқару
MicroPython көмегімен түйреуіштерді басқару
MicroPython көмегімен түйреуіштерді басқару

Бұл қадамда біз ESP8266 түйреуіштерін MicroPython көмегімен басқаруды үйренеміз. Мұны істеу үшін біз ESP8266 тақтасы GPIO түйреуішіне қосылған жарықдиодты күйді ауыстыратын қондырғы ойлап табамыз. Бұл сізге MicoPython көмегімен цифрлық шығуды қалай басқаруға болатынын түсінуге көмектеседі.

Дайындалу

Бұл қадамды орындау үшін сізге келесі заттар қажет:

1 x NodeMCU

1 x Қызыл 5мм жарық диоды

1 x 220 Ω резистор

1 x Нан тақтасы

Jumper Wires

Құрылыс

Жарықдиодты тақтаға орнатудан бастаңыз. 220 Ω резистордың бір ұшын светодиодтың оң аяғына жалғаңыз (жарық диодтың оң аяғы әдетте екі аяқтың бірінен биік болады). Резистордың екінші ұшын ESP8266 тақтасының D1 түйреуішіне қосыңыз. Содан кейін светодиодтың теріс аяғын ESP8266 тақтасының GND істігіне қосыңыз. Байланыс жоғарыдағы диаграммада көрсетілгендей.

Орнату аяқталғаннан кейін ESP8266 тақтасын компьютерге USB кабелі арқылы қосыңыз.

Мұны қалай…

REPL -ге келесі кодты енгізіңіз:

1 секунд сайын жарық диоды

def blink (pin = 5, time = 1) # жыпылықтау функциясы әдепкі бойынша pin = 5, time = 1s импорттық машина # машина модулі түйіннің конфигурациясы мен режимін импорттық ұйқыдан ұстайды (led_pin, machine. PIN. OUT) # Жарық диодты OUTPUT күйінде конфигурациялаңыз, ал «True» режимінде: # мәңгілікке жарықдиодты қосыңыз. мәні (1) # жарықдиодты жоғары ұйқы күйіне орнатыңыз (уақыт) # әдепкі бойынша 1 секунд күтіңіз. шамасы (0) төмен ұйқыға (уақыт) # әдепкі бойынша 1 секунд күтіңіз

Бұл кодты тексеру үшін RPEL сеансына blink () теріңіз, бұл GPIO5 -ке қосылған жарық диодты әр 1 секунд сайын жыпылықтайды.

Қоңырау шалу арқылы түйреуішті және/немесе уақытты өзгертуге болады:

жыпылықтау (түйреуіш =, уақыт =)

Жұмыс кодынан шығу үшін ctrl+c пернелерін басыңыз.

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

Егер сіз тоқтап қалсаңыз, бейнені қараңыз.

8 -қадам: жарық диодты өшіру

Жарық диодының өшуі
Жарық диодының өшуі
Жарық диодының өшуі
Жарық диодының өшуі

Бұл қадамда біз айналмалы потенциометр көмегімен жарық диодты жарықтылықты реттеуді үйренеміз. Біз импульстік ені модуляциясы (PWM) деп аталатын техниканы қолданамыз, ол бізге жарық диодты 256 параметрге дейін өшіруге мүмкіндік береді.

Ескерту: ESP8266 барлық түйреуіштерін GPIO16 (D0) қоспағанда, PWM түйреуіші ретінде пайдалануға болады.

Дайындалу:

Бұл қадамды орындау үшін сізге келесі заттар қажет:

1 x NodeMCU

1 x Қызыл 5мм жарық диоды

1 x 50 KΩ айналмалы потенциометр.

1 x Нан тақтасы

Jumper Wires

Құрылыс

Байланыс жоғарыдағы диаграммада көрсетілгендей: Орнату аяқталғаннан кейін ESP8266 тақтасын компьютерге USB кабелі арқылы қосыңыз.

Мұны қалай…

REPL -ге келесі кодты енгізіңіз:

# Потенциометрден деректерді оқу арқылы әр 0,5 сайын жарық диоды өшеді

уақытты импорттау машинасы импорттық ұйқы led_pin = 5 # LED түйреуіші POT = машина. Нысан мен жиілікті 500 Гц -ке True күйінде орнатыңыз: LED_pwm.duty (POT.read ()) # кастрюльден мәнді алыңыз және оны жұмыс циклінің ұйқысына (0,5) орнатыңыз # 0,5 күтіңіз

Бұл потенциометрдің мәнін өзгерту арқылы GPIO 5 -ке қосылған жарықдиодты жарықтылықты өзгертеді.

Жұмыс кодынан шығу үшін ctrl+c пернелерін басыңыз.

Егер сіз тоқтап қалсаңыз, бейнені қараңыз.

9 -қадам: Бұл жерден қайдан?

Біз әзірге MicroPython-ды ESP8266 негізіндегі тақталарда қалай конфигурациялауды және іске қосуды көрдік. біз светодиодты жыпылықтау үшін түйреуіштерді қалай басқаруға болатынын білдік, содан кейін импульстік енді модуляция техникасын қолдана отырып, жарық диодты жарықтылығын бақылау үшін потенциометрді қостық.

Енді біз сенсордан деректерді оқи аламыз және оны бұлтқа жібере аламыз, сонымен қатар біз HTTP серверін жасай аламыз, онда сіз біздің деректерді қарапайым веб -бетте басып шығара аласыз және т.

Бұл бізге Интернет заттары туралы көптеген түсінік береді (IoT).

10 -қадам: Қорытынды

Міне, сізде! Барыңыз және MicroPython әлемін бағындырыңыз.

егер сізде сұрақтар болса, әрине, пікір қалдыра аласыз.

Менің жұмыстарым туралы көбірек білу үшін менің YouTube каналыма кіріңіз:

myYouTube

myGitHub

myLinkedin

Бұл нұсқаулықты оқығаныңыз үшін рахмет ^^ және жақсы күн.

Көріскенше.

Ахмед Нуира.

Ұсынылған: