Програмиране на микроконтролерни платки arduino freeduino

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

Разглеждат се програмирането на микроконтролерни платки Arduino/Freduino. необходими инструментии компоненти за провеждане на експерименти. Подробно са разгледани основите на програмирането на платки Ардуино, структурата на програмата, командите, операторите и функциите, вход/изход на аналогови и цифрови данни.

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

Предговор
Въведение
Глава 1. Обща информация за микроконтролери
Глава 2. Програмиране на микроконтролери
Глава 3. Кратък прегледСемейство микроконтролери Arduino
Глава 4. Платки за разширение Arduino
Глава 5. Аксесоари
Глава 6. Електронни компонентии техните свойства
Глава 7. Предварителна подготовка
Глава 8. Среда за разработка на Arduino
Глава 9: Основи на програмирането на Arduino
Глава 10. Допълнителни експерименти с Arduino
Глава 11. Автобус 1 2 C
Глава 12. Arduino и температурен сензор LM75 с 1 2 C шина
Глава 13. Порт 1 2 C разширител с PCF8574
Глава 14. Ултразвуков сензор за обхват
Глава 15. Връзка на платката Arduino с GPS
Глава 16. Серво задвижване със серво платка за Arduino
Глава 17. Дисплеи с течни кристали
ПРИЛОЖЕНИЯ

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

Основна информация по метрология и теоретични основиелектроника. Дадени са много практически препоръки: от принципи правилна организациязахранване, преди да получите информация за устройства и закупуване на компоненти във връзка с руските условия. Третото издание е допълнено с информация за популярната платформа Arduino, с която най-модерната радиоелектроника става достъпна за всеки радиолюбител.

Съдържание на книгата "Занимателна електроника"

Част 1 . Основи

Глава 1. Каква е разликата между ток и напрежение?
Глава 2. Джентълменски комплект
Глава 3. Добрият поялник е половината от успеха
Глава 4. Тригонометрична електроника

Глава 5. Електроника без полупроводници
Глава 6. Изобретението, което шокира света
Глава 7. Зашеметяващото разнообразие на електронния свят

Част 2: Аналогови схеми

Глава 8. Аудио усилвателбез микросхеми
Глава 9 Правилно хранене- гаранция за здраве
Глава 10. Тежка категория
Глава 11. Резени, превърнали се в чипс
Глава 12. Най-универсалната
Глава 13. Как се измерва температурата?

Част 3. Дигитална ера

Глава 14. На прага на дигиталната ера
Глава 15. Математическа електроника, или играта на квадрати
Глава 16. Логически устройства
Глава 17. Откъде идват числата?

Част 4. Микроконтролери

Глава 18. Началото на микроелектрониката
Глава 19. Персонален компютър вместо поялник
Глава 20. Преоткриване на колелото
Глава 21: Основи на Arduino
Глава 22. Метеорологична станция на arduino

Приложения

Тази чудесна книга обхваща основните платки Arduino и разширителните платки (щитове), които добавят функционалност към основната платка. Езикът и програмната среда са описани подробно Arduino IDE.

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

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

Проекти, добавени във второто издание гласов контролс с помощта на Arduino, работа с адресируеми RGB ленти, контролиране на iRoboi Create на Arduino. Разглеждат се проекти, използващи платката Arduino Leonardo. дадени уроци стъпка по стъпказа начинаещи разработчици.

ЧАСТ 1. ARDUINO - ОБЩ ПРЕГЛЕД

Глава 1: Въведение в Arduino
Глава 2. Преглед на фамилията контролери Arduino
Глава 3. Платки за разширение Arduino

ЧАСТ 2. СРЕДА ЗА РАЗРАБОТКА И ЕЗИК ЗА ПРОГРАМИРАНЕ ЗА КОНТРОЛЕРИ ARDUINO

Глава 4. Сряда Програмиране на Arduino IDE
Глава 5. Програмиране на Arduino

ЧАСТ 3. ПРАКТИЧЕСКО ПРИЛОЖЕНИЕ НА ARDUINO

