AVR-конструктор.

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

После этого я прикинул что мне необходимо и начал разрабатывать модули. Для разработки использовался Diptrace, который к тому времени уже был хорошо освоен. Итак что имеем

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

Модуль ввода-вывода. Включает в себя
  • 3 группы разных цыетов по 5 светодиодов, включаемых логической 1

  • 6 кнопок выдающих логическую единицу по нажатию (подтянуты к земле)

  • 2 переменных резистора на 1кОм и 10кОм
    5 пинов подтянутых 10 кОм-ными резисторами к плюсу питания (VCC)
    5 пинов подтянутых 10 кОм-ными резисторами к земле (GND)
    фототранзистор, у которого оба вывода выведены на штыри (никуда не подключены)
    2 мощных светодиода, управляемых транзисторами
    2 порта для 1-Wire c подтяжкой линии данных к VCC резистором на 4.7 кОм
    2 интегрирующих цепочки


  • Модуль часов реального времени (RTC) DS1307. Тут все просто. Линии SCL, SDA, SQW подтянуты к VCC 10 кОм-ными резисторами. На плате установлена батарейка CR2032.


    Модули с микроконтроллерами. Два модуля на ATtiny2313 и ATmega32, на обоих модулях выведен разъем для программирования (10-контактов), установлена кнопка сброса, установлен светодиод питания, на модуле с ATmega32 установлен отключаемый кварц (джамперы) и предусмотрена возможность подтяжки выводов I2C джамперами к VCC.


    Модуль питания. Данный модуль выдает напряжения 5 и 3,3 вольта. Построен на микросхемах NCP1117 Модуль питается либо от mini-USB, либо от блока питания от жесткого диска (у меня еще зарядник от нокии переделанный с таким разъемом). Наличие напряжения индицируется светодиодами. Предусмотрена защита от КЗ (диодами Шоттки), а также возможноть переключения между источником входного напряжения. Дополнительно можно отключить любой из стабилизаторов от входного напряжения и подать на его вход напряжения с другого источника.
    Также на плате было размещено 10 4х-контактных штыревых линейки, для расширения линий при конструировании.

    Модуль с RGB-светодиодами и модуль преобразователя уровней 5-3,3 В.
    В первом просто два светодиода с резисторами. Второй модуль собран по известной схеме на полевых транзисторах из документации на I2C шину.


    Транзисторный модуль. Включает в себя 8 n-p-n транзисторов на 100 mA и 4 n-p-n транзистора на 500 mA для управления различными нагрузками. Включены по схеме с общим эмиттером. Управляются логической 1. Для удобства плюс питания нагрузки подключен к плюсу питания схемы джампером. То есть можно снять джампер и питать одну нагрузку от 12 В, а другую от 9В. Главное транзисторы не спалить :)

    Модуль 4х-разрядного 7-сегментного индикатора с общим катодом. Довольно-таки простой и удобный модуль. Цифры управляются транзисторными ключами.

    В довершение статьи приведу фотографию своего программатора. Собран по этой схеме



    Схемы я прошиваю через AVR Dude.

    Некоторые уже заметили наверное отсутствие в наборе ЖК-дисплея. Просто у меня его нет) поэтоум и модуль не разводил.
    Все модули соединяются с помощью кучи вот таких вот проводков которые легко изготовить самому.


    В итоге получился удобный конструктор, для разработки устройств на контроллерах. Причем многие модули можно использовать не только с AVR-ками, но и с любыми другими микроконтроллерами (STM32, MSP430, PIC) или с той же платой Arduino.

    В архиве все платы со схемами и разводкой. Отмечу, что тут перечислены не все модули, несколько модулей дальше Diptrace просто не ушли :( изготовлю их при необходимости :)

    Архив
  • 0
  • 31 мая 2014, 02:18
  • Skyer

Комментарии (0)

RSS свернуть / развернуть

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.