|
AvrUsb500 by Petka, вариант программатора AVR, доступный для простого изготовления |
|
|
|
Jan 30 2008, 19:07
|
Профессионал
    
Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886

|
Эта тема закрыта. Продолжение обсуждения здесь.После обновления компьютера обнаружил, что LPT порта больше нету  и использовать проверенную связку avreal + byteblaster уже не получится. Захотелось чего-нибудь универсального, надежного и само-собой на USB порте. Остановился на варианте AvrUsb500v2 (http://tuxgraphics.org/electronics/200705/article07052.shtml) Достоинства: - Нормальный USB (не надо колдовать как в программной реализации USB). - Новый протокол от Atmel. Теперь не требуется перешивать программатор при появлении новых чипов. Недостатки: - На сайте (tuxgraphics) написано что под Windows не решена проблема "Курицы и яйца" (как запрограммировать AVRку в программаторе AVR) (Под Linux автор решает эту проблему путем "bit bang" режима микросхемы FTDI). - Используется контроллер в DIP корпусе. (под рукой был только в qfp32 корпусе) - Необходим контроллер как минимум с 8кб flash памяти. (под рукой была только mega48) Данные недостатки я устранил, немного изменив схемотехнику. Выкладываю на суд общественности результаты работы. в файле doc.pdf все необходимое для сборки программатора: - на первой странице принципиальная схема. - на второй странице фотошаблон в негативе (для производства на дому с помощью фоторезиста) - на третьей странице фотошаблон в позитиве (для "лазерно-утюговой" технологии) - на 4ой странице перечень элементов - на 5й странице сборочный чертеж со стороны поверхностного монтажа - на 6й странице сборочный чертеж со стороны выводных компонентов в файле HowTo.pdf описано как прошить этот программатор не имея другого программатора. в файле AvrUsb500_by_Petka.zip находятся исходники прошивки. Собираются в последнем WinAVR. ВНИМАНИЕ! делал для себя, поэтому разпиновка выходного разъёма как в byteblaster'е Принимаются все вопросы. Цитата(ae_ @ Jul 7 2009, 19:03)  Добавьте пожалуйста в первый пост этой ветки актуальные на данный момент схему и софт программатора (или ссылку на ресурс, где находятся текущие/архивные версии) Актуальные на 8 июля 2009 года документы: - Готовые прошивки и исходники- Схемы программаторов, перечни необходимых компонентов, сборочные чертежи, односторонняя разводка печатных плат (в негативе для изготовления фоторезистом и в позитиве для изготовления "лазерным утюгом"), краткая инструкция как прошить программатор без использования другого программатора.- Как надо выставить фузы, при прошивке через ponyprogПрошивки собрал из этих исходников: Модераторам: Прикрепите эти файлы к первому сообщению. Цитата(goodwin @ Feb 16 2008, 03:10)  Неправда ваша - работает эта махарайка и с CodeVision, и со студией, и из командной строки... Шьет быстро. Да, был не прав CodeVision тоже умеет использовать эту версию программатора. Для этого всего-навсего надо было выбрать тип программатора "Atmel STK500/AVRISP". Только что проверил - работает. Скорость действительно шустрая. Считал 128k flash за ~50s. Цитата(Petka @ Feb 16 2008, 01:19)  Ок, на выходных займусь =) Готово =) В архиве прошивки для некоторых комбинаций Кварц/Чип. Цитата(Carbon @ Feb 20 2008, 18:43)  Да, схемы не совпадают. Если не касаться разъема для программирования, т.к. он всё равно пока не подключен к таргету, то в остальном всё также. Клок 1МГц на PC0 всегда присутствует или только при программировании? Клок должен быть всегда, а не только при программировании. Ещё вопрос: мега в ДИПе? Если да, то обратите внимание, что нумерация пинов у меня указана для QFP корпуса, она отличается от DIP. P.S. Поправил в документации ошибку с X3 X4. Новый вариант:
HowTo.pdf ( 73.56 килобайт )
Кол-во скачиваний: 6346
Сообщение отредактировал IgorKossak - Oct 19 2009, 07:31
Причина редактирования: Обновление
|
|
|
|
65 страниц
1 2 3 > »
|
 |
Ответов
(1 - 99)
|
Jan 30 2008, 21:38
|
Местный
  
Группа: Свой
Сообщений: 408
Регистрация: 21-10-06
Из: Санкт-Петербург
Пользователь №: 21 527

|
Цитата(Petka @ Jan 30 2008, 22:07)  - Необходим контроллер как минимум с 8кб flash памяти. (под рукой была только mega48)
Данные недостатки я устранил, немного изменив схемотехнику.
......
Принимаются все вопросы. Собственно вопрос - как изменение схемотехники вызвало уменьшение программы? И второй - в перечне элементов указана, наряду с М8,М48,М168 и М16. Причем в tqfp32. Такие в природе существуют?
|
|
|
|
|
Jan 31 2008, 07:59
|
Профессионал
    
Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886

|
Цитата(vesago @ Jan 31 2008, 10:16)  Если не затруднит - можно выложить хексы? И если терминальный режим откючен как забить версию фирмвари? HEX не выкладываю по причине того, что есть 2 неизвестные для компиляции: 1) частота кварца, которую вы поставите. 2) конкретный камень. Советую собрать HEX самому, тем более, это достаточно просто: 1) установить WinAVR. 2) в makefile выбрать свой камень и частоту кварца 3) выполнить "make all" и HEX файл готов.
|
|
|
|
|
Jan 31 2008, 09:01
|
Частый гость
 