Глава 6. Arduino и серийният набор от функции
Глава 7. Arduino и дисплеи с течни кристали, синтезиращи знаци
Глава 8. EEPROM библиотека
Глава 9 Използване на ArduinoЛеонардо като USB устройство
Глава 10. Arduino и 1-Wire
Глава 11. Arduino и цифров температурен сензор DS18B20
Глава 12. Arduino сензори за температура и влажност DHT
Глава 13. Мрежова комуникация с помощта на Arduino
Глава 14. Arduino и SD карта с памет
Glani 15. Arduino n LED матрици
Глава 16. Arduino и контролируеми LED ленти RGB
Глава 17. Работа с устройства Arduino и Wendig
Глава 18. Arduino и радиочестотна идентификация (RFID)
Глава 19. Arduino и сензори за разстояние
Глава 20: Arduino и инфрачервени комуникации
Глава 21. Създаване на робот
Глава 22. Arduino и стъпкови двигатели
Глава 23. Arduino и серво
Глава 24. Arduino и Bluetooth
Глава 25. TV изход на Arduino
Глава 26. Arduino и радио управление
Глава 27. Arduino и безжичният радиационен модул NRF24L01
Глава 28. Работа на Arduino с USB устройства
Glani 29. Arduino и ROS
Глава 30. Гласов контрол

ПРИЛОЖЕНИЯ

Приложение 1. Списък на използваните източници
Приложение 2. Начално училище
Приложение 3. Описание на електронния архив

4. Ние правим сензори. Проекти на сензорни устройства, базирани на Arduino и Raspberry Pi

Тази невероятна книга съдържа повече от 440 страници, на които ще намерите най-интересните и приложни знания за проектиране на Smart Home с помощта на Arduino.

Въведение
Глава 1: Представяне на Raspberry Pi
Глава 2: Представяне на Arduino
Глава 3. Разстояние
Глава 4. Дим и време
Глава 5. Докосване
Глава 6. Движение
Глава 7. Светлина
Глава 8. Ускорение
Глава 9. Идентификация
Глава 1O. Електричество и магнетизъм
Глава 11. Звук
Глава 12. Порода и климат
Приложение A: Бърз справочник за Linux команди на Raspberry Pi
Индикация на предмета

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

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

Независимо дали никога не сте писали ред код или вече знаете как да програмирате на C, ще научите как да работите с Arduino от гледна точка както на хардуер, така и на софтуер, благодарение на лесно разбираемия код, който придружава всеки проект, който е бил разработен изключително с тази премия в ума.

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

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

Съдържание

Предговор
Глава 1: Запознаване със семейството на Arduino
Глава 2: Средата за разработка Arduino
Глава 3: Взаимодействие с околната среда по цифров начин
Глава 4: Плавно управление на изходите с аналогови изходи
Глава 5: Възприемане на реалния свят чрез цифрови входове
Глава 6: Аналогови входове за усещане между всичко и нищо
Глава 7: Управление на времевата област
Глава 8: Общуване с другите
Глава 9: Справяне с прекъсвания
Глава 10: Ардуино в реален случай – Контрол на оранжерии
Индекс

Разгледано е програмирането на микроконтролерни платки Arduino/Genuino/Freeduino. Описани са структурата и функционирането на микроконтролерите, средата за програмиране Arduino, необходимите инструменти и компоненти за провеждане на експерименти. Подробно са разгледани основите на програмирането на платки Arduino: програмна структура, команди, оператори и функции, вход/изход на аналогови и цифрови данни. Представянето на материала е придружено от повече от 80 примера за разработване на различни устройства: температурно реле, училищен часовник, цифров волтметър, аларма със сензор за движение, ключ за улично осветление и др. За всеки проект предоставен е списък на необходимите компоненти, схема на свързване и списъци с програми. На сайта на издателството има изходни кодовепримери от книгата, технически описания, референтни данни, среда за разработка, помощни програми и драйвери.
Второто издание разглежда Руска версия Arduino IDE, добавена информация за характеристиките на използването на кирилски знаци, както и коригирани печатни грешки програмен код.

Издател: BHV-Петербург.
Меки корици, 256 стр.
ISBN 978-5-9775-3680-6

