![Първа програма за ESP8266 и MicroPython Blink.py](http://ardudevelop.eu/wp-content/uploads/2024/09/Първа-програма-за-ESP8266-и-MicroPython-Blink.py_.png)
Този скрипт, наречен blink.py, е основен пример за програма, изпълнена на микроконтролера ESP8266 с помощта на MicroPython. Основната идея е да включва и изключва светодиод (LED) в определен интервал от време. Това е класически пример, използван за запознаване с микроконтролерите и програмируемите платформи.
В този случай сме използвали платформа базирана на ESP8266 с OLED на самия борд. В тази статия: “Първа програма за ESP8266 и MicroPython Blink.py” сме планирали да използваме пин “D1/ GPIO5” за управление на LED диода. За да се запознаете с пин диаграмата (pinout) на тази платформа, разгледайте нашето ревю за нея: ESP8266 с OLED дисплей.
Скрипт blink.py
from machine import Pin
from time import sleep
led = Pin(5,Pin.OUT)
while True:
led.value(True) # "True" може да се замени с "1"
print("LED ON")
sleep(1)
led.value(False) # "False" може да се замени с "0"
print("LED OFF")
sleep(1)
Схема на свързване на компонентите
![Схема на ESP8266 и MicroPython Blink.py](http://ardudevelop.eu/wp-content/uploads/2024/09/Схема-на-ESP8266-и-MicroPython-Blink.py_.png)
Описание на кода
Кодът започва с импортиране на необходимите модули:
from machine import Pin
from time import sleep
- machine.Pin: Това е клас, който позволява управление на пиновете на микроконтролера. Всеки пин може да бъде настроен като вход или изход.
- time.sleep: Функцията sleep се използва за създаване на пауза в изпълнението на програмата. Времето на паузата се задава в секунди.
Следващата стъпка е конфигуриране на пина, към който е свързан LED:
led = Pin(5,Pin.OUT)
- Pin(5, Pin.OUT): Този ред настройва пин номер 5 на ESP8266 като изход. Това означава, че пинът ще подава напрежение, когато е активен.
В основния цикъл на програмата (while True:) се изпълнява последователност от включване и изключване на LED:
while True:
led.value(True) # "True" може да се замени с "1"
print("LED ON")
sleep(1)
led.value(False) # "False" може да се замени с "0"
print("LED OFF")
sleep(1)
- led.value(True): Този ред активира пина, като подава напрежение към LED, което го включва. Вместо “True”, може да се използва и числото “1″.
- print(“LED ON”): Това е опционален ред, който изписва в конзолата “LED ON” за по-лесно проследяване на състоянието на LED.
- sleep(1): Програмата спира изпълнението за 1 секунда, задържайки LED включен.
- led.value(False): Този ред деактивира пина, като спира подаването на напрежение към LED, което го изключва. Вместо “False”, може да се използва и числото “0″.
- print(“LED OFF”): Изписва в конзолата “LED OFF” за указване, че LED е изключен.
- sleep(1): Програмата отново спира за 1 секунда, задържайки LED изключен.
Заключение
Този прост пример демонстрира основите на работа с ESP8266 и MicroPython със скрипта Blink.py. Чрез контролиране на светодиод можем да разберем как да използваме пиновете на микроконтролера за изпращане на сигнали и изпълнение на различни задачи. Подобни основни концепции са важни при създаването на по-сложни проекти с ESP8266.
Ще завърша статията с препратка към сайт от който съм научил много за MicroPython. Това е този сайт.