Группа: Свой
Сообщений: 81
Регистрация: 19-07-07
Пользователь №: 29 221

|
Вставлю свои пять копеек: напрягает наличие FT232, сотит как все остальное вместе взятое
--------------------
Все просто, но нам не заметно
|
|
|
|
|
Jan 31 2008, 11:48
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(hd44780 @ Jan 31 2008, 11:35)  К вопросу карты расширения - есть у меня образчик. Ну и что - COM-порты работают, а у LPT непонятно какой базовый адрес. Соотственно никакой PonyProg и родственные вещи использовать не могу. Не знаю как PonyProg, нормальные программы используют не адреса, а системное символьное имя порта LPT1/LPT2 и т.п.. У меня все старые программы которыми я пользовался - Альтеровский и Xilinx'овый загрузчики, ARM MultiICE работают через такой вот расширитель LPT + 2*COM... Цитата Поэтому по факту это - выброшенные на ветер деньги. С этим утверждением я вынужден не согласиться. Карта расширения очень полезная и дает реальный стандартный LPT порт. А вот программы которые используют фиксированный адрес порта - фтопку.
|
|
|
|
|
Jan 31 2008, 12:08
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(defunct @ Jan 31 2008, 14:48)  Карта расширения очень полезная и дает реальный стандартный LPT порт. Редко,очень редко, очень очень редко, настолько редко, что я не встречал, прилагаются драйвера, которые эмулируют порт для Win 2000/XP на "стандартных" адресах. Но посторонние софтовые ремаперы вполне возможны, не говоря уже о программах с настраиваемыми адресами. Если не сложно - чип стоящий на Вашей мультипортовке и ссылку на драйвера эмулирующие LPT на младших адресах под WIN2000/XP (не DOS и не Win9x). Цитата системное символьное имя порта LPT1/LPT2... Которые у Win 2000/XP НАМЕРТВО завязаны на стандартные
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Feb 1 2008, 09:04
|
Частый гость
 
Группа: Свой
Сообщений: 81
Регистрация: 19-07-07
Пользователь №: 29 221

|
Цитата(Kuzmi4 @ Jan 31 2008, 13:34)  2 colombo_2007 - можно конечно собрать ЮСб на 8-ймеге - на сайте атмела были примеры , да и по форуму валялись, однако стоит ли это делать при цене 8-й меги в полтора бакса в розницу - гора мучений из-за желания сэкономить доллар? К нам FT232 доходит по 30-35грн, это уже 6-7$ и у поставщика они бывают в единичных колличествах. На вопрос почему именно этот поставщик отвечаю сразу -- по поллитическим причинам
--------------------
Все просто, но нам не заметно
|
|
|
|
|
Feb 1 2008, 10:13
|
Группа: Новичок
Сообщений: 8
Регистрация: 21-09-07
Пользователь №: 30 732

|
А работает ли сей девайс с CVAVR? Если да, то как дела со скоростью прошивки?
|
|
|
|
|
Feb 16 2008, 00:10
|

Местный
  
Группа: Свой
Сообщений: 481
Регистрация: 1-08-05
Пользователь №: 7 267