Предговор................................................. ......................................................... ............. ................ единадесет
Въведение................................................. ......................................................... ............. 13
Подготовка за експерименти..................................................... ......... ................................................ ............... 13
GPL лиценз ................................................. ... ................................................ ......................................... 14
Системни изисквания................................................ ................... .............................. ......................... ................... 14
Актуализации и поддръжка ............................................. .... .............................................. .......... 14
Допълнителни материали към книгата ............................................. ...... ................. 14
Глава 1. Обща информация за микроконтролери .................................................... 15
1.1. Устройство и принцип на действие на контролера..................................... .......... 16
1.1.1. процесор................................................................................................... 16
1.1.2. RAMи програмна памет..................................................... .... ......................... 16
1.2. Външни устройства............................................................................................................... 18
1.3. Сравнение на CISC и RISC технологиите ............................................ ......................................................... 18
1.3.1. CISC технология ................................................. .... .............................................. .......... 18
1.3.2. RISC технология ................................................. .... .............................................. .......... 20
1.3.3. Изводи..................................................... ................................................. ...... 20
Глава 2. Програмиране на микроконтролери ................................................. 21
2.1. каква е програмата ................................................. ...... ................................................ ............ 21
2.2. Програмиране на C ................................................. ............................ ............................. ...................... 21
Глава 3. Кратък преглед на фамилията микроконтролери Arduino ....................... 23
Глава 4. Платки за разширение Arduino ........................................................................ 31
4.1. Разширителна платка Arduino Proкъм Щит.................................................. ................................. 31
4.2. Разширителна платка Ardumoto .............................................. ................ ................................. ...................... 32
4.3. Разширителна платка TellyMate .............................................. ..................................................... ........... 33
4.4. Разширителна платка ArduPilot .............................................. ..................................................... ........... .34
4.5. XBeeZNet модули ................................................ ... ................................................ ......... 34
4.6. Ethernet разширителна карта ................................................. ...... ............................................ ............ ... 35
Глава 5. Аксесоари ............................................................................. 37
5.1. Списък на основните компоненти ............................................. ......................................................... 37
5.2. Списък на частите за допълнителни експерименти ............................................. ......... 38
5.3. Експериментална платка Freeduino ................................................. ..................................... 38
5.3.1. Свързване на платката Freeduino .............................................. ..................................................... 38
5.3.2. Захранване................................................ ......................................................... ............ 39
5.3.3. Бутон за рестартиране...................................................................................................................... 41
5.3.4. Връзка с ISP..................................................... ......................................................... .............. ............. 41
5.4. Бележки за безопасност................................................. ................... .............................. ...... 41
Глава 6. Електронни компоненти и техните свойства ................................................. 43
6.1. светодиоди ................................................ ......................................................... ............. 43
6.2. Резистори................................................. ......................................................... ............. 44
6.3. Кондензатори..................................................... ......................................................... ............. 45
6.4. Транзистори................................................. ......................................................... ............. 46
6.5. Диоди................................................. ......................................................... ............. ................................... 46
6.6. Акустичен пиезо преобразувател („пищящ“) ............................................ .......... 46
6.7. Инсталационен проводник................................................ ... ................................................ ......................... 47
6.8. Бутон ................................................ ................................................. ...... 47
6.9. Потенциометър..................................................... ................................................. ...... 47
6.10. Фоторезистор................................................. ......................................................... ............. 48
6.11. Дъска за хлябс контактни букси..................................... .......... ................................. 48
Глава 7. Предварителна подготовка ..................................................................... 51
7.1. Инсталиране на софтуер Arduino на Windows ............................................. ................. 52
7.2. Инсталиране на софтуер Arduino на Linux ............................................. ......... 53
7.3. Инсталиране на софтуер Arduino на Mac OS X ............................................ ......... .... 54
Глава 8. Среда за разработка на Arduino ........................................................................... 57
8.1. Оригинален Ардуино инсталации IDE ................................................. .................................................... 59
8.2. Нашата първа програма: ES_Blinkt ............................................. .................................................... 61
8.3. какво направихме ................................................. ...... ............................................ ............ ................. 63
Глава 9. Основи на програмирането на Arduino и първи експерименти ........... 65
9.1. Битове и байтове ............................................. ......... ................................................ ................. 65
9.2. Основна структурапрограми................................................. .............................................. 66
9.2.1. Последователно изпълнениепрограми................................................. ............... 66
9.2.2. Прекъсване на изпълнението на програмата ............................................. .......... 66
9.3. Програмна структура на Arduino ............................................. ..................................................... .. 67
9.4. Първа програма за Arduino ................................................. ...... ................................................ ......... 68
9.5. Команди на Arduino и техните приложения ............................................. ......................................................... 69
9.5.1. Коментари в изходен текст..................................................................................... 69
9.5.2. брекети { } ......................................................................................................... 70
9.5.3. точка и запетая; ................................................. ...... ............................................ ............ .......... 70
9.5.4. Типове данни и променливи ............................................. ............... ................................. ............ 70
9.5.5. Име на променлива ................................................ ... ................................................ ......... ............. 70
9.5.6. Локални и глобални променливи ............................................. ......................................................... 71
9.5.7. Различни видоведанни................................................. ......................................................... ............. 71
Променлива тип Boolean.................................................................................................... 71
Променлива от тип Byte .............................................. ..................................................... ........... ......... 71
Променлива от тип Char .............................................. ..................................................... ........... .......... 72
Променлива от тип Unsigned Char ............................................. ......................................................... 72
Променлива тип Int(Цяло число) ............................................. ......................................................... 72
Променлива от тип Unsigned int ............................................. ......................................................... .... 72
Променлива от дълъг тип ............................................. .... .............................................. .......... .......... 72
Променлива от тип Unsigned Long ............................................. ......................................................... 72
Променлива Тип поплавък........................................................................................................ 72
Променлива от тип String .............................................. ..................................................... ........... 73
Масиви ................................................. ... ................................................ ......... 73
9.5.8. Оператори................................................. ......................................................... ............. 75
Аритметични оператори..................................................... ......... ................................................ ...... 75
Оператори за сравнение................................................. ......... ................................................ ............... .......... 75
Побитова аритметика................................................. ... ................................................ ......... 75
Булева аритметика................................................. ... ................................................ ......... 75
Увеличаване и намаляване на стойността ............................................. ..................................... 75
Константи................................................. ......................................................... ............................................. 76
9.5.9. Директива #define ............................................. .... .............................................. .......... 76
9.5.10. Контролни структури................................................. ......................................................... 76
Инструкцията if ............................................. .... .............................................. .......... 76
Твърдение if ... else ............................................ ......................................................... ............. ................... 77
Дизайн случай на превключване...................................................................................................... 80
9.5.11. Цикли ................................................. ......................................................... ............. 81
Цикълът for ............................................. ..................................................... ........... 82
Цикли while и do while ............................................. ......................................................... ............. 83
9.5.12. Функции и процедури ............................................. .................... .............................. .......................... 85
Подпрограма................................................. ......................................................... ............. ................... 85
Функция ................................................ ................................................. ...... 86
Команда за продължаване ................................................. .... .............................................. .......... 87
9.5.13. Функции за преобразуване на типове ............................................. .................... .............................. ......... 88
9.5.14. Математически функции..................................................... ... ................................................ 88
Функция min(x, y) ............................................. .... .............................................. .......... 88
Функция max(x, y) ............................................. .... .............................................. .......... 89
Функция abs(x) ............................................. ...... ............................................ ............ 89
Функция constrain(x, a, b) ......................................... ...... ............................................ ............ 90
Функционална карта (x, fromLow, fromHigh, toLow, toHigh) ..................................... .................. 91
Функция pow(основа, експонента) ............................................. .... .............................................. .......... 91
Функция sq(x) ............................................. ...... ............................................ ............ ........................ 92
Функция sqrt(x) ............................................. .... .............................................. .......... 93
Функция sin(rad) ............................................. ...... ............................................ ............ ................... 93
Функция cos(rad) ............................................. ...... ............................................ ............ ................... 94
Функция tan(rad) ............................................. ...... ............................................ ............ ................... 94
9.5.15. Сериен вход/изход ............................................. ................... .............................. ......... 95
Функция Serial.begin(Baudrate) ............................................ .................................................... 96
Функция Serial.end() ............................................ ......................................................... ............................. 97
Функция Serial.read() ............................................ ......................................................... ............. ............. 97
Функция Serial.available() ............................................ ......................................................... ............. 97
Функция Serial.flush() ............................................ ......................................................... ............. 98
Функция Serial.print() ............................................ ......................................................... ............. 98
Функция Serial.println() ............................................ ..................................................... ........... 100
Функция Serial.write() ............................................ ......................................................... ............. 101
Проблеми с извеждане на кирилица сериен порт Arduino IDE .................. 102
9.5.16. Функциониране на серийния интерфейс ............................................. ...................... .. 102
Четене на символен низ през серийния интерфейс.................................. 103
Сериен изход на данни с изчисление ............................................. ....... 104
9.5.17. Софтуерна UART емулация .............................................. ..................................... 105
9.5.18. Конфигурация на I/O и инсталация на порт ................................. ......... 107
Функция pinMode(pin, режим) ............................................ .... .............................................. .......... 107
Функция DigitalRead(pin) ............................................ ......................................................... ............. .... 107
Функция digitalWrite(pin,value) ............................................ .... .............................................. 107
Четене на състоянието на бутона ............................................. ............................ ............................. .............. 108
Бутон с терминиращ резистор.................................................. ...... ................................... 110
Бутон с външен издърпващ резистор.................................. ......... 111
9.5.19. Аналогов вход на данни и ADC ............................................. .................... .............................. ..... 112
функция analogRead(pin) ............................................. ...... ............................................ ............ ... 113
9.5.20. Аналогови изходиШИМ................................................. .. ........................................ 115
Команда analogWrite(pin, value) ............................................ .... .............................................. 116
9.6. Някои специални функции..................................................... ......................................................... 119
9.6.1. Задаване на пауза..................................................... .... .............................................. .......... 119
Използване на командата delay() ............................................ ......................................................... ......... 119
Използване на командата micros() ............................................ ......................................................... .... 119
9.6.2. Функции произволни числа............................................................................................. 120
Функция randomSeed(seed) ............................................. ......................................................... ............. .120
Функция произволна (мин., макс.) ............................................ .... .............................................. .......... ... 120
9.6.3. Колко време е минало? ................................................. ......................................................... 122
Функция Millis() .............................................. ......................................................... ................. ............... 123
функция micros() .............................................. ................................................. ...... ............... 123
Глава 10. Продължаващи експерименти с Arduino .................................................. 125
10.1. Регулиране на нивото на яркост на LED с транзистор..................................... ......... 125
10.2. Плавно мигане................................................. ... ................................................ ......... 127
10.3. Потискане на отблъскването на контактите на бутоните ............................................. ....... 130
10.4. Забавяне на включване ............................................. .................. ................................ ........................ 135
10.5. Забавяне на изключване................................................. ................ ................................. ..................... 136
10.6. Ардуино и светодиоди ............................................. .... .............................................. .......... 137
10.7. Връзка тежки товари....................................................................................... 140
10.8. DAC, базиран на PWM порт ............................................. ...... ............................................ ............ 142
10.9. По-забавно е с музика… ............................................ ................. ................................. ....................... 146
10.10. Романтична вечер с микроконтролер на свещи.................................................. ......... .. 148
10.11. Контрол на персонала на КПП................................................. ............................................. 150
10.12. Часовник за реално време ............................................. ......... ................................................ ............... .152
10.13. Програма за учебни часове ............................................. ......... ................................................ .. 154
10.14. Управление на вентилатора ................................................ ......................................................... ..... 157
10.15. Автоматично улично осветление..................................................... ......... ................................................ .. 160
10.16. Сигнализация................................................. ................................................. ...... ................. 162
10.17. Кодова ключалка................................................ ... ................................................ ......... 164
10.18. Измервател на капацитета за автоматично регулиране на обхвата..................................... 168
10.19. Професионално отчитане на съпротивлението на потенциометъра ................................. 171
10.20. Сензор за допир ................................................ ......................................................... .............. 172
10.21. Държавна машина............................................................................................................ 174
10.22. Шестканален волтметър включен Базиран на Arduino............................................................. 177
10.23. Програмиране на записващо устройство за напрежение.................................................. ................... .................... 180
10.24. Осцилоскоп с памет, базиран на Arduino ............................................ ...... 182
10.25. StampPlot е безплатен професионален регистратор на данни......... 184
10.26. Управление на микроконтролера от портовете на програмата VB.NET .................................. 188
10.27. Температурно реле................................................. ......................................................... .............. 190
Глава 11. I2C шина ..................................................................................................... 193
11.1. Предаване на битове ................................................ ......... ................................................ ............... ................... 194
11.2. СТАРТ състояние................................................ ... ................................................ ......... 194
11.3. STOP състояние................................................ ... ................................................ ......... 194
11.4. Прехвърляне на байтове ................................................ ... ................................................ ......... 194
11.5. Потвърждение ................................................. ................................................. ...... ............... 195
11.6. Адресиране................................................. ................................................. ...... 195
11.7. 7-битово адресиране ............................................. ..................................................... ........... .......... 195
Глава 12. Arduino и LM75 температурен сензор на I2C шината ....................... 197
Глава 13. Чип PCF8574 - разширител на I2C порт ............................... 201
Глава 14: Ултразвуково измерване на разстоянието ....... 205
14.1. Ултразвуков сензор SRF02 .............................................. ..................................................... 205
14.2. Четене на данни ................................................. ......................................................... .............. 206
Глава 15. Свързване на платката Arduino с GPS устройство ................................. 209
15.1. Колко сателита са необходими? ................................................. ......................................................... 210
15.2. Как да свържа GPS приемник към Arduino? ................................................. ...... ................... 210
15.3. GPS протокол................................................. ......................................................... .............. 212
Глава 16: Свързване на сервото към платката Arduino ...................................... 217
16.1. Как работи серво задвижването? ................................................. ......................................................... 217
16.2. Свързване на устройството към Arduino ............................................. ......................................................... 218
Глава 17. Дисплеи с течни кристали ........................................................... 221
17.1. Поляризация на дисплеите ............................................. .... .............................................. .......... 222
17.2. Статично управление и мултиплексен режим ............................................. ....... .......... 222
17.3. Зрителен ъгъл................................................. ... ................................................ ......... 223
17.4. Отразяващи, трансмисивни и полупрозрачни LCD дисплеи.................................. ......... 223
17.5. Настройка на контраста на дисплея ............................................. ............................ ............................. 223
17.6. Набор от показани знаци ............................................. ............................ ............................. .............. 225
17.7. Оформление на щифтовете на обикновените LCD дисплеи..................................... ....... 227
17.8. Управление на дисплея от микроконтролер..................................... ......... 228
17.9. Инициализиране на дисплеите................................................. ... ................................................ ......... .228
17.10. Свързване на дисплея към Arduino ............................................. ......................................................... 230
17.11. Първи експеримент с LCD............................................. ......................................................... .... 232
17.12. Как работи всичко? ................................................. ...... ............................................ 234
ПРИЛОЖЕНИЯ .......................................................................................................... 237
Приложение 1. Съответствие на щифтовете на платката Arduino
и ATmega контролер ................................................. .... .............................................. ..... 239
Приложение 2. Ескейп последователности ............................................. ....... 241
Приложение 3. ASCII таблица................................................................................. 243
Приложение 4. Описание на електронния архив.................................................. ......... 249
Предметен индекс................................................. .............................................. 251

