Отладочная плата для atmega8 своими руками

Добавил пользователь Валентин П.
Обновлено: 30.08.2024

Микроконтроллеры – отличная основа для большого количества устройств. По сути своей они напоминают компьютер: постоянная память; оперативная память; вычислительное ядро; тактовая частота.

Среди многих семейств и видов МК новички часто выбирают контроллеры AVR Atmega. Однако язык программирования может показаться сложным, поэтому преподаватель из Италии решил разработать простую и удобную плату для обучения.

Родилась Arduino ATmega8, на основе которой можно собрать очень удобное и простое устройство.

Arduino NG - вариант платы Arduino на микроконтроллере ATmega8

Arduino NG - вариант платы Arduino на микроконтроллере ATmega8

С этими платами от Ардуино вы получаете целый ряд преимуществ:

  • готовая разведенная печатная плата со всеми необходимыми компонентами и разъёмами;
  • микроконтроллеры Atmega;
  • возможность программировать без программаторов – через ЮСБ порт;
  • питание от любого источника 5-20 вольт;
  • простой язык программирования и возможность использования чистой C AVR без переделок платы и прошивки.

Характеристики чипа

  • Частота ATmega8: 0-16 МГц
  • Напряжение ATmega8: 5 В
  • Частота ATmega8L: 0-8 МГц
  • Частоат ATmega8A: 0-16 МГц

В реальности почти все микроконтроллеры при рабочем напряжении в 5 вольт работают с частотой 16 мегагерц, если участвует внешний кварцевый резонатор. Если брать внутренний генератор, то частоты составят: 8, 4, 2 и 1 МГц.

Распиновка Arduino ATmega8

Ниже приводим распиновку атмега8, которую можно также найти на официальном сайте производителя:

Добавление устройств АТмега

Есть один нюанс по работе с эти чипом - нам нужно внести некоторые изменений в один файл, чтобы дальше можно было бы программировать микроконтроллеры Arduino ATmega8.

Вносим следующие изменения в файл hardware/arduino/boards.txt:

Таким образом, если мы перейдем в меню Сервис -> Плата, то увидим устройства:

  • ATmega8 (optiboot 16MHz ext)
  • ATmega8 (optiboot 8 MHz int)
  • ATmega8 (optiboot 1 MHz int)
  • ATmega8 (no boot 8 MHz int)

Платы Arduino

Ардуино продаётся во множестве вариантов; главное, что объединяет платы, – это концепция готового изделия. Вам не нужно травить плату и паять все её компоненты, вы получаете готовое к работе изделие. Можно собирать любые устройства, не используя паяльник. Все соединения в базовом варианте выполняются с помощью макетной платы и перемычек.

Сердце платы – микроконтроллер семейства AVR. Изначально был применён микроконтроллер atmega8, но его возможности не безграничны, и плата подвергалась модернизации и изменениям. Стандартная плата, которая наиболее распространена у любителей – это плата версии UNO, существует много её вариаций, а её размеры сравнимы с кредитной карточкой.

Плата Arduino Nano – полный аналог большего собрата, но в гораздо меньших размерах, версия arduino atmega168 была самой популярной и недорогой, но её сменила другая модель – arduino atmega328, стоимость которой аналогична, а возможности больше.

Следующей важной деталью является печатная плата. Разведена и запаяна на заводе, позволяет избежать проблем с её созданием, травлением и пайкой. Качество платы зависит от производителя конкретного экземпляра, но, в основном, оно на высоком уровне. Питание платы осуществляется с помощью пары линейных стабилизаторов, типа L7805, или других LDO стабилизаторов напряжения.

Клеммная колодка – отличный способ сделать надёжное разъёмное соединение и быстро выполнить изменения в схеме прототипов ваших устройств. Для тех, кому не хватает стандартных разъёмов, есть более крупные и мощные платы, например, на atmega2560, у которой доступно полсотни портов для работы с периферией.


