Схема отладочной платы для avr. Ручное изготовление печатной платы

Не так давно я начал интересоваться микроконтроллерами. Сперва сделал простой программатор для AVR от LPT порта. Потом начал собирать всякие устройства с их применением. Все бы хорошо, но не покидал вопрос «а как это работает?». Имея немного свободного времени, скачал с интернета пару книг по программированию микроконтроллеров AVR. Сел и начал изучать. Сперва ничего не мог понять. Мозг кипел, и хотел вырваться наружу. Через несколько недель вроде стал понимать суть вопроса. Начал с ассемблера. Попрактиковался в AVR Studio мигать светодиодами. Позже перешел на C . На нем писать легче. Но все же надо начинать с ассемблера - так легче понять, как работает микроконтроллер и что это вообще такое. Тестировал свои прошивки в Proteus . Было интересно, но не то... Хотелось попробовать в железе. Не хочу сказать, что я крутой программист – просто начинающий кодер.

Схемы, как таковой, нет. Все подключения стандартные из даташита. Кто захочет писать программы - тот разберется. Да и резисторы могут отличаться от указанных на плате в довольно широких пределах. Все выходы тоже подписаны. Так что схему отдельно не составлял, но архив с печатной платой имеется .


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


Еще приделал два дисплея. Один символьный ЖК дисплей, а другой семисегментный индикатор. Подвел к ним питание.


Так же на отдельной плате установил дисплей от мобильного телефона Nokia-1202 .


Библиотеки для работы с этим дисплеем нашел в интернете. Все ножки контролера, дисплеев, кнопок и светодиодов выведены на соединительные штырьки. Соединение проводиться проводами с напаяними на них контактами.

Еще один простой пример изготовления отладочной платы, но на этот раз для устройств с применением микроконтроллера ATTiny2313. Расположение ножек для программирования у ATTiny2313 идентичное ATTiny13. Соответственно и платы выйдут похожими. Отличием от будет наличие внешнего задающего генератора (кварца). По умолчанию, с завода ATTiny2313 поставляется с включенным внутренним генератором, поэтому если работа микроконтроллера не планируется от внешнего генератора его можно не устанавливать. Разъем питания дублируем на случай подключения к плате программатора с питанием от схемы (на один разъем подаем питание, с другого питаем программатор).


Для изготовления отладочной платы устройств на ATTiny2313 нам нужно:


Собираем отладочную плату по рисунку:

1 припаиваем в панельку под микросхему и штырьки (как на рисунке);
2 как показано на рисунке (красная линия) делаем перемычку с лицевой стороны платы. Еще одну перемычку делаем с другой стороны;
3 перемычками-«соплями» соединяем штырьки и ножки панельки (места пайки обведены зеленым).

Наша отладочная плата готова!

Заключение.

— Ставим метки на GND, SCK для правильного подключения питания и программатора;
— Все остальное на отладочную плату будет допаиваться в согласно выбранной схемы устройства. (как вариант можно допаять штырьки к каждой ножке микроконтроллера для подключения других плат и периферии);
— Для более надежной работы в условиях повышенных помех очень желательно дополнить схему, подтягивающим к питанию ножку сброса, резистором (внутренний подтягивающий резистор имеет сопротивление около 10 кОм – этого бывает мало) и фильтрующим керамическим конденсатором на ножках питания (в пределах 0.1 мкФ);
-Теперь вставляем в панельку микроконтроллер и при помощи прошиваем ATTiny2313 нужной прошивкой.

(Visited 16 070 times, 1 visits today)

Раздел: Метки: ,

Навигация по записям

