|
Теги статьи: |
Как сделать программатор?
Автор:
Опубликовано 01.01.1970
Вторая часть Марлезонского балета...
Очень не удивлюсь, если вы пришли сюда, не прочитав два первых параграфа. Это не страшно – ведь вы ж их все равно потом прочитаете? Итак, на сегодня мы уже умеем компилировать код и создавать HEX-файл. Теперь нужно «прошить» содержимое HEX-файла в контроллер. Для этого нам нужен программатор. Вообще говоря, контроллер поддерживает два типа программирования: последовательное и параллельное.
Так как параллельный метод требует снятия микросхемы с платы и втыкания ее в специальное устройство - программатор, этот метод неудобен.
Последовательный метод позволяет программировать микросхему, уже установленную на плату. Для этого просто нужно установить на плате 10-штырьковый разъем, и подключить к нему некоторые выводы контроллера. К этому разъему через кабель и будет подключен программатор. Такой метод называется ISP – In-circuit Serial Programming (Внутрисхемное Последовательное Программирование.) Наш программатор будет соединяться с компьютером через порт принтера (LPT). Причем, схема его настолько невелика, что он запросто влезет в корпус разъема для LPT.
Собственно, вот схема:
Этот программатор разработала фирма Altera,
и полное его имя – «Altera Byte Blaster».
В нем используется всего одна микросхема – 74HC244, которая представляет собой 8
буферных элементов с тремя состояниями на выходе. На схеме не указаны ее выводы питания. Это 10 и 20 ноги.
10-я подключается к цепи GND, 20-я - к цепи +5В (обозначена стрелочкой)
ВНИМАНИЕ!
Для работы с программируемой логикой Altera может потребоваться подтянуть 7-й вывод разъема программирования
на "+" питания резистором порядка 1...3 кОм.
Разработку печатной платы я оставляю на вас, дорогой читатель. Ибо я:
К тому же, ввиду простоты схемы, вариантов исполнения может быть море.
Вот так примерно выглядят детали, которые понадобятся нам при изготовлении:
Перечислим, что здесь изображено:
Вот как выглядит (без корпуса) мой Байт Бластер:
Ну вот. Думаю, у вас получится намного круче :).
Значит, программатор мы сделали. Осталось подключить его к контроллеру.
На плату, где стоит контроллер, мы ставим штырьковый 10-контактный разъем. Ну и подключаем к нему контроллер согласно схеме:
Выводы MOSI, MISO, SCK есть на каждом контроллере.
Обычно они объединяются с каналами ввода/вывода.
RESET никогда ни с чем не объединяется, и тоже есть на всех контроллерах.
Vcc - это + питания. GND - общий. Кстати, я же не сказал: питание на программатор подается со схемы,
на которой стоит программируемый контроллер...
Вот, собственно, и все! Главное - не запутайтесь с ножками и штырьками :)
Далее в нашей передаче – программа прошивки.