Arduino първа връзка. Инсталиране и конфигуриране на Arduino IDE за Windows

По принцип той е универсален и върху него могат да се реализират огромен брой проекти.

Да започваме!

На първо място, трябва да изтеглим и инсталираме средата за разработка с вградени драйвери, това може да стане от официалния уебсайт на Arduino.cc или от връзката. След това можете да свържете платката към компютъра чрез usb проводниккойто най-често идва в комплекта, или чрез всеки подходящ. Arduino използва USB B, няма нищо особено в него. Ако всичко е направено правилно и платката работи, Windows ще намери ново устройство и ще го инсталира сам, след което на платката ще светне светодиодът, означен като ON или PWR.

Сега можете да отворите Arduino ide и прозорецът на редактора веднага ще се появи пред нас.1) Прозорецът на редактора е мястото, където ще пишем кода.

2) Тук ще се покаже прозорец за състояние, грешки и друга информация за нашата програма и процеса на качване на фърмуера на платката.

3) Лента с инструменти и др.

Между другото, ide поддържа руския език, което трябва да помогне за неговото развитие. Сега нека проверим дали всичко е наред и отидете в раздела Инструменти -> Табла. Там нашата дъска трябва незабавно да бъде избрана:


Ако не, изберете го ръчно.

Сега той ще се опита да флашне нашата платка с тестов фърмуер, за това отиваме на File -> examples -> Basics -> Blink. Коментарите и текстът на програмата се появиха веднага в прозореца на редактора. Коментарите винаги се намират между тагове */ или c// и могат да бъдат премахнати без никакви проблеми, те няма да повлияят по никакъв начин на работата на програмата и вече няма да пречат да се концентрирате върху основното нещо.

След това ще остане следният код:

C++

void setup() ( pinMode(13, OUTPUT); ) void loop() ( digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); )