Платформата Arduino непрекъснато се подобрява и актуализациите могат да бъдат изтеглени безплатно от уебсайта www.arduino.cc

Електронен архивс придружаваща книга допълнителни материалиможе да бъде изтеглен от връзката ftp://ftp.bhv.ru/978597736806.zip. Връзката е достъпна и от страницата на книгата на уебсайта www.bhv.ru.
Архивът съдържа необходимия софтуер, инструменти за програмиране, технически спецификации и електрически схемиустройства и компоненти, както и програмни кодове за примерите, разгледани в книгата.


Второто издание обхваща руската версия на Arduino IDE, добавя информация за характеристиките на използването на знаци на кирилица и...

Прочетете напълно

Разгледано е програмирането на микроконтролерни платки Arduino/Genuino/Freeduino. Описани са структурата и функционирането на микроконтролерите, средата за програмиране Arduino, необходимите инструменти и компоненти за провеждане на експерименти. Подробно са разгледани основите на програмирането на платки Arduino: програмна структура, команди, оператори и функции, вход/изход на аналогови и цифрови данни. Представянето на материала е придружено от повече от 80 примера за разработване на различни устройства: температурно реле, училищен часовник, цифров волтметър, аларма със сензор за движение, ключ за улично осветление и др. За всеки проект предоставен е списък на необходимите компоненти, схема на свързване и списъци с програми. Уеб сайтът на издателя съдържа изходни кодове за примери от книгата, технически описания, справочни данни, среда за разработка, помощни програми и драйвери.
Второто издание обхваща рускоезичната версия на Arduino IDE, добавя информация за особеностите на използването на знаци на кирилица, а също така коригира печатни грешки в програмния код.
Книгата обхваща:
- Обща информация за микроконтролерите
- Програмиране на микроконтролери на Arduino/Genuino/Freeduino/ платки
- Разработка и тестване на собствени приложения
- Повече от 80 практически проекта: настройка и използване на адаптерния чип FT232RL, закъснение при включване и изключване, температурно реле, измервател на капацитет, училищен часовник, 6-канален цифров волтметър, управление на вентилатора, комуникация компютър към компютър Ардуино платка, сензор за допир, запис на данни с помощта на графичен софтуер Stamp PLOT, цифров осцилоскоп с памет, аларма на сензор за движение, ключ за улично осветление, светлина на свещи, музикален плеър, плотер, сериен вход/изход на данни, експерименти с LCD дисплеи и много други.

