И снова о программаторах для AVR

На заре использования микроконтроллеров конечно же немаловажным было наличие программатора, а для новичка это было делом трудоемким. Прочитав кучу форумов, и не найдя какой-то универсальности случайно наткнулся в журнале Радио на замечательный в то время проект PonyProg в тандеме с хардварным JDM флешером подключаемым к com portу персонального компьютера. Сразу же повторил базовый модуль, модуль под микроконтроллеры фирмы Atmel AVR, микроконтроллеры фирмы Microchip PIC. А сколько радости было, когда я запрограммировал им первый PIC (хороший флешер для PIC — WinPic800)!

Собирал из того что было, даже разъемы от старого советского магнитофона.
Естественно время не стоит на месте, у меня появился ноутбук, в котором COM port отсутствовал априори. Копаясь в интернет, читая про простые USB программаторы под ATMEL AVR выбор пал на USBasp , покупал на ebay за 2 доллара (тогда это было около 16 Грн. плюс freeshipping), а для PIC взял PickitII Light (с PIC вообще перестал работать, программатор в принципе лежит без дела).
ACTION
Недавно заказывал на Али всякие ништяки, и наткнулся на USB программатор,


Залил последний HEX – файл, загорелся вместо красного светодиода голубой, программатор перестал вообще определяться системой. Нашел несколько форумов, где люди под разные версии что-то там перепаивали и тд. Мне как-то не хотелось ковырять нормальный с виду девайс, продолжил поиски и нашел хорошую статью, а так же переработанный исходник в 4ой студии. Hacking AVR programmer, судя по всему была проблема с этим программатором в этих строчках:
There are some tiny, yet important, differences to the original USBasp programmer: in the USBasp USB-D- is connected to pin PB0, USB-D+ to PB1 and PD2/INT0. Here also USB-D- was connected to a pin on port D: PD3/INT1. Well, this should not really make a difference, and I continued my search for differences. OK, for some reason, also the LEDs are connected in parallel to 2 port pins each – so what… In despair I decided to look into the source code of the USBasp firmware. The header files: OK – pin assignments were as expected, nothing special here. But let’s wait, where is the definition of the utilization of port D? Well, it was in the main.c file:
int main(void) {
uchar i, j;
/* no pullups on USB and ISP pins */
PORTD = 0;
PORTB = 0;
/* all outputs except PD2 = INT0 */
DDRD = ~(1 << 2);
Автор изменил его на:
All pins of port D are defined as output, except for PD2/INT0? I always tell my students to only define pins as output, which are really used as output… And what happens here? Since the modified design also connected USB-D- to PD3/INT1, the rather aggressiv definition of output pins leads to a unsolveable conflict, when suddenly PD2 is driving against the USB signals from the host!
Changing this little piece of code solved the problem. Rather conservative I set all pins of port D as input (none of them is currently used as output!):
int main(void) {
uchar i, j;
/* no pullups on USB and ISP pins */
PORTD = 0;
PORTB = 0;
/* all PDx input */
/* MK-USBISP v3.0 */
DDRD = 0x00;
Пересобрал проект изменив в конфигураторе Atmega8 на Atmega88, снова залил своей петелькой из двух программаторов HEX, подключил и вуаля, программатор сразу же определился системой как libusb. Я тут же считал/записал код из Atmega16 (сердце моей отладочной паты) ExtremeBurner. На этом в принципе все. Исходя из количества покупаемых таких девайсов людьми из рунета (почему Китайцы не пишут, что это не совсем тот USBasp, а устройство с другой прошивкой видимой системой как HID-устройство, работающей только с софтом progisp) Надеюсь этот пост пригодится. Исходник естественно выкладываю.
ЗЫ: Что-то мне захотелось программировать все из под Codvision и Atmel Studio, нашел хорошую статью переделки USBasp в AVR-Doper (STK-500) — Статья, правда PonyProg не использовал, а заюзал USBbasp как в предыдущей переделке. Все заработало на Windows 8 x64. USBasp на Atmega 8 — кварцевый резонатор на 12МГц. Архивы ниже 01022016_mega88_usbisp.zip — firmware для переделки USBisp в USBasp, avrcdc_inf.zip — Драйвера к AVR_Doper, AVR-Doper.2012-12-08.zip — firmware и make файлы к программатору AVR_Doper. usbasp-mega8-12mhz.hex.zip на всякий случай — еще один HEX для переделки USBasp в AVR_DOPER.
ЗЫЫ: потестил AVR_DOPER с Atmel Studio 7 — шьет намного быстрее камень, чем программатор в CodeVision. Еще заметил один нюанс, в простом сеансе на Windows 8 отказывается работать, нужно перегрузиться отключив подпись драйверов. После таких манипуляций, все работает. Выложу еще пару скринов работы AVR_DOPER:
CodevisionAVR


Atmel Studio 7


- +5
- 02 февраля 2016, 11:09
- Jman
- 4
замечательный в то время проект Pony Prog в тандеме с хардварным JDM флешером подключаемым к com portу персонального компьютера PonyProgТочку из ссылки перемести в текст. Да и вообще, лучше сделать ссылкой первое упоминание PonyProg, а второе убрать.
Тут же нашел на статью we.easyelectronics.ru/xterro/prevraschaem-kitayskiy--programmator-usbisp-v-usbasp.html.Аналогично. Опять же, лучше сделать ссылкой слово «статью».
по описанию вроде как USBasp, но в аллюминиевом корпусе,Где взять подобные корпуса для своих девайсов? В последнее время во многих устройствах такие используют, а самих корпусов в продаже не видел.
Аналогично, пока не встречал. Первый USBasp покупал в виде платки. Тут наткнулся на девайс в алюминиевом корпусе — тут же купил. Теперь хочу приобрести клон JTAG ICE в таком же форм факторе.
Вот еще примеры таких корпусов:
www.ebay.com/itm/Sliver-MI-10400mAh-New-Hot-Universal-Xiaomi-USB-Power-Bank-Battery-Charger-/262106485555?hash=item3d06c39333:g:~3oAAOSw5ZBWKKuA
www.ebay.com/itm/Mini-USB-Clip-MP3-Player-LCD-Screen-Support-32GB-Micro-SD-TF-Card-With-FM-Radio-/291639242230?hash=item43e70dadf6:g:k8UAAOSwYaFWb4bu
Странно, что до сих пор нет таких универсальных корпусов.
www.ebay.com/itm/Sliver-MI-10400mAh-New-Hot-Universal-Xiaomi-USB-Power-Bank-Battery-Charger-/262106485555?hash=item3d06c39333:g:~3oAAOSw5ZBWKKuA
www.ebay.com/itm/Mini-USB-Clip-MP3-Player-LCD-Screen-Support-32GB-Micro-SD-TF-Card-With-FM-Radio-/291639242230?hash=item43e70dadf6:g:k8UAAOSwYaFWb4bu
Странно, что до сих пор нет таких универсальных корпусов.
А мне больше нравится JTAG ICE в этом исполнении, тут есть буферная микросхема.
www.aliexpress.com/item/Free-shipping-AVR-USB-Emulator-debugger-programmer-JTAG-ICE-for-Atmel/623898152.html?btsid=7f46d047-fa4d-48b4-8a04-5ee780d41a31&s=p&ws_ab_test=searchweb201556_3%2Csearchweb201644_2_10001_505_10002_506_10016_503_504_10005_10006_10003_10004_502%2Csearchweb201560_5%2Csearchweb1451318400_-1%2Csearchweb1451318411_6451&spm=2114.30010308.3.100.82B1SJ
www.aliexpress.com/item/Free-shipping-AVR-USB-Emulator-debugger-programmer-JTAG-ICE-for-Atmel/623898152.html?btsid=7f46d047-fa4d-48b4-8a04-5ee780d41a31&s=p&ws_ab_test=searchweb201556_3%2Csearchweb201644_2_10001_505_10002_506_10016_503_504_10005_10006_10003_10004_502%2Csearchweb201560_5%2Csearchweb1451318400_-1%2Csearchweb1451318411_6451&spm=2114.30010308.3.100.82B1SJ
Попробуй набери на Али или Ебее что-то типа «aluminum case diy» — увидишь тучу приятных металлических корпусов разных цветов и размеров.
Первым у меня был программатор Громова, и какая то софтина, уже не помню как называлась для прошивки. А вторым был USBasp и AVRDUDE к нему в придачу. Собственно он и сейчас у меня есть, и пока покупать третий нет никакой необходимости. Всё отлично шьётся. Я брал по полтора доллара кажется на алиэкспресс, взял сразу парочку на всякий случай — так они и живут у меня, один дома, второй кочевой.
- VeniaminCaver
- 04 февраля 2016, 21:54
- ↓
У меня в связке USBasp + Extreme Burner тоже уже года три как работал. Случайно наткнулся на программатор в корпусе, решил апгрейд сделать и инкриминировать количество программаторов на единицу, а тут такая бага (фича) в виде непонятного мне HID-устройства. Вот и пришлось пол дня покопаться с ним. А старый USBasp прикрутил к Atmel Studio и Codvision — так удобно стало с IDE все заливать без промежуточных флешеров. Я когда с Arduino в связке с Flowcode баловался пару дней, то же постарался прикрутить процесс программирования Ардуино прямо из под Flowcode с родным bootloader. Загорелся теперь купить китайский клон JTAGICE.
Комментарии (20)
RSS свернуть / развернуть