void setup()(

pinMode(13, ИЗХОД) ;

void loop()(

Ако получите грешка: Има проблем с изтеглянето на дъската, тогава не се отчайвайте, това е лесно решение. За да направите това, отидете на Инструменти -> Порт -> и там избираме порта, до който Arduino / Genuino Uno е изписано в скоби и опитайте да флашнете контролера отново. Ако нещо не работи, пишете в коментарите, ще го разберем.

Нека сега да разберем какво сме излели в arduino.

void setup() ( )

Средата за разработка генерира тази част от кода за нас сама, тук, между фигурните скоби, входовете се инициализират, изходът на платката, в нашия случай, казва pinMode (13, OUTPUT); Това означава, че присвояваме пин 13 на платката, към която е свързан светодиодът (за който говорихме в миналата статия) към изхода.

Тази част от кода също се генерира автоматично, между фигурните скоби е написан кодът, който нашата програма директно ще изпълнява за неопределено време. Тоест това е безкраен цикъл. Пише digitalWrite(13, HIGH); , което на руски означава подаване на 5 волта към пин 13, това действие светва светодиода.

забавяне (1000); Това забавяне спира изпълнението на следващата инструкция за 1000 мили секунди (1 секунда).

digitalWrite(13, LOW); издърпва 13 щифта към земята, на руски премахва 5 волта, което води до изчезване на светодиода.

И тъй като void loop() е безкраен цикъл, светлината на Arduino ще мига безкрайно!

забавлявайки се с голи Ардуино платкане толкова забавно, колкото бихме искали, поради факта, че само 1 светодиод е инсталиран на платката и няма нито един бутон, но това не означава, че мигането на светодиода е всичко, което можем! Да светне и да гасне по команда от компютъра!

За да направим това, ще трябва да напишем фърмуера за arduino и да използваме порт монитора за теста, след което ще напишем програма на C #, но това ще бъде в следващата статия.

Или по-скоро неговият китайски аналог.

Съществената разлика между китайския аналог и оригинала е неговата цена. Оригинален Arduino UNOв момента на официалния сайт струва $24.95, докато китайският аналог с доставка ми струваше под $3 (8 пъти по-евтин). По-подробно сравнение на оригинала с неговия аналог ще бъде в следващата статия, но сега, за да не се отдалечаваме от основните цели, нека да започнем.



Свързване към компютър и инсталиране на драйвера.

Поради факта, че в този китайски аналог на Arduino се използва чип за свързване към USB CH340G, предоставените драйвери не са подходящи за оригиналния Arduino и техните аналози, които съдържат микросхема ATMEGA16U2.


Свързваме платформата Arduino към компютъра чрез USB кабелкъм които са свързани принтери. Светодиодът на платката ще светне. НА". Ново устройство ще се появи в диспечера на устройствата " USB2.0-сериен". Трябва да инсталирате драйвери, ще работим в примера на Windows.

Изтеглете архива, разопаковайте и стартирайте файла CH341SER.EXE. Избирам ИНСТАЛИРАЙ.


Светодиодът ще мига по време на инсталирането на драйвера. RX, след инсталирането ще се появи съответно съобщение, щракнете върху " Добре".

Ново устройство ще се появи в диспечера на устройствата" USB-сериен CH340". В моя случай устройството е свързано към порта COM7, всеки може да има всеки друг номер на порт, основното е да го запомните за бъдеща работа.

Първа скица.

Програмата Arduino се нарича скица. За да напишете скица на Arduino, трябва да го инсталирате на компютър. сряда Разработка на Arduino . Изтеглете най-новата версия и разопаковайте. Стартиране на средата за разработка с файл arduino.exe.

Програмата по подразбиране, заредена с руски интерфейс.

За да изберете друг език, използвайте елемента от менюто " Файл" - "Настройки".

в списъка" Език на редактора" можете да изберете всеки друг език, щракнете върху " Добре" и рестартирайте средата за разработка. Съставът включва беларуски, украински и други езици.


Трябва също така да проверите дали платформата Arduino е избрана правилно, за това отиваме на " Инструменти" – "Плащане:„Избрах Anduino UNO правилно по подразбиране, ако имате нещо друго, изберете вашата платформа от списъка.


Също така трябва да изберете правилния порт, към който е свързана нашата платформа. За да направя това, по време на инсталирането на драйвера обърнах внимание на това (трябва да погледнете порта в диспечера на устройствата). В моя случай това COM7. Сега в " Инструменти" - "Порт:"трябва да посочите правилния порт.

Сега нека се опитаме да стартираме нашата първа скица на Arduino, която ще мига светодиода.

Тази версия на средата за разработка вече има колекция от прости скици, сред които е нашата скица.
За да направите това, отидете на " Файл" - "Мостри" - "01. Основи" – "Мигайте".

Програмният код ще се отвори в нов прозорец. Сега нека подготвим светодиода за нашата програма. На много платки, като моята, желаният светодиод вече беше запоен заедно с останалите радио компоненти ...


Но може да има платки, които нямат този светодиод, в който случай ще трябва да го свържете през щифтовете на платката. Нека вземем най-обикновен цветен светодиод и го свържем чрез ограничителен резистор 220Ohm - 1Kom, към щифтовете на платката 13 и GND(В процеса на свързване на светодиода към Arduino се препоръчва да изключите USB кабела).


Когато всичко е готово, остава да изтеглите програмата за мигане на светодиода в микроконтролера. В средата за разработчици щракнете върху бутона " натоварване“, за да качите скицата в Anduino.

След успешното зареждане на скицата, светодиодът ще започне да мига, в моя случай светодиодът, който беше запоен на платката, и този, който свързах към щифтовете, мигаха.

За да изключите Anduino, е достатъчно да изключите платката от USB кабела.

Тук можете да завършите първото запознаване с платформата, като се уверите, че всичко работи правилно.

Обмислете да започнете с Arduino в операционната зала Windows система. Да вземем за пример платформата Arduino Uno. При другите табла разликата е минимална.

Инсталиране на Arduino IDE

Първо трябва да инсталирате интегрираната среда за разработка Arduino на вашия компютър - Arduino IDE. Защото войни между Arduino SRL и Arduino LLC, в зависимост от модела на платформата, изберете версията Arduino IDE.

Изтеглете Arduino IDE 1.7.7- за всички платформи (стабилна версия от Arduino SRL).
Изтеглете Arduino IDE 1.6.4- за всички платформи с изключение на Arduino Leonardo ETH и Arduino M0 (стабилна версия от Arduino LLC).

Стартиране на Arduino IDE

След като изтеглите и инсталирате Arduino IDE, нека го стартираме! Трябва да се отвори прозорец като този по-долу.

Нещо се обърка?

Arduino IDE не стартира? JRE (Java Runtime Environment) вероятно не е инсталиран правилно на компютъра. Моля, вижте параграф (1) за Настройка на Arduino IDE: Инсталаторът ще свърши цялата работа по внедряването на JRE.

Свързване на Arduino към компютър

След като инсталирате Arduino IDE, е време да свържете платформата Arduino към компютъра.

Свържете Arduino към компютър чрез USB кабел. Ще видите, че светодиодът “ON” на платката се включва и светодиодът “L” ще започне да мига. Това означава, че захранването се подава към платката и микроконтролера Arduino започнаизпълнете фабрично програмираната програма “Blink” (мигане на светодиода).

За да конфигурираме Arduino IDE да работи с конкретен Arduino, трябва да знаем какъв номер на COM порт компютърът е присвоил на тази платформа. За да направите това, отидете в "Диспечер на устройства" на Windows и отворете раздела "Портове (COM и LPT)". Трябва да видим следната картина:


Това означава, че операционната система е разпознала нашата платка Arduino като COM порт, избрала е правилния драйвер за него и е присвоила номер 2 на този COM порт.Ако свържем друга платка Arduino към компютъра, операционната система ще й присвои различен номер . Ето защо, ако имате няколко платки Arduino, е много важно да не се бъркате с номерата на COM портовете.

Нещо се обърка?

Ако след Arduino връзкикъм компютъра, не се появяват нови устройства в диспечера на устройствата, това може да се дължи на една от причините:
Дефектен USB кабел или порт
Блокиране от операционната система
Дефектен ардуино платка

Настройване на Arduino IDE за работа с Arduino

Сега трябва да кажем на Arduino IDE, че платката, с която ще говори, е на COM порт номер 2.
За да направите това, отидете в менюто: Инструменти Порт и изберете порта "COM2". Сега Arduino IDE знае - нещо има на порта "COM2". И с това "нещо" тя скоро ще трябва да общува.

За да няма съмнения в Arduino IDE, трябва да кажем на Arduino IDE с коя платка ще работим. За да направите това, отидете в менюто: Tools Board и изберете платката "Arduino Uno".


Сега Arduino IDE знае всичко необходимо за флашване на Arduino.

Нещо се обърка?

Празен ли е списъкът със серийни портове? Така че Arduino не е свързан правилно. Върнете се към стъпка (3), за да отстраните грешки във връзката.
Arduino IDE е невероятно бавен при навигация в менюта? Деактивирайте всички външни "Bluetooth Serial" устройства в Device Manager. Например виртуално устройство за свързване мобилен телефонпрез Bluetooth може да причини това поведение.

Средата е конфигурирана, платката е свързана. Сега можете да продължите с качването на скицата.
Arduino IDE съдържа много готови примери, в които можете бързо да надникнете в решението на всеки проблем. В него има и прост пример за "Blink". Нека го изберем.


Нека променим малко кода, за да видим разликата с фабрично мигащия светодиод.
Вместо ред:

Пълна версия на кода:

void setup()
{
// задаване на пин 13 за излизане от режим
pinMode(13, ИЗХОД);
}

void loop()
{
// прилагаме към пин 13 "висок сигнал"
digitalWrite(13, HIGH);

// изчакайте 100 милисекунди
забавяне (100);

// прилагане на пин 13 "нисък сигнал"
digitalWrite(13, LOW);

// изчакайте 100 милисекунди
забавяне (100);
}

Светодиодът "L" сега трябва да мига и изключва на всеки 100 милисекунди. Това е 10 пъти по-бързо от фабричната версия. Нека качим нашата скица в Arduino и да видим дали е вярно?

След зареждане светодиодът ще започне да мига по-бързо. Това означава, че всичко се получи. Сега можете спокойно да преминете към „Експерименти“

Нещо се обърка?

Зареждането води до грешка като avrdude: stk500_get sync(): not in sync: resp = 0x00? Това означава, че Arduino е конфигуриран неправилно. Върнете се към предишните стъпки, за да се уверите, че устройството е разпознато от операционната система и че правилните настройки за COM порта и модела на платката са зададени в Arduino IDE.

коментари:

Ядрото на платформата Arduino е микроконтролен чип, известен като ATmega328.

ATmega328 всъщност е 8-битов компютър във всички отношения: след като бъде включен, неговият процесор зарежда байт от дадено място в паметта и го интерпретира като команда. Какво следва след това зависи от стойността на този байт. Само за разлика от познатите ни компютри, ATmega328 не работи операционна система: Използването на ресурси е под пълен контрол на програмиста. Не можем да разчитаме на операционна система, която може да разпредели неправилно паметта, да я препълни или да доведе до други последствия, нежелани за прецизна автоматична система. Освен това процесорът може да работи само по една задача в даден момент (вероятно знаете, че всички процесори работят по този начин, но операционната система разпределя работното време на различни задачи по такъв начин, че изглежда, че няколко програми на вашия компютър са работещи по едно и също време).

Новият Arduino има напълно празна памет, следователно първият байт, обработен от процесора, има стойност нула: „Без операция“. Преди с помощта на Arduinoтрябва да заредите изпълнима програма в паметта му, т.е. поредица от битове, първият от които се интерпретира като команда и се изпълнява. Ако командата се нуждае от параметри за изпълнение, те се вземат от следващите байтове памет. След изпълнение на командата, процесорът зарежда получения байт в паметта и го интерпретира като команда. Ако изключите Arduino, паметта не се изтрива. Последователността от заредени в него байтове се съхранява в енергонезависима памет, така че когато го включите отново, програмата започва отново отначало.

Честотата на процесорните операции се задава от 16 MHz тактов генератор. Захранването може да се извърши през USB конектора. Да работиш без Arduino USB захранваненеобходимо е отделно захранване от 7 до 12 V (това напрежение се нормализира до необходимите нива от вграден регулатор, така че просто се нуждаете от евтино захранване за това). На борда на потребителя са достъпни и двете нива на напрежение от 5V и 3,3V, от които може да се изтегли максимум 50mA ток.

Arduino паметта се състои от три вида: флаш памет, където програмата се съхранява 32 KB; RAM(SRAM) 2 KB, където процесорът съхранява и презаписва променливите, използвани в програмата; и памет само за четене (EEP-ROM) от 1 KB, където програмистът може да съхранява данни, които трябва да останат при рестартиране на контролера (като флаш памет, където се съхранява програмата). В сравнение с днешните компютри, които обработват поне няколко гигабайта, 35 kb изглеждат смешни, но всъщност са достатъчни за повечето цели. Поради липсата на операционна система, използването на паметта е изцяло ваша отговорност: ако възникне препълване на паметта или се осъществи достъп до несъществуващо място в паметта, вашата програма може да се държи непредвидимо и това е доста трудно да се проследи по време на отстраняване на грешки. Винаги трябва да държите броя на променливите под контрол във вашата програма.

Процесорът ATmega328 е свързан към 14 дискретни I/O порта (номерирани от 0 до 13), 6 аналогови входа и USB порт. Дискретният I/O е електрическа връзка, което може да има две булеви състояния: 1 и 0, или TRUE и FALSE, или, както в Синтаксис на Arduino, НИСКО и ВИСОКО. Ако сигналът е в НИСКА стойност, съответният щифт има нулев потенциал от 0 V - тоест свързан към общ проводник. Ако сигналът е ВИСОК, тогава нивото на напрежението между този щифт и земята е 5 V.

Пинове 0 и 1 се използват за серийно приемане и предаване на данни: чрез тях платката Arduino може да комуникира с модули (щитове), прикрепени към нея, използвайки серийния протокол. Серийните протоколи са комуникационни протоколи, при които всеки бит се предава/получава последователно един след друг. Изводи 2 и 3 също могат да се използват като прекъсвания. Прекъсването е електрически сигнал на цифров вход, който прекъсва текущата програма на процесора, когато възникне дадено логическо състояние. Прекъсванията съществуват и в процесорите на конвенционалните компютри. След като възникне прекъсване, процесорът съхранява състоянието си в паметта и забавя изпълнението на програмата, преминавайки към изпълнението на манипулатор на прекъсване: кратка част от програмния код, необходима за обслужване на прекъсването. След завършване процесорът възобновява състоянието, което е имал преди пристигането на прекъсването, и възобновява изпълнението на програмата.

Пинове 3, 5, 6, 9, 10 и 11 могат да се използват като PWM изходи и имат някои аналогови настройки. Съответно клетките на паметта им съдържат стойности между 0 и 255.

Фиг. 1 Arduino UNO, както изглежда отгоре и отдолу. Обърнете внимание на картата на Италия на гърба.

Пин 13 също е свързан към светодиода на платката. Когато сигналът е НИСЪК, светодиодът е изключен, а ако сигналът е ВИСОК, светодиодът свети.

В допълнение към стандартната употреба като цифрови I/O, щифтове 10, 11, 12 и 13 осигуряват възможност за комуникация с външни периферни устройства.

Аналоговите входове са обозначени с A0 ... A5: всеки от тях има цифрова резолюция от 10 бита,

тоест, те преобразуват всяко напрежение между 0 и 5V в число между 0 и 1023, което може да бъде достъпно в паметта.

Всички платформи са монтирани върху дъска с размери 60,6 mm × 53,4 mm и тегло не повече от 25 g (фиг. 1).

Платките имат и USB A/B конектори, с които можете да ги свържете към компютър за комуникация. USB връзката също осигурява захранване на Arduino, когато е свързан към компютър, така че не се нуждаете от външен източник на захранване, за да започнете.

програма

Програмата Arduino, както всяка друга програма за процесора, е последователност от битове на машинен език. За да улесни живота на програмистите, екипът на Arduino разработи език за програмиране високо ниво, компилатор и фърмуерен инструмент за изливане на машинен код в паметта на Arduino.

Всички тези инструменти са включени в една програма IDE (интегрирана среда за разработка), безплатна

за изтегляне от уебсайта на Arduino: изберете операционната система на вашия компютър и изтеглете програмата. Изглежда точно като повечето обикновени компютърни програми. Има няколко раздела в различни прозорци. Един от тези прозорци се използва за редактиране на програмата. На жаргон на Arduino се нарича скица. Скиците са написани на опростен C++.


Фиг. 2 Програмата Arduino се появява като прозорец, в който можете да въведете текста на програмата, който просто се нарича скица.

Можете да компилирате вашата скица до Програма Ардуино(Фиг. 2), като щракнете върху бутона Проверка в горния ляв ъгъл на прозореца: процесът на компилация превежда програмата C ++ в съответните машинни кодове на процесора ATmega328. Веднъж компилиран, изпълнимият скеч може да бъде качен в паметта на Arduino чрез USB кабел чрез натискане на бутона Качване. Може да се наложи да изберете подходящия COM порт от менюто, ако има повече от един наличен. Зареждането на скица винаги кара първо да стартира компилатора. Скицата започва веднага след приключване на изтеглянето.

Допълнителни функции се добавят към основния език с помощта на външни библиотеки, разработени от екипа на Arduino или трети страни. Библиотеките могат да бъдат включени в изпълнимия код, като изберете съответния елемент от менюто. Ако е необходимо, добавянето на библиотека автоматично ще добави редове към скицата, съобщавайки на компилатора за новия синтаксис.