Реанимация китайского программатора

На сегодняшний день электронные устройства очень просто реализовать на микроконтроллерах. Микроконтроллеры становятся все дешевле, на них появляется больше документации и информации. Но есть одно НО.

Вернее, «НО» довольно много, однако в данном случае речь пойдет всего об одном. Для успешного изготовления устройства на микроконтроллере нужен программатор.

Программатор – это отдельное устройство, с помощью которого в микроконтроллер будет загружаться программа, под управлением которой микроконтроллер будет работать.

Некоторое время назад программаторы чаще всего собирали сами. В простейшем случае программатор представляет собой 5 резисторов, которые припаиваются к разъему LPT-порта компьютера. Но в наши дни компьютер, у которого есть LPT-порт, встретить можно все реже и реже. На смену пришли очень универсальные USB. И программаторы под USB-порт приобрели широкую популярность. Об одном из них и пойдет речь.

Помимо того, что пришли времена USB-программаторов, так же пришли времена дешевых программаторов из Китая. Где за $5 можно прикупить вполне законченное устройство, в прилично выглядящем корпусе.

8411eecs-960

Но иногда бывает «НО».
Когда я первый раз получил в руки такой программатор,  я ожидал от него, что он будет широко известным USBAsp-ом. Но это оказалось не так. Популярнейшие программы-прошивальщики его не опознавали, и, следовательно, работать с ним отказывались.
Поиск показал, что это какой-то программатор, рассчитанный на работу со своей, для него созданной, оболочкой. И дальнейший поиск привел на страницу, где светлые головы современности этой проблемой озадачились. Краткий и вольный перевод этой статьи (оригинал на английском) говорит о том, что схемное решение очень похоже на вышеназванный USBAsp, но небольшие различия в некоторых ножках делали невозможным использование прошивки от USBAsp-а. Правда, анализ исходного кода USBAsp-а показал, что небольшая модификация исходного кода все же позволит использовать этот программатор в качестве USBAsp. Что было успешно подтверждено на практике.

Что для этого нужно:
Во-первых, скачать архив модифицированной прошивки.

Во-вторых, поставить перемычку «UP»:

a631eecs-480

В-третьих, зашить программатор этой прошивкой.

В-четвертых, запрограммировать фьюз-байты: HFUSE=0xC9 LFUSE=0xЕF .

Единственный минус всего этого – необходимость иметь программатор, чтобы зашить этот. То есть некое подобие проблемы курицы и яйца. Если после прошивки программатора вставить его в USB-порт компьютера, то можно увидеть стандартный диалог Windows о том, что идет поиск и/или установка драйверов для устройства:

2ab1eecs-960

В моем случае драйвера для USBAsp-а уже были установлены, поэтому устройство было готово к работе:

aab1eecs-960

Также проконтролировать правильность установки можно в диспетчере устройств. Там должен отобразиться программатор USBAsp:

9ab1eecs-960

Если же драйвер в системе не установлен, то его нужно установить из архива, приложенного к статье, либо с официальной страницы USBAsp http://www.fischl.de/usbasp/

Архив альтернативной прошивки USBAsp можно скачать здесь

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


× 8 = восемь

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>