Как собрать программатор, как им пользоваться, и пара ошибок.
Очень хорошо процесс расписан в этом блокноте:
Программатор "Пять проводков"
Очень хорошо процесс расписан в этом блокноте:
и подробно описано тут:
http://mehatroniks.com/devices/programmers/9-programmator-iz-5-provodkov-dlya-mikrokontrollerov-avr.html
Описано хорошо, НО если решите шить определите какая схема правильная!!
Описано хорошо, НО если решите шить определите какая схема правильная!!
К сожалению, моей дотошности не хватило на программатор "Пять проводков" и у меня не заработало.
Я столкнулся с проблемой, что при тесте мне пишет вот такое сообщение:
Первая мысль проверить наличие LPT в системе. Начать лучше с BIOS.$ avrdude -c dapa -n -p m8
avrdude: AVR device not responding
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
Далее можно протестировать порт используя светодиод.
http://jumptuck.com/2011/11/14/python-parallel-port-control/ - тут написано как подать сигнал из python на lpt. У меня как и у автора статьи понадобилось потыкать модули ядра:
После работы с модулями, тест просто сделать в python-shell. Пример для python2 и необходим модуль python-parallel. Светодиод нужно подключить к D0(pin2) и GND(pin18).sudo rmmod lp sudo modprobe ppdev
import parallel
parPort = parallel.Parallel()
parPort.setData(0x01) #зажечь светодиод
parPort.setData(0x00) #потушить светодиод
Программатор AVR через Arduino
Тут всё получилось с первого раза. Не смотря на сопельный монтаж, всё заработало и радостно замигало светодиодами. Внимательно идём по пунктам: http://robocraft.ru/blog/3063.html.Обращаю внимание, что схему программатора подключаем к уже прошитой Ардуино. Скетч "ArduinoISP" идёт в комплекте с IDE.
Тестирование должно выдать -
$ avrdude -c avrisp -P /dev/ttyACM0 -b 19200 -n -p m8Это тоже плохо. Скорее всего, при попытках программировать по lpt я испортил fuse-биты.
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.05s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.05s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.05s
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
- Программирование AVR
- https://sites.google.com/site/vanyambauseslinux/elektronika/programmirovanie-mikrokontrollerov-atmega - Подробно о программировании МК
- http://robocraft.ru/blog/3063.html - " У Вас есть Arduino? Значит у Вас есть программатор!"
- http://avr-start.ru/?p=86 - первая программа для AVR
- http://easyelectronics.ru/avr-uchebnyj-kurs-konfiguraciya-fuse-bit.html - Обязательно читать про fuse бит
- http://www.engbedded.com/fusecalc - калькулятор фьюзов [en]
- http://webhamster.ru/mytetrashare/index/mtb0/1397512295uni2dcirfe - LPT программатор + Linux
Комментариев нет:
Отправить комментарий