Санкт Петербург: BHV-Петербург, 2012. - 256 с. - (Електроника). — ISBN978-5-9775-0727-1 Програмиране на платки за микроконтролери Arduino/Freduino. Описани са структурата и функционирането на микроконтролерите, средата за програмиране Arduino, необходимите инструменти и компоненти за провеждане на експерименти. Подробно са разгледани основите на програмирането на платки Arduino: програмна структура, команди, оператори и функции, вход/изход на аналогови и цифрови данни. Представянето на материала е придружено от повече от 80 примера за разработване на различни устройства: температурно реле, училищен часовник, цифров волтметър, аларма със сензор за движение, ключ за улично осветление и др. За всеки проект предоставен е списък на необходимите компоненти, схема на свързване и списъци с програми.
FTP сървърът на издателя (в книгата има връзка) съдържа изходни кодове за примери от книгата, технически описания, справочни данни, среда за разработка, помощни програми и драйвери Arduino е лесна за научаване платформа с отворен код, базирана на a вграден микроконтролер и развойна среда със софтуер API интерфейсза микроконтролери. Различни аналогови и цифрови сензори, които регистрират държав заобикаляща средаи предава данни към микроконтролера. Микроконтролерът обработва входящите данни, а програмата произвежда нови данни под формата на аналогови или цифрови стойности. В резултат на това се отварят широки хоризонти за творчество.
Разработчикът разполага с готови програми и библиотеки от функции на програмната среда Arduino. Комбинирането на хардуер и софтуер, можете да използвате тази книга, за да свържете нашия реален свят със света на микроконтролера, който се състои от битове и байтове. Обща информация за микроконтролерите
Устройство и принцип на действие на контролера
Външни устройства
Сравнение на RISC и CISC технологиите Програмиране на микроконтролери
каква е програмата
Програмиране на C Кратък преглед на фамилията микроконтролери Arduino
Arduino Mega платка
Платка Arduino Duemilanove
Arduino Mini Board
Arduino Nano платка
Arduino Pro Mini Board
Arduino Pro платка
Дъска LilyPad
USB адаптер Ардуино разширителни платки
Arduino ProtoShield разширителна платка
Ardumoto разширителна платка
Разширителна платка TellyMate
ArduPilot разширителна платка
XBeeZNet модули
Ethernet разширителна карта Компоненти
Списък на основните компоненти
Списък на части за допълнителни експерименти
Експериментален съвет на Freeduino
Експериментална платка за микроконтролер Freeduino
Захранване
Бутон за рестартиране
ISP връзка
Бележки за безопасност Електронни компоненти и техните свойства
светодиоди
Резистори
Кондензатори
Транзистори
Диод
Акустичен пиезоелектричен преобразувател ("пищялка")
Монтажна тел
Бутон
Потенциометър
Фоторезистор
Монтажна планка с контактни букси Предварителна подготовка
Инсталиране на драйвери
Помощна програма MProg за FT232RL
Програмиране на чипа FT232R с помощта на MProg
Инсталиране на софтуер Arduino Среда за разработка Arduino
Настройки в Arduino-IDE
Нашата първа програма "ES_Blinkt"
какво направихме Основи на програмирането на Arduino
Битове и байтове
Основна структура на програмата
Структура на програмата Arduino
Първа програма с Arduino
Команди на Arduino и техните приложения
Някои специални функции Допълнителни експерименти с Arduino
LED контрол на яркостта с транзистор
Плавно мигане
Отстраняване на контакта на бутона
При закъснение
Забавяне на изключване
Светодиоди и Arduino
Свързване на големи товари
DAC базиран на PWM порт
Всичко е по-забавно с музика
Романтична светлина на свещ с помощта на микроконтролер
Контрол на персонала на КПП
Часовник за реално време
Програма за учебни часове
Управление на вентилатора
Автоматично улично осветление
Сигнализация
Кодова ключалка
Измервател на капацитета с автоматично регулиране
Професионално отчитане на съпротивление с потенциометър
Сензор за допир
Държавна машина
6-канален волтметър, базиран на Arduino
Програмиране на записващо устройство за напрежение
Осцилоскоп с памет базиран на Arduino
StampPlot - Безплатен професионален регистратор на данни
Управление чрез VB.NET
Температурно реле I2C шина
Предаване на битове
Състояние "СТАРТ"
Състояние "СТОП".
Прехвърляне на байтове
Потвърждение
Адресиране
7-битово адресиране
Arduino и LM75 температурен сензор с I2C шина
I2C портов разширител с PCF8574 Ултразвуков сензор за обхват
Ултразвуков сензор SRF02
Четене на данни Сдвояване на Arduino Board с GPS
Колко сателита са необходими?
Как да свържа GPS към Arduino?
GPS протокол Серво със серво платка за Arduino
Как работи серво задвижването?
Свързване на устройството към Arduino Дисплеи с течни кристали
Поляризация на дисплея
Статично управление и мултиплексен режим
Ъгъл на гледане
Отразяващи, трансмисивни и полупрозрачни LCD дисплеи
Настройка на контраста на дисплея
Набор от показани знаци
Местоположение на щифтове на обикновени LCD дисплеи
Управление на дисплея от микроконтролер
Инициализиране на дисплеи
Свързване на дисплея към Arduino
Първи експеримент с LCD
Как работи всичко? Приложения
Кореспонденция Ардуино щифтовеи ATmega
Ескейп последователности
ASCII таблица
Списък на доставчиците на компоненти
Описание на компактдиска
Предметен индекс