|
Цитата(Petka @ Feb 1 2008, 13:51)  НЕТ. насколько я знаю CV ещё не поддерживает протокол stk500v2. Могу предложить в проекте КодВижна настроить запуск внешнего программатора по успешному завершению сборки проекта (Project->Configure->After Make->Execute User's Program). Неправда ваша - работает эта махарайка и с CodeVision, и со студией, и из командной строки... Шьет быстро. Собрал с год назад сначала для кристалла 7.3МГц, потом подвернулся кварц как в оригинале -3.68... В своей версии немного добавил функционала - возможность вывода через эту-же железку отладочной информации из target в любую терминальную программу. По поводу FTDI не стоит страдать - мегу можно вставить в любой шнурок от сотового телефона - выйдет дешевле  Я заюзал шнурок на prolific - PL2303 (имхо, самый стабильный преобразователь). Вот здесь Megajohn не поленился - выложил солянку из топиков в телесистемах: http://gudwin.embedders.org/
|
|
|
|
|
Feb 17 2008, 21:04
|

Знающий
   
Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768

|
Цитата(goodwin @ Feb 17 2008, 22:19)  В файле проекта при программировании поиграть частотой кристалла. CV выставляет скорость SPI автоматом ~1/4 от тактовой. И не всегда по максимуму - страхуется  Кстати, в прошивках для других кварцев надо корректировать делитель SPI - чтоб частота более-менее соответствовала стандартным (в AVRISP), которыуе учитывают утилиты для программирования. Нифига не понял.А если у кристала(tiny)вовсе нет SPI или он не используется или используется в режиме слэйва?И че-то я помню в даташитах такого,чтобы частота в режиме программирования зависела от частоты SPI.Вы с тактовой камня не перепутали?
--------------------
"Hello, word!" - 17 errors 56 warnings
|
|
|
|
|
Feb 18 2008, 10:33
|
Участник

Группа: Новичок
Сообщений: 16
Регистрация: 1-02-08
Пользователь №: 34 648

|
Здравствуйте!!! Если вас не затруднит прошу ответить на пару вопросов.
1) Чем обусловлена частота кварца, и нельзя ли использовать 12 mГц ? (очень хочется)
2) Кто нибудь пробовал шить из windows Vista, какое ПО использовали? (AVRprog 1.40 Подойдет?)
|
|
|
|
|
Feb 18 2008, 12:26
|
Профессионал
    
Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886

|
Цитата(Lubitel @ Feb 18 2008, 13:33)  Здравствуйте!!! Если вас не затруднит прошу ответить на пару вопросов. 1) Чем обусловлена частота кварца, и нельзя ли использовать 12 mГц ? (очень хочется) 2) Кто нибудь пробовал шить из windows Vista, какое ПО использовали? (AVRprog 1.40 Подойдет?) 1) частота кварца выбрана кратной стандартной скорости COM порта 115200. Можно конечно и другие кварцы ставить, но: а) скорость программирования будет меньше б) придётся изменить скорость работы по COM порту, и как следствие не всякий софт сможет работать с этим программатором 2) программатор под вистой видеться будет, а вот софт - надо смотреть конкретно.
|
|
|
|
|
Feb 18 2008, 12:32
|
Участник

Группа: Новичок
Сообщений: 16
Регистрация: 1-02-08
Пользователь №: 34 648

|
Цитата(Petka @ Feb 18 2008, 15:26)  1) частота кварца выбрана кратной стандартной скорости COM порта 115200. Можно конечно и другие кварцы ставить, но: а) скорость программирования будет меньше А про висту? Тут назрел еще один вопрос. На сколько я знаю ft 232 требует кварц. А у вас его нет в схеме. Прокомментируйте пожалуйста.
|
|
|
|
|
Feb 18 2008, 12:40
|
Участник

Группа: Новичок
Сообщений: 16
Регистрация: 1-02-08
Пользователь №: 34 648

