На этом уроке мы продолжим знакомство с платой, микроконтроллером и его параметрами.

Но для начала поговорим о среде программирования, так называемой IDE.

Это программное обеспечение для написания вашего кода, его компилирования и загрузки.

Так что косается микроконтроллера, я тут собрал в таблицу основные данные микроконтроллера. Тут немного статистики и основных параметров микроконтроллера, которые я нашол в начале документации к нашему контроллеру. 


МикроконтроллерATmega328
Операционное напряжение5 В
Рекомендованное напряжение питания7 ... 12 В
Граничные значения напряжения питания6 ... 20 В
Дискредные входы-выходы14 (6 аппаратных ШИМ)
Аналоговых входов6
Ток на одном выходе максимальный40 мА
Максимальный ток на выводе 3,3 В50 мА
Флеш - память32 кБ, из которых 0,5 кБ заняты загрузчиком
SRAM2 кБ
EEPROM1 кБ
Тактовая частота16 МГц


ATmega328 8-битный микроконтроллер, рабочее напряжение 5 В, тоесть его входы-выходы оперируют напряжением от 0 В до 5 В, так же указаны рекомендованные и граничные пределы питающего напряжения. Они используются при внешнем источнике питания.

Каким же напряжением запитать плату?

Рекомендуется её питать от 7 ... 12 В. И рабочее напряжение 5 В получается при помощи понижающего стабилизатора, имеющегося на плате, а, для нормальной работы стабилизатора, ему нужно 7 ... 12 В. Не через USB, а через разъем питания. На плате 14 цифровых входов-выходов. От нулевого до 13-го. 

Также на плате 6 аналоговых входов от A0 до A5. Максимальный ток на выводе 40 мА. Максимальный ток вывода 3.3V указан 50 мА. 

Чем важно значение этих токов?

Оно показывает, какую нагрузку можно нагрузить на один вывод. Arduino может управлять только небольшой нагрузкой на выводах потому, что это маленькое устройство, способное выдавать ограниченный ток. Обычно значение заявленного производителем максимального тока на входах-выходах Arduino составляет 40 мА. Это не много. И это важно знать. Потому-что это граница, за которую нельзя заходить.

Если вы управляете светодиодом, то 40 мА вполне хватит. На самом деле если пропустить через светодиод больше 20 мА то он поджарится. Но если вам нужно будет управлять двигателем или чем-то подобным, то 40 мА не хватит. Для подключения двигателя, прийдется использовать дополнительные компоненты. О них мы поговорим на следующих уроках.

Что касается флеш-памяти.

Она не имеет ничего общего с постоянным запоминающим устройством ПЗУ. У меня даже есть пример с собой. Это та память, которую вы найдете в обычной флешке? В любой USB-флешке например? Это flash память. Это не ПЗУ, и в ATMega328 есть такая память. У всех современных процессоров есть подобная  flash память, и это то место, где вы храните выполняемые программы. Эта память сохраняет данные при прекращении питания. Мы все знаем, что USB-флешка, вынятая из USB-порта продолжает хранить имеющуюся в ней информацию. Ваша программа записывается в флеш-память, которая может вместить всего 32 кБ данных, что сравнительно маловато. Но этого достаточно для наших задач.

SRAM это статическая память только для чтения.

Random access memory. Обычная RAM random access memory. Точнее, статическая RAM-память. Это обычная энергозависимая память. При выключении питания в ней всё стирается. А при возобновлении питания получаем обнулённую память SRAM. Вобщем, SRAM - это память, которая используется во время выполнения программы и имеет ёмкость 2 кБ, что довольно мало.

EEPROM же похожа на Flash-память, но  имеет некоторые отличия.

Она даёт доступ к отдельным ячейкам - байтам. И, так как тактовая частота составляет 16 МГц, эта память в лучшем случае обработает 16 миллионов циклов в секунду, что значит 16 миллионов операций в секунду. А это довольно медленно например в сравнении с компьютером, который способен оперировать на частоте 3 - 4 ГГц. Но этого вполне достаточно для тех штуковин, которые мы хотим состряпать.

8-битный процессор такой, как mega 328, будет стоить для вас примерно $1,50. Это если покупать отдельную микросхему процессора. Это может стоить где-то $1.50. А вся плата Arduino, стоит $35...$40. Возможно на сайте Amazon найдете дешевле. Но на плате будет много вспомогательных компонентов. Из-за чего её использование намного удобнее для нас.

