Магазин / аукцион / FPR / donate / услуги / RSS / распечатать / вход 
Мой мир
Вконтакте
Одноклассники
Google+

Отладочная плата ORCINUS BOARD для ATmega16(32). Постановка задачи.

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

Отладочная плата Orcinus board для ATMmega16(32).

Питание

Основа любой электроники — это питание. На отладочную плату питание можно подать двумя путями: USB и джек под стандартный штекер питания. Питание от обоих источников подходят к общему селектору питания. С его помощью можно подать питание на основную плату. А ещё можно подать на плату питание с одного источника, а вывод другого подать на другое устройство размещённое на плате. Так же по всей плате есть перемычки с джамперами, позволяющими отключать питание от: микроконтроллера, SD-карты и сетевой карты. На плате есть фиксирующаяся кнопка включения питания. Так же микроконтроллер можно отключить от питания платы и запитать через ISP-ранельку программатора.

Вход питания через джек подаётся на селектор питания PWRS, состоящий из трёх пинов. DI — защита стабилизатора через диод (является рекомендуемым выбором). IN — пин идущий на прямую к центральной жиле джека питания, с его помощью можно скоммутировать вход блока питания на питание отладочной платы (использовать по необходимости и с полным осознанием того, что на входе стабилизированные 5 вольт). F — полный выход на стабилизатор, минуя диод (подходит в случае, когда падение напряжения на диоде критично и есть уверенность, что нет переполюсовки).

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

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

Между селектором питания и кнопкой выключения питания платы установлен самовосстанавливающийся предохранитель. Очень удобная вещь и пару раз по запарке коротнув питание я убедился в необходимости подобного предохранителя. На выходе джека питания стоит диод для защиты от переполюсовки. Но из-за падения питания на диоде необходимо использовать входное питание от 9 до 12 вольт.

Всё легко, просто и вполне достаточно для моих экспериментов.

Кстати, до стабилизатора, но после диода есть выводы PP с которых можно снять питание. Это пригождается в случае когда нужно подать питание для реле или прочего оборудования. Пять вольт можно снять с колодки. На колодку заведены пины питания и земли, что позволяет одним двойным проводком утащить питание куда угодно.

Интерфейсы

С помощью микросхемы FTDI FT232RL со стороны компьютера создаётся виртуальный COM-порт. А со стороны отладочной платы мы получаем UART. Мало того, на плате разведён программатор на основе этой микросхемки. Ещё с неё выведено три пина которыми можно управлять из самописной программы на компьютере.

На плате сделана развязка для работы с TWI (IIS) интерфейсом. При этом выведена не одна группа разъёмов, а сразу три, чтобы можно было подключить три устройства сразу. Как минимум на плате разведена микросхема часов реального времени и она работает по TWI.

Развязка шины MicroLan она же однопроводная шина Dallas. Эту шину можно подключить джампером к порту микроконтроллера.

На плате разведена колодка для ISP-программирования. Но так же с колодки порта можно взять пины порта SPI и увести его на нужное устройство. Делать его отдельной колодкой я не стал так как места на плате под ещё один разъём не нашлось. Но можно подключить одно устройство на пины порта, а другое устройство на пины колодки ISP-программатора.

На плате разведено четыре порта ШИМ-контроллера. Сделана развязка для использования ШИМ-контроллера.

На плате разведён слот для подключения SD-карточек, он уже адаптирован для использования с пятивольтовыми уровнями. Интерфейс подключения SPI. Так же у карточки свой собственный блок преобразования 5 вольт в 3.3 вольта. Пины карточки жестко не зафиксированы, по этому её можно увести шлейфами на другую плату.

Ethernet-интерфейс используется для общения с внешним миром с использованием сети Ethernet. Сеть основана на контроллере ENC28J80, довольно глючном и содержащим массу ошибок. Но это единственный вменяемый контроллер за вменяемые деньги. Контроллер работает по стандарту 10BASE-T. Этот интерфейс работает на скорости 10 Мбит/сек с поддержкой дуплексного и полудуплексного режима. Для аппаратного переключения дуплексного режима установлен переключатель. Хотя дуплексом можно управлять программно.

Индикация

Индикация питания. Индикация питания, на мой взгляд, очень гибкая. Два светодиода показывают наличие входящего питания на USB и на штекере внешнего питания. Еще один светодиод показывает наличие питания на внутренней шине питания платы. Один индикатор показывает наличие питания на микроконтроллере. Один индикатор показывает наличие питания на SD-карте. Один светодиод для индикации питания на сетевой карточке.

Два индикатора RX и TX, установленные на плате показывают активность чтения и записи на шине USB-UART.

Индикаторы на сетевом интерфейсе показывают активность интерфейса, а так же режим дуплекса сетевой карты.

Десяти сегментный блок светодиодов. Удобен для индикации и практически не занимает места. Светодиодные сегменты зажигаются высоким уровнем.

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

На плате распаяно посадочное гнездо для LCD HD44780 (WH1602B) со всей необходимой развязкой. От этого экранчика можно утянуть проводками хоть четырёх проводную, хоть восьми проводную шину управления на микроконтроллер. Это же гнездо используется для подключения модулей расширения по десяти контактной схеме проекта LazyHome.

Пьезодинамик так же имеет сложную схему управления. На него можно подключить внешнее питание и управлять высоким уровнем. Можно накинуть джампер и вместо высокого уровня использовать питание от платы. Так же можно плавно управлять громкостью подключив вывод питания к ШИМ.

Управление

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

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

Набор кнопок. Никаких матриц и никаких резисторных сборок. Обычные кнопки с подтяжкой к шине питания. Девять кнопок выведено на правую сторону платы чтобы иметь быстрый доступ. Так же подобное расположение кнопок позволяет нащупывать их интуитивно. Ещё одна кнопка выведена в середине платы и может быть подключена к микроконтроллеру через джампер.

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

Иные примочки

Самый главный и приятный ништяк — это наличие программатора под AVRDude на борту. Он подключается несколькими проводками. Его можно использовать для прошивки как собственного микроконтроллера на борту, так и любой внешней системы с микроконтроллером.

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

Конвертор напряжения для согласования 3.3 вольтовое оборудование и 5 вольтовое оборудование. Самый обычный проверенный конвертор.

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

Разборное подключение ШИМ-контроллера. Цепочки ШИМ-контроллера сделаны таким образом, чтобы джамперами можно было подключить фильтр для ШИМа, либо подключить светодиодик к микроконтроллеру через резистор. Так же можно убрать все джамперы и мы получим отдельно светодиод, отдельно конденсатор. Воспользовавшись одним джампером, можно подключить RC-фильтр к ножке микроконтроллера.

Так как периодически возникает необходимость использовать NPN и PNP транзисторы, я решил сделать сборку из NPN и PNP транзисторов. В сборке уже установлены резисторы со стороны базы.

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

Заключение

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

• Перейти в раздел микроконтроллеры


Комментарии

Включите JavaScript для комментирования.


Сообщайте нам о замеченных ошибках на: web@orcinus.ru. Все пожелания и советы будут учтены при дальнейшем проектировании сайта... Мы готовы сотрудничать со всеми желающими. Мнение авторов может не совпадать с точкой зрения редакции сайта www.orcinus.ru. В некоторых случаях, мнение автора может не совпадать с мнением автора! Phone: +7-902-924-70-49.

Рейтинг@Mail.ru LiveInternet Rambler's Top100 Яндекс.Метрика