|
Цитата(Petka @ Feb 18 2008, 15:34)  У Вас информация по предыдущему поколению чипов. Обвязка чипа ft232R - минимальна. Я живу в Н.Новгороде достать экзотические Микросхемы не возможно. А вот ft 232 bm у меня под рукой.
|
|
|
|
|
Feb 18 2008, 15:31
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Ребята с Туксграфикс молодцы, конечно. У меня есть еще AVRUsb500 первой версии на 232BM и он отлично работает. Но я решил собрать второй, более современный (к тому же, первую версию, судя по всему бросили и больше не апдейтят), спроектировал плату, распаял (FT232RL, AtMega88, кварц на 18.432). Ставлю перемычку, говорю make load_test_1 - грузится, проверяется, мигает светодиодом (следовательно, BitBang mode работает) - идилия. Говорю make load_test_2 и...
make load_test_2 ./bbpg_firmware_load test_2.hex OK: erase chip... + uisp_bbpg --erase -dprog=bbpg -v=3 OK: bitbang mode on NOTE: bbpg is a bit slow. Be patient.... SCK Delay (t_sck): 50 Reset inactive time (t_reset) 1000 us AVR Direct Parallel Access succeeded after 31 retries. Vendor Code: 0x1e Part Family: 0x93 Part Number: 0x0a Atmel AVR ATmega88 is found. Page Write Enabled, size=64 FLASH Write Delay (t_wd_flash): 11111 us EEPROM Write Delay (t_wd_eeprom): 11111 us Erasing device ... Reinitializing device AVR Direct Parallel Access succeeded after 31 retries. Vendor Code: 0x1e Part Family: 0x93 Part Number: 0x0a Atmel AVR ATmega88 is found. Page Write Enabled, size=64 FLASH Write Delay (t_wd_flash): 11111 us EEPROM Write Delay (t_wd_eeprom): 11111 us disabling bitbang mode... + set +x OK: load and verify... + uisp_bbpg --upload if=test_2.hex -dprog=bbpg -v=3 --hash=8 --verify -dno-poll -dt_sck=1000 OK: bitbang mode on NOTE: bbpg is a bit slow. Be patient.... SCK Delay (t_sck): 1000 Reset inactive time (t_reset) 1000 us AVR Direct Parallel Access succeeded after 31 retries. Vendor Code: 0x1e Part Family: 0x93 Part Number: 0x0a Atmel AVR ATmega88 is found. Page Write Enabled, size=64 FLASH Write Delay (t_wd_flash): 11111 us EEPROM Write Delay (t_wd_eeprom): 11111 us Uploading: flash ################################################################################ ################################################## (total 1032 bytes transferred in 417.54 s (2 bytes/s) Verifying: flash #flash error at address 0x0: file=0x3c, mem=0x10 ##flash error at address 0x2: file=0x56, mem=0x02 flash error at address 0x4: file=0x55, mem=0x00 flash error at address 0x6: file=0x54, mem=0x00 flash error at address 0x8: file=0x53, mem=0x00 flash error at address 0xa: file=0x52, mem=0x02 flash error at address 0xc: file=0x51, mem=0x00 flash error at address 0xe: file=0x50, mem=0x00 flash error at address 0x10: file=0x4f, mem=0x04 ##flash error at address 0x12: file=0x4e, mem=0x02 flash error at address 0x14: file=0x4d, mem=0x00 flash error at address 0x16: file=0x4c, mem=0x00 flash error at address 0x18: file=0x4b, mem=0x00 flash error at address 0x1a: file=0x4a, mem=0x02 flash error at address 0x1c: file=0x49, mem=0x00 flash error at address 0x1e: file=0x48, mem=0x00 [..поскипано..]
Как видно, ошибки только по четным адресам. Проколупавшить с этим шлаком кача 4 к ряду в попытках понять что же это за беда, подключаю к нему внешний программатор (тот самый первый AVRUsb500) и, после некоторых затруднений, прошиваю 88ую мегу нужной финальной прошивкой. Более того, все это добро начинает вести себя не как кусок непонятно чего, а как нормальный программатор (работает и терминал и, что самое важное, оно отлично шьет другие АВРки). Отключаю внешний программатор, запаиваю на место резисторы - шиш! Пайку/разводку проверил, все прозвонил. Пробовал собирать более старую версию uisp и usblib - результат неизменно тот же - внутренний "самопрограмматор" не работает. Я было подумал, что сдох какой-то из портов FT232RL, но видно, что в начале процесса АВРка детектится правильно. Что за беда? Я бы не удивился, если бы оно не работало с самого начала, но test_1 самостоятельно загрузился и заработал, какого фига оно не работает дальше...
P.S. Программатор собран по оригинальной схеме.
Сообщение отредактировал cz0 - Feb 18 2008, 15:49
|
|
|
|
|
Feb 18 2008, 23:16
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Итак, после долгой и мучительной войны я понял, что штатниые средства из архива просто напросто не стирают предыдущую прошивку. Если микроконтроллер стереть предварительно внешним программатором, то он отлично шьётся/проверяется. Подтверждением тому служит тот факт, что если сначала стереть прошивку 88ой меги а затем залить в нее штатными средствами test_1, то все будет работаеть. Если же следом зашить test_2, то ошибки будут длится ровно столько, сколько занимала прошивка test_1, далее все верифится отлично. Видимо, команда на стирание у ATMega88 отличается или же что-то не отрабатывает в той реализации BitBang mode, которую представил Guido Socher. Будем писать ему и просить починить, глядишь, опомнится, хотя я сильно сомневаюсь. Остается только попробовать поставить на место 88ой меги 8ю и посмотреть как будет вести себя она. Что-то мне подсказывает, что все будет отлично работать. Только смущает оверклокинг на 3.4 МГц...
|
|
|
|
|
Feb 19 2008, 08:23
|
Профессионал
    
Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886