Если вы купите голую микросхему, то её нельзя будет напрямую программировать. Понадобится отдельный программатор. Полная плата решает такие вопросы. Эти вещи довольно дешовые.

Теперь давайте взглянем на ПО.

Абревиатура IDE расшифровывается так: Arduino Integrated Development Environment. IDE это программный инструмент, который используется для программирования. Если взглянуть на IDE, то можно увидеть главное окно, которое представляет собой текстовый редактор для написания кода.



Вы можете вставить свой код прямо в этот текстовый редактор или набрать его непосредственно там. Сейчас у нас там простейшая программа для мигания светодиодами. Вы можете написать туда всё что угодно. Сверху окна находится главное меню программы, в которое входят кнопки: сохранить файл, открыть файл и остальные.

Все команды лежат в закладках этого меню. А под меню расположены кнопки, которые дают быстрый доступ к основным командам софта. В общем основные операции размещены на панели кнопок. Но, если необходимы особые операции, их следует искать в меню. Просто на кнопках основные команды. В самом низу расположена панель сообщений. А панель сообщений обычно содержит системные сообщения, поэтому во время компиляции, при появлении ошибок, там высвечиваются сообщения об ошибках.

Вот так выглядят основные составляющие главного окна ПО.

Теперь вам следует скачать ПО на сайте Arduino.cc, установить его и двойным клацанием мыши запустить в работу. Когда программа запустится, она будет выглядеть приблизительно так, как на рисунке. Пройдемся по кнопкам основных функций. Они отвечают за самые часто выполняемые операции. Они находятся под верхним меню. На картинке показано как они выглядят.

Первой идет кнопка Проверить - галочка, которая компилирует код. Во время компиляции она проверяет его на ошибки. Если в программу закралась ошибка, это выявляется во время компиляции. Вам частенько будет необходимо компилировать текст программы. Кнопка называется "Проверить", и с её помощю код компилируется, что-бы выявить ошибки. Она не проверяет полную корректность кода. Она просто проверят на наличие ошибок компиляции? Если есть ошибка компиляции или синтаксиса или чего-то ещё, она будет выявлена при проверке.

Кнопка Загрузка компилирует текст программы и загружает его в контроллер. Две операции выполняются автоматически одна за другой. При этом загрузка работает только при подключенной плате контроллера. А проверку можно выполнять и при отсутствующей плате. Но во время загрузки плата разработчика должна быть подключена к компьютеру. 

Кнопка Новый создает новый скетч - новую программу. Кнопка Открыть открывает существующий, Сохранить - сохраняет скетч в файл в выбранной папке. Кнопка Монитор порта открывает окно для коммуникации с платой. Мы разберём это подробнее на следующих уроках. Мы разберём что умеет делать Монитор порта. Но фишка в том, что при этом открывается отдельное окно. 

Я должен отметить одно ограничение рассматриваемой отдельно стоящей платформы - это отсутствие экрана. Компьюторы, и ноутбуки имеют монитор и клавиатуру, правильно? Это даёт вам возможность вводить данные с клавиатуры и читать их с экрана, но у плат разработчика изначально отсутствует такая возможность. Arduino не выпускают со встроенными экраном и клавиатурой. На нем установлены только парочка светодиодов и выводы. Если же вам потребуется ввести в него данные. Например, если вы хотите заносить в него данные, и читать их на каком-либо экране, то нельзя это сделать напрямую. Вот для каких целей нужен Монитор порта. Это средство отображения информации. Вы запускаете его, и он открывается в отдельном окне на компьюторе. И он позволяет печатать текст и посылать его прямо в Arduino, а так же Arduino может печатать что-либо на экране для вас, и вы можете увидеть это в окне Монитора порта.

На следующих уроках, мы поговорим о мониторе порта поподробнее.

Написати відгук

Примітка: HTML размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
Набір перетинок (папа-папа) 40шт 20см

Набір перетинок (папа-папа) 40шт 20см

Набір з"єднувальних дротів для поєднання плат контролера з периферією без пайки. Підходять під станд..

39.27грн.

Цифровий датчик температури та вологості DHT22 з підтягуючим резистором

Цифровий датчик температури та вологості DHT22 з підтягуючим резистором