На фото изображена плата Arduino Mega 2560. На её основе можно собрать довольно сложного робота, систему умного дома или 3d-принтер на ардуино.

Не стоит думать, что младшие версии слабы, например, микроконтроллер atmega328, на котором построены модели Uno, nano, mini и другие, имеет вдвое больше памяти по сравнению с 168 моделью – 2 кб ОЗУ и 32 кб Flash памяти. Это позволяет записывать более сложные программы в память микроконтроллера.

Проекты на основе Arduino ATmega

Микроконтроллер в современной электронике – основа для любого устройства, начиная от простой мигалки на светодиодах, до универсальных измерительных приборов и даже средств автоматизации производства.

Пример 1

Можно сделать тестер с 11 функциями на микроконтроллере atmega32.


Устройство имеет крайне простую схему, в которой использовано немногим более дюжины деталей. Однако вы получаете вполне функциональный прибор, которым можно производить измерения. Вот краткий перечень его возможностей:

  1. Прозвонка цепи с возможностью измерять падение напряжения на переходе диода.
  2. Омметр.
  3. Измеритель ёмкости.
  4. Измерение активного сопротивления конденсатора или ESR.
  5. Определение индуктивности.
  6. Возможность счёта импульсов.
  7. Измерение частоты – пригодится в диагностике, например, для проверки ШИМ источника питания.
  8. Генератор импульсов – тоже полезен в ремонте.
  9. Логический анализатор позволит просмотреть содержимое пачек цифровых сигналов.
  10. Тестер стабилитронов.

Пример 2

Для радиолюбителей будет полезно иметь качественное оборудование, но станция стоит дорого. Есть возможность собрать паяльную станцию своими руками, для этого нужна плата Arduino, имеющая в своем составе микроконтроллер atmega328.


Пример 3

Для продвинутых радиолюбителей есть возможность собрать более чем бюджетный осциллограф. Мы опубликуем данный урок в дальнейших статьях.


Для этого вам понадобится:

  1. Arduino uno или atmega
  2. Tft дисплей 5 дюйма.
  3. Небольшой набор обвязки.

Или его упрощенный аналог на плате Nano и дисплее от nokia 5110.

Такой осциллографический пробник станет полезным для автоэлектрика и мастера по ремонту радиоэлектронной аппаратуры.


Пример 4

Бывает, что управляемые модули удалены друг от друга или возможностей одной ардуино не хватает – тогда можно собрать целую микроконтроллерную систему. Чтобы обеспечить связь двух микроконтроллеров стоит использовать стандарт RS 485.


На фото приведен пример реализации такой системы и ввода данных с клавиатуры.

Цветомузыка на микроконтроллере Arduino ATmega8

Для школьной дискотеки можно собрать ЦМУ на 6 каналов.

Транзисторы VT1-VT6 нужно подобрать с учетом мощности ваших светодиодов. Это силовые компоненты – они нужны, потому что мощности микроконтроллера не хватит, чтобы запустить мощные лампы или светодиоды.

Если вы хотите коммутировать сетевое напряжение и собрать цветомузыку на лампах накаливания, вместо них нужно установить симисторы и драйвер. Дополнить каждый канал ЦМУ вот такой конструкцией:


Ардуино своими руками

Atmega2560 – хоть и мощный и продвинутый контроллер, но проще и быстрее собрать первую плату на atmega8 или 168.


Левая часть схемы – это модуль связи по USB, иначе говоря, USB-UART/TTL конвертер. Его, вместе с обвязкой, можно выбросить из схемы, для экономии места, собрать на отдельной плате и подключать только для прошивки. Он нужен для преобразования уровней сигнала.

DA1 – это стабилизатор напряжения L7805. В качестве основы можно использовать целый ряд avr микросхем, которые вы найдете, например, серии, arduino atmega32 или собрать arduino atmega16. Для этого нужно использовать разные загрузчики, но для каждого из МК нужно найти свой.