|
Цитата(cz0 @ Feb 19 2008, 02:16)  Итак, после долгой и мучительной войны я понял, что штатниые средства из архива просто напросто не стирают предыдущую прошивку. Если микроконтроллер стереть предварительно внешним программатором, то он отлично шьётся/проверяется. Подтверждением тому служит тот факт, что если сначала стереть прошивку 88ой меги а затем залить в нее штатными средствами test_1, то все будет работаеть. Если же следом зашить test_2, то ошибки будут длится ровно столько, сколько занимала прошивка test_1, далее все верифится отлично. Видимо, команда на стирание у ATMega88 отличается или же что-то не отрабатывает в той реализации BitBang mode, которую представил Guido Socher. Будем писать ему и просить починить, глядишь, опомнится, хотя я сильно сомневаюсь. Остается только попробовать поставить на место 88ой меги 8ю и посмотреть как будет вести себя она. Что-то мне подсказывает, что все будет отлично работать. Только смущает оверклокинг на 3.4 МГц... Это немного не по теме. т.к. тот вариант, что я выложил отличается от варианта с tuxgraphics. Прежде всего заливкой прошивки. Она заливается без использования BitBang. И более продвинутым ponyprog.
|
|
|
|
|
Feb 19 2008, 13:36
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Цитата(Petka @ Feb 19 2008, 12:53)  Так пони вроде и под *nix есть! Надо будет посмотреть что там к чему. Идея "самопрограммирующегося программатора" мне нравится. Более того, реализация Guido очень интересна, но это все-таки огород, потому что надо патчить uisp для реализации им битбанга. Метод, предложены Вами куда интересней, потому что позволяет шить контроллер штатными средствами без костылей типа битбанга. Если удасться прошить контроллер uisp/avrdude'ом, то, вероятно, переделаю программатор. Бляго, для проверки у меня есть все необходимое: отладочная плата с FT232RL и отладочная плата с mega8/mega88. Остается понять какой режим используется, usip точно умеет инвертировать сигналы, насчет avrdude - не знаю. Буду пробовать.
|
|
|
|
|
Feb 19 2008, 15:20
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Ога! Идея ясна. Ваш вариант - всего лишь разновидность serial bit banging, посмотрев конфигурацию avrdude нашел много различных вариантов, в том числе и тот, что у вас, обзывается sipprog (он же ponyser). Остается вопрос: почему в настройках понипрога Вы инвертируете rts dtr и cts? Потому, что соотв. выходы FT232 инвертированы? Насколько я помню, FT232Rx поддерживают конфигурирование этих линий через утилиту, которая пишет во встроенный EEPROM. Сконфигурировав таким способом FT232Rx можно отвязаться от понипрога и использовать более универсальный avrdude (впроем, его можно использовать в любом случае т.к. он поддерживает индивидальную конфигурацию шин). Однако, реализовав интерфес, называемый dasa можно сделать куба более универсальный самопрограмматор, потому что этот режим штатно поддерживается и avrdude и uisp. Я попробую реализовать именно его. P.S. Да, и еще, в вашем HOWTO первым шагом написано соединить разъемы X2 и X3, в после программирование разъединить X2 и X3, соединив X2 с X4. Думаю все должно быть с тоночтью до наоборот: во время прошивки самого программатора X2 соединяется (который является его рессетом), а в шататном режиме Х2 соединяется с Х3, который RX микроконтроллера.
Сообщение отредактировал cz0 - Feb 19 2008, 15:37
|
|
|
|
|
Feb 19 2008, 15:29
|
Профессионал
    
Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886

|
Цитата(cz0 @ Feb 19 2008, 18:20)  Ога! Идея ясна. Ваш вариант - всего лишь разновидность serial bit banging, посмотрев конфигурацию avrdude нашел много различных вариантов, в том числе и тот, что у вас, обзывается sipprog (он же ponyser). Остается вопрос: почему в настройках понипрога Вы инвертируете rts dtr и cts? Потому, что соотв. выходы FT232 инвертированы? Насколько я помню, FT232Rx поддерживают конфигурирование этих линий через утилиту, которая пишет во встроенный EEPROM. В оригинальной схеме ponyser уровни +12в, -12в (RS232) с помошью диодов, резисторов, стабилитронов преобразуются соответственно в +5в и 0в. (а ft232 делает 0в и +5в соответственно ) Отсюда и инверсия. Можно и через утилиты, но зачем? Не вижу смысла.
|
|
|
|
|
Feb 19 2008, 20:23
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Цитата(Petka @ Feb 19 2008, 18:29)  В оригинальной схеме ponyser уровни +12в, -12в (RS232) с помошью диодов, резисторов, стабилитронов преобразуются соответственно в +5в и 0в. (а ft232 делает 0в и +5в соответственно ) Отсюда и инверсия.
Можно и через утилиты, но зачем? Не вижу смысла. Я попробовал зашить mega8 с вашей разводкой (благо есть отладочная плата на FT232RL и ATMega8) - все отлично прошилось. Однако мне никак не удется заставить работать avrdude и uisp. Это странно!
|
|
|
|
|
Feb 19 2008, 21:56
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Цитата(Petka @ Feb 19 2008, 23:40)  Что именно не получилось? Что получилось? Коды ошибок.... подробнее =) Что-то косячит именно в GNU/Linux, в винде все отлично зашилось avrdude'ом командой avrdude -p atmega8 -P com4-c invdasa2 -i 10 -B 10 -b 9600 -U flash:w:display.hex где в avrdude.conf #---------------------- programmer id = "invdasa2"; desc = "dasa2 with inverted rts, dtr and cts lines"; type = serbb; reset = ~3; sck = ~7; mosi = ~4; miso = ~8; ; #---------------------- Похоже, проблемы в реализации обмена с USB в GNU/Linux. Версия avrdude таже, все вроде так же - ан нет, не работает. Кстати, сответую к эксплуатации именно avrdude вмсето PonyProg т.к. заливается в десятки раз быстрее. Буквально 20 - 30 секунд.
|
|
|
|
|
Feb 20 2008, 07:43
|
Профессионал
    
Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886