Опитування даних з датчика виконується мікроконтролером за протоколом WIREМаркування AM2302Діапазон ..

116.95грн.

Шестерня для зубчатого ременю на 36 зубців під вісь 8 мм

Шестерня для зубчатого ременю на 36 зубців під вісь 8 мм

Використовується для передачі та редукції обертаючого моменту від двигуна до вісі 8 ммКількість зубц..

54.32грн.

Arduino відображення даних FLOAT

Arduino відображення даних FLOAT

Arduino відображення даних FLOATСхоже, що програмне забезпечення Arduino не особливо підтримує відоб..

Датчик відстані 10 ... 80 см інфрачервоний

Датчик відстані 10 ... 80 см інфрачервоний

Датчик відстані на інфрачервоному світлодіоді з аналоговим виходом для підключення прямо на аналогов..

139.04грн.

Нове

Мідний чулок для видалення припою 2мм 1,5м

Мідний чулок для видалення припою 2мм 1,5м

Мідна оплітка - застосовується для залужування доріжок друкованої плати, а також для видалення надли..

Модуль твердотільного реле 4-канальний

Модуль твердотільного реле 4-канальний

Модуль призначений для комутації 4-х навантажень зі змінною напругою живлення 75 ... 264 ВМаксимальн..

Оптопара EL817 SMD

Оптопара EL817 SMD

Оптопара з транзистором на виходіЗастосовується для гальванічної розв'язки дискретного сигналу, а та..

Стабілізатор напруги 5В 2А мікросхема L78S05CV

Стабілізатор напруги 5В 2А мікросхема L78S05CV

Мікросхема стабілізатор напруги L78S05CVЗастосовується для стабілізації пульсуючої напруги в блоках ..

Програматор AVR-контролерів USBASP

Програматор AVR-контролерів USBASP

Програматор для завантаження та відлагодження програм в мікроконтролери компанії ATMEL.Інтерфейс про..

Зсувний регістр 74HC595N

Зсувний регістр 74HC595N

Цю мікросхему використовують для керування світлодіодними гірляндами та символьними індикаторами.Вон..

Світлодіод ультраяскравий 3мм

Світлодіод ультраяскравий 3мм

Над-яскравий світлодіод діаметром 3 ммКорпус прозорий в світлодіодів різного кольору світіння. Тобто..

Вентилятор для Orange PI товщиною 10мм

Вентилятор для Orange PI товщиною 10мм

Вентилятор для охолодження процесора міні-комп'ютера Orange PI або Raspberry PIПрацює дуже тихоЖивле..

Термінальний роз'ємний конектор кутовий 4д

Термінальний роз'ємний конектор кутовий 4д

Роз'ємний 4-дротовий конектор для пайки на друковану платуДроти підводяться паралельно платі та з'єд..

Шестерня для зубчатого ременю на 20 зубців під вісь 5 мм

Шестерня для зубчатого ременю на 20 зубців під вісь 5 мм

Використовується для передачі та редукції обертаючого моменту від двигунаКількість зубців 20 шт.Діам..

Термінальний роз'ємний конектор кутовий 3д

Термінальний роз'ємний конектор кутовий 3д

Роз'ємний трьохдротовий конектор для пайки на друковану платуДроти підводяться паралельно платі та з..

Термінальний роз'ємний конектор кутовий 2д3.81mm

Термінальний роз'ємний конектор кутовий 2д3.81mm

Роз'ємний двохдротовий конектор для пайки на друковану платуДроти підводяться паралельно платі та з'..

Мікроконтролер ATTINY13A

Мікроконтролер ATTINY13A

Мініатюрний економічний AVR 8-бітний мікроконтролер, який можна програмувати як програматором, так і..

Логічний аналізатор 8 каналів

Логічний аналізатор 8 каналів

Надписи на корпусі можуть відрізнятись від наведених на картинці, але сутність приладу незмінна.Цифр..

Лінійний підшипник 8мм

Лінійний підшипник 8мм

Підшипник для лінійного ковзання робочого органу 3D-принтера або CNC за своїми осями.Одягається на ц..

Підшипник для зубчатого ременя GT2 без зубів

Підшипник для зубчатого ременя GT2 без зубів

Підшипник для натяжки зубчатого ременя GT2 6 мм на вісь 5 ммЗастосовується у 3D-принтерах та CNCШири..