Микроконтроллеры – это просто и весело – вы можете сделать кучу приятный и интересных вещей или даже стать выдающимся изобретателем, не имея при этом ни образования, ни знаний о низкоуровневых языках. Ардуино – шаг в электронику с нуля, который позволяет перейти к серьезным проектам и изучению сложных языков, типа C avr и других.


Всем привет!
Давно ничего не писал, но это не значит что ничего не делал) Потихоньку продолжаю изучать микроконтроллеры семейства AVR, для этого уже давно изготовил маленькую отладочную платку, которую нашел в интернете. Со временем к ней появилось много претензий и было решено сделать свою, которая будет удовлетворять нынешним моим потребностям.
Составил список того, что должно быть на плате:
1. LCD экран с регулировкой контраста
2. 7-сегментный индикатор для динамической индикации
3. Энкодер
4. ИК-приемник
5. Сдвиговый регистр 595, с возможностью подключения к 7сегм.
6. Источник опорного напряжения(ИОН), с простым подключением к AREF (REF43 2.5v)
7. Пищалка
8. Светодиодная линейка
9. Кнопки.
10. Сам МК Atmega328, ну и всякие мелочи типа доп. панельки под микросхемы.







Выпаял МК из старой платы и переставил в новую, тут уже МК стоит в панельке



Пока для моих нужд меня полностью устраивает, предусмотрено подключение внешнего кварца, путем установки двух перемычек подключается ИОН, есть возможность как питания от программатора так и подключение внешнего источника. Все выводы питания на плате защищены самовосстанавливающимися предохранителями. У МК порты сделал разными цветами, что-бы не путаться и в два ряда, что-бы можно было подключить например логический анализатор, что на старой плате было сделать достаточно тяжело.

boards_1

Назначение отладочной платы.

Вот несколько печатных плат, предназначенных для отладочных работ в процессе программирования микроконтроллеров AVR. Данные платы могут работать с ATmega8515, ATtiny2313 и ATtiny26.

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

Названия микроконтроллеров напечатаны на обратной стороне, так что теперь они читаются наоборот. После печати все читаться будет как обычно.

Мы можем разделить эти платы на две категории: (Категория А) плата микроконтроллера (MPU), (Категория Б) плата периферийных устройств. Категория А это платы, которые имеют конкретные микроконтроллеры, в то время как категория Б это платы, которые могут быть подключены к одной из категорий А. Платы категории Б содержат светодиоды (с буферной микросхемой или без нее) или переключатели. Конечно, можно построить другие периферийные платы, которые будет ориентированные под конкретный проект, например, иметь на борту EEPROM, другие микросхемы, кнопки и т.д.

Категория А (MPU).

Микроконтроллеры имеют порты, через которые они общаются с окружающим миром. Как видим на плате, каждый порт имеет отдельный разъем/слот расширения, куда могут быть подключены платы кат. Б. Каждый порт имеет по два параллельных слота расширения, так что мы можем подсоединить две платы кат. Б в каждом порту. Кат. А также имеет порт и для ISP программирования. Обычно он должен быть с расположением контактов 2x3, но в данном случае порядок контактов изменен на 1x6 для того, чтобы легче было развести сами плати. Вы можете изменить кабель, который поставляется с AVRISP или другим программатором ISP, так чтобы он соответствовал этому проекту. Это стоит того. Или можете использовать простой конвертер, который легко сделать самому.

Как видно на рисунках, каждая плата периферии имеет свое имя.

L4 — печатная плата с четырьмя светодиодами с общим катодом и гасящим резистором каждый. Можно подключать эту плату туда, где нужно не более 4 светодиодов, и никакие другие компоненты не должны быть подключены к той же точки в параллель. Если это не так, то нужно использовать периферийную плату с буфером, например B4, которая оснащена буфером с 4 светодиодами. Я предпочел использовать 4093, триггер Шмидта с буферными NAND гейтами, который будет работать так же, как и 4001.