|
Цитата(cz0 @ Feb 20 2008, 02:23)  Нда.. все веселее и веселее. Приладил к ft232r 47hc04 дабы аппаратно инвертировать сигналы. Это дало возможность шить контроллер без соотв. галочек - это раз, а в avrdude указать стандартный ponyser/siprog. В виндовзе все великолепно заработало. В GNU/Linux все так же мимо кассы: ioctl("TIOCMGET"): Bad address в avrdude и неизвестный девайс в uisp, хотя программатор в точности dasa2/ponyser/siprog. Забавно. Толи лыжи не едут... толи.. даже не знаю что. Похоже это баг, буду писать в багтрак avrdude. Скорее всего причина такова: Ponyprog после дёргания DSR, дожидается когда линия ДЕЙСТВИТЕЛЬНО изменит состояние (пони контролирует RTS). И только после этого продолжает работу. Такой механизм гарантирует независимость от задержек по обмену USB и задержек в ОС и драйверах. avrdude не контролирует RTS, поэтому обмен быстрее, но ненадёжнее. (Отсутствует обратная связь по RTS). C avrdude я не разбирался, но вероятно его можно настроить и на более правильный обмен. попробуйте, расскажите.
|
|
|
|
|
Feb 20 2008, 13:40
|
Участник

Группа: Новичок
Сообщений: 16
Регистрация: 1-02-08
Пользователь №: 34 648

|
Дело в том, что я прочитал этот 20 раз.
12. Remove wire X2 to X3. 13. Make wire from X2 to X4. 14. Programmer «AvrUsb500 by Petka» ready to use!
Т.Е. В конце концов должно быть TXD (FT-шки) На Reset (меги). (судя по схеме.)???
|
|
|
|
|
Feb 20 2008, 13:59
|
Участник

Группа: Новичок
Сообщений: 16
Регистрация: 1-02-08
Пользователь №: 34 648

