Собираем собственную плату Arduino на микроконтроллере AVR ATmega328

Arduino представляет собой платформу разработки с открытым исходным кодом, предназначенную для инженеров и начинающих любителей электроники и позволяющую достаточно просто разрабатывать различные электронные проекты. Она состоит из физически программируемой платы (основанной на микроконтроллерах семейства AVR) и специализированного программного обеспечения или интегрированной среды разработки, которую можно запускать на вашем персональном компьютере, чтобы разрабатывать программы и загружать их в микроконтроллер.

Внешний вид собственной платы Arduino

Arduino использует системный загрузчик (boot loader), который позволяет новому программному коду записываться внутрь его. В данной статье мы рассмотрим вопрос записи системного загрузчика в микроконтроллер ATmega328 (семейство AVR) и сконструируем на его основе домашнюю систему Arduino на печатной плате. Выбор микроконтроллера ATmega328 IC обусловлен тем, что он используется в платформе Arduino UNO.

Необходимые компоненты

  • Плата Arduino UNO с интегральной схемой (IC) и кабелем
  • Микроконтроллер Atmega328 IC
  • Макетная плата
  • Соединительные провода
  • Кварц 16 МГц
  • Резистор 10 кОм

Последовательность действий при сборке платформы Arduino

Чтобы загрузить системный загрузчик (boot loader) в «чистый» Atmega328 IC нам будет необходима какая-нибудь плата Arduino (подойдет любая). Последовательность действий по сборке платформы Arduino будет показана в виде следующей последовательности шагов. Также в конце статьи вы можете посмотреть видео, на котором наглядно представлены все продемонстрированные на рисунках процессы.

Шаг 1. Соберите вместе и аккуратно разложите все необходимые для сборки компоненты.

Компоненты для сборки собственной платы Arduino

Шаг 2. Удалите “Arduino Original IC” с платы Arduino с помощью отвертки и вставьте “New Atmega328 IC” на плату Arduino.

Удаление оригинального микроконтроллера AVR с платы Arduino Вставка в плату Arduino вашего микроконтроллера AVR

Шаг 3. Откройте интегрированную среду разработки Arduino, выберите в ней пункт меню File -> example -> ArduinoISP.

Выбор ArduinoISP в меню

После открытия ArduinoISP выберите Arduino UNO board из пункта меню Tools -> Board -> Arduino Uno.

Выбор Arduino UNO board в меню

Затем выберите COM PORT (последовательный порт) из пункта меню Tools -> Serial Port -> COM10.

Выбор последовательного порта в меню

Затем загрузите ArduinoISP Sketch (кусок программного кода).

Загрузка программного кода

Шаг 4. Теперь удалите New IC (ваш микроконтроллер) с платы Arduino и вставьте в нее оригинальный Arduino IC (тот, который был на ней изначально). Загрузите в нее тот же самый ArduinoISP sketch который мы загружали на шаге 3.

Шаг 5. Соберите приведенную ниже схему на макетной плате с New IC (вашим микроконтроллером Atmega328) и с оригинальным микроконтроллером на оригинальной плате Arduino.

Макетная плата, соединенная с платформой Arduino

Шаг 6. Теперь в интегрированной среде разработки Arduino выберите пункт Tool (инструменты) и выберите в нем пункт Burn Bootloader.

Запись системного загрузчика

В это время вы увидите как светодиоды Rx и Tx на плате Arduino будут случайно мигать некоторое время. Это значит что Bootloader загружается в новый ATmega 328 IC. После этого интегрированная среда разработки Arduino (Arduino IDE) выдаст сообщение “Done burning bootloader” (то есть загрузка завершена). И теперь вы сможете использовать свой микроконтроллер Atmega328 (‘New IC’) на своей плате Arduino.

Загрузка системного загрузчика завершена

Шаг 7. Теперь соберите свою собственную плату Arduino на чистой макетной плате с использованием пайки и компонентов, перечисленных выше в данной статье, следуя схеме, представленной на ниже приведенном рисунке.

Схема соединений для собственной платы Arduino

Вставьте ‘New IC’ (ваш микроконтроллер) в эту плату. Также вы сможете собрать всю эту систему сразу на печатной плате. Для подключения жидкокристаллического дисплея соедините вашу собранную плату Arduino с оригинальной платой Arduino, используя контакты Rx, Tx, RST and GND оригинальной платой Arduino, как показано ниже на мнемонической схеме или выше на схеме соединений. И загрузите приведенный ниже код.

Удалите оригинальный микроконтроллер с платы когда вы будете загружать код в ваш новый микроконтроллер на макетной плате. Вашу плату Arduino можно запитать с помощью контакта 5v с оригинальной платы Arduino как показано на выше приведенной мнемонической схеме.

Удаление оригинального микроконтроллера с платы

Исходный код программы

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup()
{
lcd.begin(16, 2);
lcd.print("HomeMade Arduino");
lcd.setCursor(0,1);
lcd.print("Circuit Digest");
}
void loop()
{

}

Видео, демонстрирующее работу схемы

(1 голосов, оценка: 5,00 из 5)
Загрузка...
33 просмотров


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *