Отладочная плата на ATtiny13
Когда я решил освоить программирование микроконтроллеров AVR несколько глубже уровня Arduino, то подумал, что не плохо было бы иметь под рукой отладочную плату (или макетную плату - кому как больше нравится), имеющую на борту всё необходимое. Среди моего хлама нашлось фотореле на микроконтролле ATtiny13, ранее плохо лежавшее найденное в какой-то электрощитовой. Из него я и выпаял МК и взял за основу отладочной платы. Tiny13 - это младшая модель в линейке AVR. Она имеет на борту всего 6 ножек ввода-вывода и 1КБ памяти под прошивку, но этого вполне достаточно для простых поделок и в самый раз для обучения.
Схему отладочной платы позаимствовал отсюда, исправив в ней явные косяки и добавив джамперы на все порты для большей гибкости:

Всё это разместилось на односторонней печатной плате размером 35х60мм:
Плата разведена под МК в SOIC корпусе. Все остальные элементы использовались дискретные.
Проект платы в Sprint Layout можно скачать тут.
Вот так выглядит устройство в сборе:
Устройство имеет:
- кнопку сброса;
- две кнопки (на портах PB3, PB4);
- переменный резистор 10кОм (PB4);
- четыре светодиода (PB0-PB3);
- светодиод индикации питания;
- разъём для подключения внутрисхемного (ISP) программатора.
Все периферийные кнопки, светодиоды и переменный резистор, при необходимости, могут быть подключены или отключены джамперами. При их отключении, порты PB0-PB4 можно задействовать для подключения внешних устройств (реле, датчиков, и т.д.). Порт PB5 в данном устройстве не используется, поскольку его пин постоянно занят под reset*. Таким образом, на данной отладочной плате можно поучиться мигать светодиодами, можно тестировать программы для разрабатываемых проектов, а при необходимости, и саму плату можно установить в какое-нибудь законченное устройство.
* ATtiny13, обычно, с завода идут запрограммированными на использование первого пина (PB5) в качестве входа RESET. Чтобы использовать его в качестве порта ввода-вывода, требуется изменить соответствующий конфигурационный бит (фьюз). Но делать это нужно с осторожностью, т.к. в этом случае мы теряем возможность программирования МК ISP-программаторами.
Теперь можно попрактиковаться:
Пример 1. Мигаем светодиодом
Пример 2. Включаем/выключаем светодиод по нажатию кнопки
Пример 3. Бегущий огонь
Пример 4. Реализация ШИМ
Пример 5. Регулятор ШИМ с использованием АЦП
Пример 6. Регулятор ШИМ с управлением кнопками
Комментариев: 1