|
На схеме (на выходном разъеме) Обозначение Jtag сигналов. Планируется ли его реализовать?
|
|
|
|
|
Feb 20 2008, 14:48
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(Petka @ Feb 20 2008, 17:41)  Достаточно. Странно... С прошивкой от tuxgrafix программатор действительно виден, а с Вашей прошивкой нет. Пробую с кварцем 14,7456 , Mega8. Это только у меня так?
|
|
|
|
|
Feb 20 2008, 15:16
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(Petka @ Feb 20 2008, 17:59)  Программатор подключен к программируемому чипу? Каким софтом пользуетесь? И по какой схеме собран ваш программатор? К программируемому чипу программатор не подключен. По схеме от tuxgrafix первой версии - то-есть совсем ничего лишнего - только rx и tx к меге, разъем для программирования висит в воздухе. Пробую с кварцем 3,6864 прошивку от tuxgr и 14,7... в Вашей. Пробую из AVR студии и CVAVR. FTDI-ка видна как COM6.
|
|
|
|
|
Feb 20 2008, 15:43
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(Petka @ Feb 20 2008, 18:19)  Прошивка сделана для моей схемы (схема отличается от tuxgraphics). как минимум не совпадает разпиновка на разъём программирования. Да, схемы не совпадают. Если не касаться разъема для программирования, т.к. он всё равно пока не подключен к таргету, то в остальном всё также. Клок 1МГц на PC0 всегда присутствует или только при программировании?
|
|
|
|
|
Feb 20 2008, 19:22
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Я поддтверждаю, что версия avrusb500v2-1.2 с туксграфикса полностью работоспособна в плане программирования таргетов, в плане самопрошивки в моем случае возникли косяки, отписал Guido, тот, как обычно, молчит. Вероятно (если удасться решить проблему с самопрограммированием) я сделаю чуть более расширенную версью с похожим самопрограмматором как у господина Petke, но с возможность управления и защиты внешнего питания (смотрите мой топик про ограничение тока в ветке про аналоговые устройства). Плата будет двухсторонней с USBB-1J и одной перемычкой для переключения режимов. Возможно с еще небольшими доработками если Guido даст на это разрешение (т.к. программатор зарелизен под GPL, то, вероятно, с этим проблем не будет). Цитата(Petka @ Feb 20 2008, 20:07)  Клок должен быть всегда, а не только при программировании. Ещё вопрос: мега в ДИПе? Если да, то обратите внимание, что нумерация пинов у меня указана для QFP корпуса, она отличается от DIP. P.S. Поправил в документации ошибку с X3 X4. Новый вариант:
HowTo.pdf ( 73.56 килобайт )
Кол-во скачиваний: 6346Я указывал Вам на эту ошибку страницей раньше.
|
|
|
|
|
Feb 21 2008, 08:33
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(Petka @ Feb 20 2008, 20:07)  Клок должен быть всегда, а не только при программировании. Ещё вопрос: мега в ДИПе? Если да, то обратите внимание, что нумерация пинов у меня указана для QFP корпуса, она отличается от DIP. Корпус TQFP. Кварц генерит, но клока нет, светодиод при включении пять раз мигает.
|
|
|
|
|
Feb 21 2008, 09:46
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(Petka @ Feb 21 2008, 12:38)  Попробуйте с кварцем 18.432 Уже попробовал. Пробовал на двух разных мегах, были подозрения на сгоревшый порт, клока не на одной нет.
|
|
|
|
|
Feb 21 2008, 10:13
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Цитата(Carbon @ Feb 21 2008, 12:46)  Уже попробовал. Пробовал на двух разных мегах, были подозрения на сгоревшый порт, клока не на одной нет. Попробуйте прошивку с туксграфикс http://tuxgraphics.org/common/src2/article07052/
|
|
|
|
|
Feb 21 2008, 10:13
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(Carbon @ Feb 21 2008, 12:46)  Уже попробовал. Пробовал на двух разных мегах, были подозрения на сгоревшый порт, клока не на одной нет. Включил в исходнике в функцию clk_start_1 установку направления ножки PC0 на выход DDRC|= (1<<DDC0); Клок появился. Без рукопашного изменения исходкика нога PC0 работает как вход!
Сообщение отредактировал Carbon - Feb 21 2008, 10:19
|
|
|
|
|
Feb 21 2008, 11:04
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(cz0 @ Feb 21 2008, 13:13)  Попробовал залить avrusb500_pre.hex из avrusb500v2-1.2.tar.gz. Mega8 + 18,432MHz. Клок есть, программатор определяется. Цитата(Carbon @ Feb 21 2008, 13:52)  Попробовал залить avrusb500_pre.hex из avrusb500v2-1.2.tar.gz. Mega8 + 18,432MHz. Клок есть, программатор определяется. С Вашей прошивкой программатор отвечает в терминале //////// avrusb500v2-1.2 Enter SW Version Major in hex [2]: 2 Enter SW Version Minor in hex [a]: a Reset target at connector polarity test(1=on 0=off)[1]: 1 OK, my SW version is now: 2.0a (hex) Ready. Just close the terminal. No reset needed. //////// а вот к АВРстудии программатор не коннектится. CVAVR выдает Communication error.
Сообщение отредактировал Carbon - Feb 21 2008, 11:39
|
|
|
|
|
Feb 21 2008, 11:33
|
Частый гость
 
Группа: Участник
Сообщений: 129
Регистрация: 11-12-07
Из: Россия, Москва
Пользователь №: 33 198

|
Цитата(Carbon @ Feb 21 2008, 14:04)  Попробовал залить avrusb500_pre.hex из avrusb500v2-1.2.tar.gz. Mega8 + 18,432MHz. Клок есть, программатор определяется. С Вашей прошивкой программатор отвечает в терминале //////// avrusb500v2-1.2
Enter SW Version Major in hex [2]: 2 Enter SW Version Minor in hex [a]: a Reset target at connector polarity test(1=on 0=off)[1]: 1
OK, my SW version is now: 2.0a (hex) Ready. Just close the terminal. No reset needed. //////// а вот к АВРстудии программатор не коннектится. Попробуйте установить версию 2.0 (на второй вопрос с [a] ответте нулем). Я не пользуюсь AVRStudio и её встроенным программатором, так что не могу утверждать с полной уверенностью. Возможно необходимо поставить последние патчи и сервиспаки для AVRStudio.
|
|
|
|
|
Feb 21 2008, 11:52
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(cz0 @ Feb 21 2008, 14:33)  Попробуйте установить версию 2.0 (на второй вопрос с [a] ответте нулем). Я не пользуюсь AVRStudio и её встроенным программатором, так что не могу утверждать с полной уверенностью. Возможно необходимо поставить последние патчи и сервиспаки для AVRStudio. Попробовал. Связи так и нет. С другими программаторами, студия, увидев stk500 со старой версией, предлагает его проапдейтить. Тут ситуация другая - она его не видит совсем. Может условная компиляция проекта под Мегу8 дает не совсем верный код, чего не наблюдается при компиляции под М48?
|
|
|
|
|
Feb 21 2008, 12:24
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(Petka @ Feb 21 2008, 14:54)  Выкладываю обновлённые HEX. (поправлена бага с 1Мгц выходом). Большое спасибо. Проверил с Mегой8 на разных кварцах, клок есть, терминал работает, связи с AVRstudio и CVAVR нет. Цитата(Carbon @ Feb 21 2008, 15:10)  Большое спасибо. Проверил с Mегой8 на разных кварцах, клок есть, терминал работает, связи с AVRstudio и CVAVR нет. Спасибо всем за ответы. Разобрался. Принципиальное значение имеет цепочка резисторов R6, R8, R9, связывающая TARGET_RST с RST_ADC. Без них программатор не определяется ни CVAVR ни AVRстудией.
|
|
|
|
|
Feb 21 2008, 12:54
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Цитата(Petka @ Feb 21 2008, 15:39)  Скорее всего моя недоработка. Вечером поменяю в перечне элементов для меги8 другой номинал резистора. У вас программатор полностью заработал? К таргету пока не подключал. Скоро попробую.
|
|
|
|
|
Feb 21 2008, 13:44
|

