Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Программирование ATmega8 через Arduino IDE: пошаговое руководство

Компоненты

О проекте

Частый вопрос: можно ли прошить свой скетч в другой AVR, не ATmega328? Причины разные: экономия, другое количество ног, просто есть под рукой. Этот урок показывает, как запрограммировать ATmega8 через Arduino IDE. Метод обобщается на другие ядра из репозитория MCUDude.

Процесс в два этапа: (1) прошивка загрузчика Arduino в ATmega8 с помощью Uno как ISP; (2) загрузка скетча через USB-TTL конвертер.

Часть 1: Установка загрузчика

Шаг 1: Добавление поддержки ATmega8 в Arduino IDE

Используем ядро MiniCore (поддерживает ATmega8, 48, 88, 168, 328).

  1. Файл → Настройки → в «Additional Boards Manager URLs» добавить:
    https://mcudude.github.io/MiniCore/package_MCUdude_MiniCore_index.json
  2. Инструменты → Плата → Менеджер плат → найти MiniCore → установить последнюю версию.

Pinout ATmega8 приведён на схеме.

Шаг 2: Прошивка Arduino как ISP

  1. Файл → Примеры → 11.ArduinoISP → ArduinoISP
  2. Загрузить этот скетч в Arduino UNO.

Шаг 3: Прожиг загрузчика

Соедините Uno с ATmega8:

Uno (ISP)     ATmega8
SCK (13)  →   PB5 (SCK)
MISO (12) →   PB4 (MISO)
MOSI (11) →   PB3 (MOSI)
SS (10)   →   RESET (PC6)

Питание и земля — общие. Кварц 16 МГц с конденсаторами 22 пФ к выводам XTAL1/XTAL2. Резистор 10 кОм на RESET к VCC.

  1. Инструменты → Плата → ATmega8 (выбрать тактирование: External 16 MHz).
  2. Инструменты → Программатор → Arduino as ISP
  3. Инструменты → Записать загрузчик

При успехе появится «Done burning bootloader».

Часть 2: Загрузка скетча через USB-TTL

Теперь у ATmega8 есть загрузчик Arduino. Нужен мост USB-UART — модуль CH340.

Шаг 4: Подключение

CH340       ATmega8
VCC     →   VCC
GND     →   GND
TX      →   PD0 (RX)
RX      →   PD1 (TX)

Кнопка сброса между RESET и GND. При загрузке: зажмите кнопку, нажмите «Загрузить» в IDE, держите до надписи «Uploading…», затем отпустите. МК должен быть в сбросе при старте передачи.

Советы:

Схемы

Две схемы: для прожига загрузчика (Uno + ATmega8) и для работы с CH340.

Производственный процесс

  1. Передача данных температуры и влажности между двумя Arduino через Firebase
  2. Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
  3. Многопозиционная система датчиков температуры для интеграции в умный дом
  4. DIY USB-геймпад на Arduino: собственный высокопроизводительный контроллер
  5. MotionSense: умная система обнаружения проникновения на Arduino и ESP8266
  6. Пожарная безопасность 3D-принтера: умная система обнаружения дыма
  7. Измерение расстояния в реальном времени: Ардуино-сонар с визуализацией в Processing
  8. Pixel Chaser: игра на один тап с NeoPixel Ring и Arduino Nano
  9. Бесшовное управление яркостью светодиодов с помощью Bolt IoT и Arduino UNO
  10. Цифровой компас в реальном времени на Arduino и Processing