Разгледано е програмирането на микроконтролерни платки Arduino/Freduino. Описани са структурата и функционирането на микроконтролерите, средата за програмиране Arduino, необходимите инструменти и компоненти за провеждане на експерименти. Подробно са разгледани основите на програмирането на платки Arduino: програмна структура, команди, оператори и функции, вход/изход на аналогови и цифрови данни. Представянето на материала е придружено от повече от 80 примера за разработване на различни устройства: температурно реле, училищен часовник, цифров волтметър, аларма със сензор за движение, ключ за улично осветление и др. За всеки проект предоставен е списък на необходимите компоненти, схема на свързване и списъци с програми.
FTP сървърът на издателя съдържа изходни кодове за примери от книгата, технически описания, справочни данни, среда за разработка, помощни програми и драйвери.

Arduino платки с USB хост възможности

Някои платки Arduino имат възможности за USB хост, което ви позволява да свържете традиционни USB устройства (клавиатури, мишки, телефони) към тях. Базиран на Android). Естествено ще са необходими допълнителни драйвери за поддръжка на тези устройства. Например, не можете просто да свържете уеб камера към Arduino Due и веднага да очаквате да получите снимки. Arduino Due поддържа класа USB Host, който ви позволява да свържете клавиатура или мишка към USB порт. Arduino Mega ADK поддържа протокол Отворете Android Accessory Protocol (AOA), който опростява обмена на данни между Arduino и устройството с Android. На първо място, той е необходим за управление на Arduino I/O от приложение, работещо на устройства с Android.

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