Участник

Группа: Новичок
Сообщений: 16
Регистрация: 18-02-08
Из: Мать городов русских
Пользователь №: 35 154

|
Автору  !Но FT232 мин $6 В Киеве,что говорить про отдаленные города?Видел пожожий проект у немцев но без FT232 ttp://www.ullihome.de/index.php?title=USBAVR-ISP-Download&oldid=2392#Software.Никто не пробовал собрать?
--------------------
Free download
|
|
|
|
|
Feb 21 2008, 13:46
|

Участник

Группа: Новичок
Сообщений: 17
Регистрация: 30-01-06
Пользователь №: 13 769

|
Перенастроил проект на совместимость с http://www.tuxgraphics.org/common/images2/.../circuit_th.gif скорректировав дефайны для канала АЦП, ног SPI, светодиода и ресета. Всё работает. Проверил скорость программирования из студии : заливка в Mega16 16кб кода - 15сек. Верификация 12сек. Просто праздник какой-то! Почти как по LPT! Да, и ещё - в терминале нужно указывать полярность ресета =0. ... При установке в студии скорости SPI =921,6kHz заливка в Mega16 16кб кода - 11сек. Верификация 7сек.
Сообщение отредактировал Carbon - Feb 21 2008, 14:03
|
|
|
|
|
Feb 28 2008, 07:50
|
Местный
  
Группа: Свой
Сообщений: 313
Регистрация: 15-06-05
Из: Минск
Пользователь №: 6 028

|
Цитата(ХЕРОХ @ Feb 21 2008, 17:44)  Автору  !Но FT232 мин $6 В Киеве,что говорить про отдаленные города?Видел пожожий проект у немцев но без FT232 ttp://www.ullihome.de/index.php?title=USBAVR-ISP-Download&oldid=2392#Software.Никто не пробовал собрать? я вчерась убил весь вечер - лохотрон - не определяет винда сей девайс с этими прошивами(раньше была залита прошивка игоря USB-COM - всё фурычило) . Так что эти HEX-сы набор цифр от балды жалко вечер потратил в пустую  странно а у немцев вроде пашет - не пойму __//www.mikrocontroller.net/topic/70230
|
|
|
|
|
Feb 28 2008, 09:22
|

Участник

Группа: Новичок
Сообщений: 16
Регистрация: 18-02-08
Из: Мать городов русских
Пользователь №: 35 154

|
Цитата(backa @ Feb 28 2008, 11:50)  я вчерась убил весь вечер - лохотрон - не определяет винда сей девайс с этими прошивами(раньше была залита прошивка игоря USB-COM - всё фурычило) . Так что эти HEX-сы набор цифр от балды жалко вечер потратил в пустую  странно а у немцев вроде пашет - не пойму __//www.mikrocontroller.net/topic/70230 Если Вы про немецкий программатор,то у меня Винда его видит!Но под Чипбластером и Кодевижн работать,не хочет!Stk 500 ИЗ студии работает очень не устойчиво  Из того что я делал пока прог от Протосса самый рабочий
--------------------
Free download
|
|
|
|
|
Feb 29 2008, 07:35
|
Местный
  
Группа: Свой
Сообщений: 313
Регистрация: 15-06-05
Из: Минск
Пользователь №: 6 028

|
Цитата(ХЕРОХ @ Feb 28 2008, 13:22)  Если Вы про немецкий программатор,то у меня Винда его видит!Но под Чипбластером и Кодевижн работать,не хочет!Stk 500 ИЗ студии работает очень не устойчиво  Из того что я делал пока прог от Протосса самый рабочий а не могли бы вы описать конкретно последовательность действий при прошивке и прикрепить файл для прошики(реально рабочий!) какие фьюзы и как работать с бутлодером(совсем не понятно как прошивать и как потом пользоваться). Буду очень признателен - т.к. есть исходники то в будущем можно переделать по себя сей девайс. Пробовали зашивать I2C шину в чип?
|
|
|
|
4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0
|
|
|