Если нужно подключить от 5 до 8 светодиодов, тогда будем использовать печатные платы L8 или B8 взависимости, нужна буферизация или нет.

Плата с названием S4 имеет 4 микропереключателя с общей точкой. Соответственно, S8 — имеет 8 DIP-переключателей .

На плате EE1 можно подключить ряд EEPROM, таких как 24Cxx, где ХХ = 01, 02, 04, 08. На ней также присутствует дополнительная перемычка, которую необходимо замкнуть, если нужно попробовать другие режимы программирования чипа. После этого вы должны разомкнуть перемычку.

Конструкция.

Внимание! Не используйте переключатели в портах, которые отвечают за ISP сигналы (MOSI, MISO и CLCK). Если переключатель будет включен при программировании, программатор может быть поврежден.

boards_2

В архив включен файл general.lay где присутствуют все платы проекта ExperimentalBoards_v2

Универсальная макетная плата для Микроконтроллера в DIP-корпусе

Телефонный звонок:
— Алло, здравствуйте, скажите пожалуйста, есть ли в наличии микросхема XXYY-ZZ ?
— Минуточку… Есть, но к сожалению, они сейчас только в DIP-корпусе…
— Да? Спасибо… а как пройти в дип-корпус ?

Содержание:

Предисловие

Назначение

Макетка со схемой (обзор)

Конструкция

Пайка

Макетка без схемы (вид сверху)

Макетка без схемы (вид снизу, пайка)

Пайка некоторых узлов далась с трудом (здесь видно, что легче было бы использовать свою печатную плату, разведённую специально под задачу):

аспект пайки: Сложнее всего было разводить разъёмы JTAG-ISP
аспект пайки: Разводка и обвязка Кнопочек и Светодиодов - также потребовала терпения
Плата в изопроекции (вид снизу, пайка)
Плата в изопроекции (вид снизу, пайка)

Наконец, чтобы защитить макетную плату в эксплуатации от коротких замыканий, плата была покрыта снизу прозрачным пластиком (это позволяет свободно обозревать коммутации и напоминать пользователю разводку макетной платы):

Защита контактов (пайка снизу закрыта прозрачным пластиком)

Схема

Макетная плата состоит из нескольких, не соединённых между собой, функциональных блоков. Связи между ними устанавливает сам пользователь, с помощью монтажных проводов — таким образом, достигается гибкость и прозрачность разводки макета. Для подключения проводов, на плате используются цанговые гнёзда, обеспечивающие надёжный контакт. Макетная плата предоставляет всю необходимую стартовую обвязку для работы микроконтроллера.

Функциональные блоки и Схема принципиальная макетки

Применение

Макетка с работающей схемой (вид сверху)

Программатор-отладчик

Подключать программатор можно через: 6-пиновый или 10-пиновый штырьковый разъём (как наиболее распространённые стандарты), а затем разводить перемычками, с цанговой панели к гнезду микроконтроллера — при этом, распиновка разъёма программатора не имеет никакого значения! Так что, можно использовать любой программатор, для любого семейства микроконтроллеров…

Внутрисхемная коммутация

Питание схемы

Блок управления питанием и кнопка Reset

Источниками питания могут служить:

Поэтому, для подключения внешнего питания, предусмотрены разнообразные разъёмы:

Подключение Кварца

Разводка и подключение Кварца к микроконтроллеру

Что здесь можно улучшить?

2) Для серийности: вместо сборки устройства на универсальной макетной плате — следует развести свою печатную плату (см. ЛУТ), рационализировав компоновку узлов, и используя некоторые элементы в SMD-исполнении.

Решение: Выпрямительный мост на МОП-транзисторах (мизерное падение напряжения)

Для сравнения, промоделируем аналогичную схему, на классическом диодном мосте:

Синхронный мостовой выпрямитель на МОП-транзисторах, спаян объёмным монтажом

Читайте также: