Arduino IDE и Arduino UNO първaта ни програма

Arduino Uno първата ни програма blink.ino

След първите ни стъпки в свалянето, инсталирането и конфигурирането на “Arduino IDE” следва да напишем и нашата първа програма а именно по традиция тя е “blink.ino”. Тази програма я има като пример в “Arduino IDE” “File -> Examples -> Basics -> Blink”, за да я стартираме можем просто да я извикаме от примерните програми и да я качим на Arduino платформата. Но за по добро разбиране как действа, нека я разгледаме ред по ред. Също така може да прочетете повече за “Arduino programming language” в официалния сайт на Arduino.

Arduino IDE Blink.ino

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