Простая отладочная плата для устройств AVR ATTiny2313 с кварцем. : 70 комментариев

  1. GetChiper Автор записи

    Фьюзы трогали?
    На другой тини2313 проверяли?

  2. Toxa12345

    я долго мучался о том: «КАКОЙ жэ мк выбрать» остановился на тиньке 2313 по тому, что она дешевле атмег, и не настолько кострирована как тинька 13 так жэ изза наличия линий RxD и TxD что позволяет осуществить связь по ЮАРТ
    З.Ы. у нас в Курске купить МК не проблема. тинька 2313-стоит 130 руб. а атмега8 аж 200руб про тиньку 13 не узнавал

  3. GetChiper Автор записи

    А может ATmega88 или ATmega48?

  4. Andrey1979

    Доброго времени.
    Собрал я плату по предложенной схеме, подключил к USBasp, подключил 2313, подал 5 в. Extreme Burner выдает Incorrect Chip Found. Соответственно ничего не прошить не считать нельзя. При замене тиньки то же самое.
    Кто нибудь сталкивался с подобным?
    Возможно это связано с помехами?

    «– Для более надежной работы в условиях повышенных помех очень желательно дополнить схему, подтягивающим к питанию ножку сброса, резистором (внутренний подтягивающий резистор имеет сопротивление около 10 кОм – этого бывает мало) и фильтрующим керамическим конденсатором на ножках питания (в пределах 0.1 мкФ);»

    а еще, специально для чайников, можно ли отразить данные действия в виде схемы.

  5. GetChiper Автор записи

    Чего там отображать.
    Конденсатор ставится параллельно питанию (т.е. между ножками 10 и 20)
    Резистор 10 кОм ставится между Vcc и сбросом (т.е. между ножками 1 и 20)

  6. Andrey1979

    Спасибо за ответ. Поставил 4,7 КОм и 220пФ. Стало немного веселее. extreme burner пишет то же что и было. А вот khazama через раз сообщает The chip signature is 0x1e000. MISMATCH Expected signature for ATTiny 2313 is 1e 91 0a. В остальных случаях также пишет ошибку соединения.

    Использую беспаечную макетную плату, так что проблем с грязной пайкой быть не должно. Где еще можно поискать?

  7. GetChiper Автор записи

    220пФ маловато. Нужно 0.1 мкФ — керамический (не полярный) и 10-100 мкФ электролитический (полярный) поставить в параллель.

  8. Dederik

    добрый день))) я ненашел кварц 20,000 вместо него толька смог найти кварц 4,000. если я поставлю кварц 4,000 то у меня будет тормозит микро-р? и конденсаторы то же надо ли менять для кварца 4,000? я живу в самарканде с радио запчастями у нас проблема(((даже и незнаю где найти панельку под микрокон-р(((можна ли самому сделать панельку под микро-р?

  9. Dederik

    ответе хоть кто нибудь)))

  10. GetChiper Автор записи

    Спокойно — были выходные 🙂

    Кварц можно поставить любой если Вы планируете на этой платке учиться и делать свои устройства (конденсаторы под кварц менять не нужно). А можно вообще не ставить кварц — пользоваться встроенным RC-генератором.

    Насчет сделать панельку — может просто насмерть припаять МК в макетке?

  11. Dederik

    спасибо за помощь))) у меня еще один к вам вопрос, но не по теме не знаю где и задать(((сегодня ко мне принесли электронный счетчик на ремонт Holley DDS28. я там покопалься и нашел там микро-р Fudan FM24C02 которая отвечает за показания счетчика. в микро-ре храниться вся запись. не подскажете как сделать под него программатор чтоб можно было считывать и редактировать данные микро-ра??? и как к вам на прямую писать???

  12. GetChiper Автор записи

    FM24C02 — это последовательная энергонезависимая память (EEPROM)
    я думаю найдется много шнурков и программ для этого дела (если поисковик поспрашивать) — вот первое попавшееся http://www.msplata.ru/teleprog.html

  13. Dederik

    Спасибо за помощь:-)

  14. kosmogon

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

Схему, как таковую, я не составлял, все брал из головы. Размеры сего чуда 150х100мм Плата изготавливалась при помощи фоторезиста.
После приезда деталей плата была собрана и протестирована. Сложностей в сборке не возникло, разве что FT232 припаять Теперь я расскажу, что именно я сюда напихал

1. Питание. Плата может быть запитана как от внешнего источника, так и от верхнего разъема USB, выбор источника осуществляется джампером PS/USB В цепи питания от USB стоит самовосстанавливающийся предохранитель на 400мА для защиты порта. Стабилизатор мне попался 78R05, он с 4 выводами, последний отвечает за блокировку стабилизации. Без проблем можно переделать и под классический стабилизатор. Также можно выбрать и напряжение питания, либо 3.3, либо 5 Вольт при помощи джампера CPU_Power. Снизу на штырьки выведены напряжения: 5V, 3.3V и GND соответственно
2. Преобразователь USB-UART служит для связи микроконтроллера с ПК, выполнен на микросхеме FT232RL, разведен весь виртуальный COM порт и выводы UART с индикацией приемо-передачи. Снизу распаяны три штырька. Можно запрограммировать внутреннее EEPROM микросхемы при помощи программы MProg, и на них, к примеру, будет присутствовать тактовый сигнал. Я использую их для разлочки МК, проводок накинул-разлочил. Удобно! Также можно зашить ПЗУ на отображение режимов работы
3. Блок подтяжки уровней. Незаменимая вещь при работе с такими протоколами как 1-Wire и I2C, можно подтянуть вывод к питанию через резистор, а можно и к земле.
4. Сборка Дарлингтона ULN2003 в SMD исполнении для коммутации мощных нагрузок.
5. Блок сопряжения логических уровней 3.3-5V для работы со всякими низковольтными микрухами
6. Собственно сами панельки под МК, DIP-20, DIP-40 и DIP-28. Выводы для подключения кварца распаяны на цанговых контактах
7. Столбик светодиодов, загорающихся от логической единицы
8. Микросхема часов реального времени DS1307, со всей обвязкой (гнездо под батарейку находится под дисплеем) Часто используется радиолюбителями
9. Стандартные ISP-10 выводы для прошивки и кнопки сброса с отключаемой подтяжкой вывода Reset
10. Блок резисторов, два подстроечных и один перменный, два резистора при установке джамперов образуют делители напряжения. Также блок из 4 RC цепей для работы с ШИМ. Ну и пищалка с усиливающим транзистором.
11. Матричная клавиатура, при снятых джамперах превращается в кучку независимых кнопок, также можно подтянуть к земле
12. Двустрочный LCD дисплей. Подробно останавливаться на нем не буду, скажу только то, что подсветка управляется транзистором
13. Счетверенный семисегментный индикатор с общим анодом (можно воткнуть и с общим катодом), объединённый со сдвиговым регистром 74HC595. Я решил для экономии места объединить эти два девайса. Выбор режима работы осуществляется джампером Hi-Z/OE. Джампер OE-работаем с регистром, Hi-Z переводит выводы регистра в высокоомное состояние, можно подключаться напрямую к сегментам

Вот и все! В заключение скажу, что плата проявила себя с лучшей стороны и я очень ею доволен, все соединяется проводками с контактами от BLD разъемов, все это изолировано термоусадкой Вот плата в работе, отлаживаю программу, проводов, конечно, куча

Мой программатор, это многим знакомый AVR-910, но перешитый в STK-500, работает с AVR-Studio, да и скорость работы в разы выше! В архиве находится файл печатной платы и прошивка STK-500 с драйверами

Ну и еще несколько фото

Статьи была описана сборка важной части нашей отладочной платы - схемы питания. Стоит сказать, что блок питания не всегда обязательно должен быть на любой отладочной или макетной плате. Если уже имеется готовый блок питания в виде готовой конструкции, то можно использовать и его. Широкое распространение получили и так называемые "лабораторные" блоки питания, имеющие одно или несколько стандартных выходных напряжений, часто регулируемых. Подобный блок питания также можно собрать самому или приобрести готовый. Тогда не потребуется каждый раз собирать схему питания для тестовых конструкций.


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


Рис. 1. Основные детали.

В качестве основы возьмём AVR-микроконтроллер ATmega8 . Это достаточно мощный микроконтроллер с большим объёмом памяти и разнообразной периферией. Можно также применить и любой другой микроконтроллер. С примером использования микроконтроллера ATtiny2313 на этой отладочной плате можно ознакомиться в другом варианте этого текста по ссылке: .

Как всегда, первым делом после выбора детали, нужно ознакомиться с расположением её выводов и основными характеристиками. Вся нужная информация для ATmega8 содержится в её . Помните, почти все выводы микроконтроллера могут иметь несколько функций. Эти функции можно выбирать при написании программы для µC. И на это следует обращать внимание уже на этапе составления принципиальной схемы. Кроме того, уже в процессе составления схемы удобно использовать условное обозначение деталей с "живой" распиновкой, то есть, при обозначении детали на схеме, чертить выводы так, как они расположены на самом деле. Тогда размещение компонентов и на схеме, и на плате будет происходить проще, понятнее и с меньшим количеством ошибок. (Почти во всех редакторах схем есть возможность нарисовать своё собственное условное обозначение детали.)

Начертим схему:



Рис. 2. Схема с микроконтроллером ATmega8 .


Кварцевый резонатор Q1 с конденсаторами С1 и С2 образуют источник тактового сигнала для микрооконтроллера µC1. Это очень чувствительная к помехам часть схемы, поэтому проводники для нее следует выбирать минимальной длины, а к проводнику между С1, С2 и восьмой ножкой µC1 (утолщённая линия на схеме) ничего больше не присоединять. Резистор R1 и конденсатор С3 образуют цепочку сброса для микроконтроллера. Резисторы R2-R5 необходимы для ограничения тока через свтодиоды LED1 -LED4 . В цепи питания стоит блокировочный конденесатор С4. В качестве источника питания будем использовать стабилизатор, собранный в первой части статьи. (Список всех возможных замен в схеме расположен в конце этой страницы.)


Рис. 3. Распространённая распиновка ISP-вилки.

Проводники для программирования следует подключить к одноимённым проводникам программатора. Эти проводники удобно подключить к ответной части разъёма имеющегося программатора с помощью стандартной вилки для установки на плату IDC-10MS (Рис. 3). Точное расположение выводов на этой вилке необходимо обязательно сверить с имеющимся программатором!




Рис. 4. Верх платы.

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


Рис. 5. Низ платы.

Проводники питания лучше всего взять какого-то другого цвета; для плюсового провода можно взять красный, для минуса - синий или чёрный цвет. При разведении соединяющих проводников с обратной стороны платы не забываем о "зеркальности"!
Ровненько установить светодиоды можно следующим образом: продев небольшую полоску картона между выводами светодиодов, установить их в отверстия платы, с обратной стороны отрезать лишнюю длину выводов и запаять их. После пайки ножек полоску картона можно вынуть, Рис. 6.


Рис. 6. Установка светодиодов.



Перед включением ещё раз проверим правильность соединений, а самое главное - правильность разводки проводников питания к микроконтроллеру!
Если при подключении питания зелёный сигнальный светодиод в схеме стабилизатора светится и ничего не нагревается, значит схема собрана правильно.
Теперь можно себя поздравить, мы только что получили собранную своими руками настоящую отладочную плату!
Сразу же загрузим в микроконтроллер простейшую программу мигания светодиодами: . После загрузки прошивки в микроконтроллер светодиоды начнут поочерёдно мигать. Время свечения и пауз будет приблизительно равно одной секунде:

Видео 1. Работа тестовой прошивки.

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


Возможные замены в схеме с микроконтроллером ATmega8 Рис. 2:

  • Кварцевый резонатор Q1 можно применить на частоту от 2 до 8 Мегагерц. Тестовая прошивка (мигание светодиодами) будет работать медленнее или быстрее.
  • Конденсаторы С1 и С2 должны быть одинаковой емкости от 18 пФ до 27 пФ.
  • Ёмкость конденсаторов С3 и С4 может быть от 0,01мкФ до 0,5 мкФ.
  • Резистор R1 может быть заменён на другой, сопротивлением от 10 до 50 кОм.
  • Токоограничительные резисторы R2-R5 могут иметь сопротивление от 680 Ом до 1 кОм.
  • Светодиоды LED1 -LED4 могут быть любого цвета и размера.
  • Основной микроконтроллер может иметь следующие обозначения: ATmega8L -8PU, ATmega8 -16PU. Главное, чтобы он был в корпусе DIP или PDIP.


Дополнения:

  • ZIP: Тестовая прошивка мигания свтодиодами .
  • URL: .

Смелых и Удачных Экспериментов!!!

Обычно еще до сборки окончательного варианта устройства, происходит его отладка. Отлавливаются баги в программе, подбираются номиналы деталей итд. Для удобства применяют отладочные платы. На отладочной плате как правило размещаются различные кнопки, индикаторы, преобразователи интерфейсов да и еще куча всего. Тут многое зависит от потребностей разработчика. Кому-то потребуется Ethernet с USB, а кому-то и обычного RS-232 с несколькими светодиодами да парой кнопок за глаза. Это уже вторая версия моей отладочной платы. Первая была неплохой, но все же в ней было небольшое количество мелочей которые я не учел. В этой отладочной плате я старался учесть все то в чем чаще всего возникает потребность у разработчика устройств на микроконтроллерах AVR.

Что есть на этой плате

  • 8 светодиодов с токоограничивающими резисторами. Делать больше восьми штук смысла нет, и меньше тоже т.к. их сразу при помощи одного восьмижильного шлейфа соединить с портом контроллера. Очень удобно на мой взгляд
  • Линейный стабилизатор обеспечивающий плату 5-ю вольтами. Стоит на радиаторе на всякий пожарный. Греется ощутимо.
  • DC-DC преобразователь на 3.3 вольта. Некоторые микросхемы питаются от 3.3 вольт, именно для них этот стабилизатор и предназначен. Кстати от этого напряжения может быть запитана сразу вся плата, нужно только перекинуть перемычку в нужное положение.
  • Преобразователь RS-232 <-> TTL . В комментариях не нуждается. Почему не USB? Просто тупо закончились порты:-)
  • Генератор на 74HC00 . На всякий пожарный если вдруг криво прошились фьюзы. Редкое явление у меня, но на всякий случай решил добавить. Генерит меандр частотой около 2 мГц.
  • R-2R ЦАП. Вещь одноразовая т.е. поиграл и забросил. Развел на плате чисто по приколу т.к. оставалось пустое место.
  • Пара N-канальных мосфетов . Мало-ли, вдруг придётся управлять чем то мощным. Например каким-нибудь движком. Поэтому пусть будут.
  • 4 резисторных делителя. Необходимы для сопряжения 3.3 вольтовой логики с 5-ти вольтовой.
  • ZIF панелька. Благодаря ей можно без труда устанавливать любой контроллер в дип корпусе. От восьминогой тини до 40-ка ногой меги.
  • Светодиодный семисегментный четырёхразрядный индикатор. К каждому сегменту прикручен токоограничевающий резистор, все сегменты соединены между собой.
  • 28-и контактная панелька. Воткнуть второй контроллер или еще чего. Может пригодится.
  • 8 кнопок с управляемой подтяжкой. Без кнопок ни куда. Основное средство ввода данных в микроконтроллер. Подтяжка может отключаться индивидуально для каждой кнопки при помощи группы переключателей. Подтягиваться кнопки могут как к плюсу питания так и к минусу.
  • Бипер с транзисторным ключом. Иногда нужно пропищать.
  • Переменный резистор. Иногда нужен для отладки программ работающих с АЦП
  • Обвязка для I2C. Два обычных резистора на 4.7к. Могут отключаться/подключаться перемычками.
  • Источник опорного напряжения на TL431 выдает пять вольт. Перемычкой подключается к контроллеру.
  • Две интегрирующих цепочки для отладки ШИМ.
  • Разъем для отладки проектов с программным интерфейсом USB . Кроме самого разъема еще имеется необходимая обвзяка.
  • Разъём для подключения SD карты памяти .

Почти все детали SMD. вот так выглядит обратная сторона платы:

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

Питание платы
Плата может питаться от внешнего источника питания выдающего напряжение примерно 12 вольт. Конечно можно и больше но линейный стабилизатор будет греться сильней. 5 вольт так же можно получить от программатора, jtag отладчика и порта USB. Если требуется питание 3.3 вольта то может быть задействован DC-DC преобразователь. Выбор нужного источника осуществляется спец перемычкой.

Разъёмы на плате
Разъемы jtag и isp — мои собственные и скорее всего не совместимы с другими отладчиками и программаторами. Но я думаю не составит труда переделать их как вам нужно.

Схема и печатка
Косяков в разводке пока замечено не было. Но это не значит что их нет! Поэтому лучше всё еще раз проверить. Схема данной платы не составлялась по одной простой причине что состоит она из независимых друг от друга кирпичиков (DC-DC преобразователь, преобразователь уровней итд) схемы которых можно найти у меня на сайте да и в инете вообще. да и тем более все номиналы подписаны на самой печатке. Если на выходных смогу победить лень, то нарисую:-)

Для изготовления платы понадобятся:

Индикация

Разъёмы и панельки

Наименование Количество шт.
SCZP-40 ZIF-панелька с нулевым усилием 1
SCS-28 Панелька под микросхему DIP-28 1
104B-TAA0-R Держатель для SD/MMC карты 1
USBB-1J Розетка USB на плату угловая тип B 1
DRB-9MA Разъем D-SUB 9 контактов, вилка на плату угловая 1
Разъем питания 7-0088 на плату, 5.5 x 2.5 мм 1
Штыри PLS. Продаются сразу в виде ряда штырей. Их надо разламывать и запаивать. Ломать их легко. Я насчитал 324 штырька. Лучше взять с запасом штук 350. 324

Микросхемы

Кнопки и переключатели

Резисторы SMD 1206

Наименование Количество шт.
220 Ом 19
68 Ом 2
0 Ом 20
1 Ом 3
4.7 кОм 3
10 кОм 6
2.2 кОм 3
100 Ом 4
820 Ом 1
1 кОм 11
2 кОм 11
1.5 кОм 5
3.3 кОм 1
Статьи по теме: