![Arduino Uno първата ни програма blink.ino](http://ardudevelop.eu/wp-content/uploads/2022/10/Arduino-Uno-first-program.jpg)
След първите ни стъпки в свалянето, инсталирането и конфигурирането на “Arduino IDE” следва да напишем и нашата първа програма а именно по традиция тя е “blink.ino”. Тази програма я има като пример в “Arduino IDE” “File -> Examples -> Basics -> Blink”, за да я стартираме можем просто да я извикаме от примерните програми и да я качим на Arduino платформата. Но за по добро разбиране как действа, нека я разгледаме ред по ред. Също така може да прочетете повече за “Arduino programming language” в официалния сайт на Arduino.
![Arduino IDE Blink.ino](http://ardudevelop.eu/wp-content/uploads/2024/07/Arduino-IDE-Blink.ino_.png)
Arduino IDE и Arduino UNO първaта ни програма
int led = 13;
void setup() {
pinMode(led , OUTPUT);
}
void loop() {
digitalWrite(led , HIGH);
delay(1000);
digitalWrite(led , LOW);
delay(1000);
}
Ред първи – ( int led = 13 )
В този ред инициализираме променливата “led” физическия пин 13 на контролера. В този случай използването на променливи не е необходимо поради кратката дължина на кода, но когато изписания код е с голяма дъмжина променливите са необходими защото когато решим да променим част от него не е необходимо да обхождаме целия код за редакцията им.
Ред трети– ( void setup() { )
Void setup() представлява функция в която се стартира след започването на програмата. В нея се инициализира функцията на пиновете ( входни, изходни ), стартиране на сериина комуникация ( ако е необходима за програмата) както и задаване на стойности на пиновете ( HIGH , LOW ). Тази функция трябва да присъства в програмата дори ако не съдържа никаква информация.
Ред четири – ( pinMode(led , OUTPUT); )
Функцията “pinMode( )” привежда пин “led (пин 13) “ в изходен режим, или възможността на пина да извежда логическо ниво ( HIGH – 5v или LOW – 0v ).
Ред седем– ( void loop() { )
Следващата стъпка в програмата е void loop().Това е функция която както подсказва името и е безкрайна. В нея програмата която сме написали се прочита отново и отново като и дава възможността ако сме закачили някаква променлива периферия да прочита стойностите върнати от нея и да обновява изгодните данни.
Пери осем– ( digitalWrite(led , HIGH); )
digitalWrtite ( дигитално изписване ) е функция състояща се от два параметъра: (led) – параметър състоящ се от променливата led инициализирана към физически пин 13 на платформата. (HIGH) – параметър задаващ състояние на на променливата (led). Състоянията в функцията digitalWrite са две високо ниво(5v) и ниско ниво(0v).
Ред девет – ( delay(1000) )
delay(1000) е функция за изчакване (забавяне) на програмата от 1000 милисекунди (една секунда). Ако е необходимо може да се увеличи или намали времето на забавяне. За пример може да забавим изчакването на програмата на половин секунда като зададем параметър на закъсненето от 500 милисекунди ( delay(500) ).
Следващите няколко реда на програмата са подобни на горните, като разликата е в командата digitalWrite(led , LOW) която изключва пин 13, след което пак имаме закъснение от една секунда.
Останалата част от програмата. С това завършва и първата ни програма за Arduino. На пръв поглед тя е проста и почти безсмислена но е общоприета за основа, която е целяща да ни покаже как програма която не виждаме управлява физически предмет ( в този случай светодиод), но ако погледнем в перспектива ще ни позволи да управляваме големи и сложни машини.
На клипчето отдолу е показан реалния резултат от програмата:
Така завършваме “Arduino IDE и Arduino UNO първaта ни програма”.
В следващата статия ще разгледаме функцията “analogRead()”. Тази функция ни позволява прочитането на аналогови стойности и обръщането им в цифров вид. Линк към статията: Arduino UNO ADC read