Основната функция, която осигурява серийният интерфейс, е да извежда данни от Arduino към компютърния терминал. Това вече беше споменато в предишни глави. В този раздел ще се спрем по-подробно на този проблеми по-късно ще разгледаме примери за приложения, които отговарят на данните, които изпращате, вместо просто да ги отпечатате на терминала. Този процес е еднакъв за всички Arduino платки.

За разлика от някои други терминални програми, серийният порт на Arduino IDE следи при натискане на клавиш или бутонът Изпращане изпраща всички командна линия. Други серийни терминали, като Putty, изпращат знаци веднага след въвеждането им.

Четене на информация от компютър или друго серийно устройство

Като стартирате Arduino IDE Serial Monitor, можете ръчно да изпращате команди към Arduino. След това ще разгледаме как да изпращаме последователности от знаци и как да създаваме прост GUIза изпращане на команди.

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

Arduino платка като преводач на данни

Най-лесният начин е да накарате платката Arduino да реагира на всичко, което се изпраща. За да направи това, платката Arduino трябва да запомни и след това да изведе всеки получен символ. За да направите това, ще ви трябват две нови функции:

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

В крайна сметка ще се уморите да „говорите“ с платката Arduino през монитора на Arduino IDE сериен порт. Много по-удобно е да работите с приложение, написано на език за програмиране, което има библиотеки за комуникация през сериен порт. Можете да използвате любимия си език за програмиране, за да напишете програма, която изпраща серийни команди към платката Arduino и получава данни, прехвърлени от Arduino към компютъра.

Езикът за програмиране Processing е избран в тази книга, защото е много подобен на Ардуино език, с които вече сте запознати. Всъщност езикът за програмиране Arduino е базиран на обработка! Други популярни езици за програмиране, които имат обширни библиотеки за работа със серийния порт, са Python, PHP, Visual Basic, C и др. създайте прост графичен потребителски интерфейс (GUI) за изпращане на команди към платката Arduino.

Интерфейс за обработка

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