Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AvrUsb500 by Petka
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
Petka
Эта тема закрыта. Продолжение обсуждения здесь.
После обновления компьютера обнаружил, что LPT порта больше нету laughing.gif и использовать проверенную связку 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. Новый вариант:Нажмите для просмотра прикрепленного файла
defunct
Цитата(Petka @ Jan 30 2008, 22:07) *
и использовать проверенную связку avreal + byteblaster уже не получится.

Купите плату расширения LPT+2*COM и можно возвращаться к проверенным средствам.
Petka
Цитата(defunct @ Jan 31 2008, 00:27) *
Купите плату расширения LPT+2*COM и можно возвращаться к проверенным средствам.

Тоже вариант, только не перспективно. Под вистой и дальнейшими поделками MS может не работать (отмирание LPT не только аппаратное, но и программное). Да и к ноутбуку такую плату не удобно присобачивать sad.gif
Qwertty
Цитата(Petka @ Jan 30 2008, 22:07) *
- Необходим контроллер как минимум с 8кб flash памяти. (под рукой была только mega48)

Данные недостатки я устранил, немного изменив схемотехнику.

......

Принимаются все вопросы.

Собственно вопрос - как изменение схемотехники вызвало уменьшение программы?
И второй - в перечне элементов указана, наряду с М8,М48,М168 и М16. Причем в tqfp32. Такие в природе существуют?
Petka
Цитата(Qwertty @ Jan 31 2008, 00:38) *
Собственно вопрос - как изменение схемотехники вызвало уменьшение программы?
И второй - в перечне элементов указана, наряду с М8,М48,М168 и М16. Причем в tqfp32. Такие в природе существуют?

1. Изменена не только схемотехника, но и прошивка. При компиляции под M48 отключается терминальный режим. Функция в моём случае невостребованная.
2. С Мегой16 я лоханулся. Завтра поправлю. Прошу обо всех недочётах обязательно сообщать.
vesago
Если не затруднит - можно выложить хексы? И если терминальный режим откючен как забить версию фирмвари?
Petka
Цитата(vesago @ Jan 31 2008, 10:16) *
Если не затруднит - можно выложить хексы? И если терминальный режим откючен как забить версию фирмвари?


HEX не выкладываю по причине того, что есть 2 неизвестные для компиляции:
1) частота кварца, которую вы поставите.
2) конкретный камень.
Советую собрать HEX самому, тем более, это достаточно просто:
1) установить WinAVR.
2) в makefile выбрать свой камень и частоту кварца
3) выполнить "make all" и HEX файл готов.
hd44780
К вопросу карты расширения - есть у меня образчик.
Ну и что - COM-порты работают, а у LPT непонятно какой базовый адрес. Соотственно никакой PonyProg и родственные вещи использовать не могу.
Для MS-DOS они дают прогу, которая привязывает порт к нормальным адресам, там все работает, но время MS-DOS уже прошло.
Поэтому по факту это - выброшенные на ветер деньги.
zltigo
Цитата(hd44780 @ Jan 31 2008, 11:35) *
Соотственно никакой PonyProg и родственные вещи использовать не могу.

А что, навскидку, AVReal и avrdudе не родственные вещи? smile.gif, хотя Вы пожалуй правы - эта "лошадка" и рядом не паслась smile.gif c нормальными программаторами.
colombo_2007
Вставлю свои пять копеек: напрягает наличие FT232, сотит как все остальное вместе взятое
Igor26
Цитата(colombo_2007 @ Jan 31 2008, 12:01) *
Вставлю свои пять копеек: напрягает наличие FT232, сотит как все остальное вместе взятое


2.6$ в розницу напрягает????

http://shop.efo.ru/cgi-bin/shop.pl?categor...p;mh=50&a=1
Kuzmi4
2 colombo_2007 - можно конечно собрать ЮСб на 8-ймеге - на сайте атмела были примеры , да и по форуму валялись, однако стоит ли это делать при цене 8-й меги в полтора бакса в розницу - гора мучений из-за желания сэкономить доллар?

А так дЫвайсик вроде ничё так smile.gif
defunct
Цитата(hd44780 @ Jan 31 2008, 11:35) *
К вопросу карты расширения - есть у меня образчик.
Ну и что - COM-порты работают, а у LPT непонятно какой базовый адрес. Соотственно никакой PonyProg и родственные вещи использовать не могу.

Не знаю как PonyProg, нормальные программы используют не адреса, а системное символьное имя порта LPT1/LPT2 и т.п.. У меня все старые программы которыми я пользовался - Альтеровский и Xilinx'овый загрузчики, ARM MultiICE работают через такой вот расширитель LPT + 2*COM...
Цитата
Поэтому по факту это - выброшенные на ветер деньги.

С этим утверждением я вынужден не согласиться.
Карта расширения очень полезная и дает реальный стандартный LPT порт.

А вот программы которые используют фиксированный адрес порта - фтопку.
zltigo
Цитата(defunct @ Jan 31 2008, 14:48) *
Карта расширения очень полезная и дает реальный стандартный LPT порт.

Редко,очень редко, очень очень редко, настолько редко, что я не встречал, прилагаются драйвера, которые эмулируют порт для Win 2000/XP на "стандартных" адресах. Но посторонние софтовые ремаперы вполне возможны, не говоря уже о программах с настраиваемыми адресами.
Если не сложно - чип стоящий на Вашей мультипортовке и ссылку на драйвера эмулирующие LPT на младших адресах под WIN2000/XP
(не DOS и не Win9x).
Цитата
системное символьное имя порта LPT1/LPT2...

Которые у Win 2000/XP НАМЕРТВО завязаны на стандартные smile.gif
bodja74
Petka
Можно вопрос.

За какое время шьется и проверяется например мега8 или 16 на таком шнурке?
Petka
Цитата(bodja74 @ Jan 31 2008, 15:11) *
Petka
Можно вопрос.

За какое время шьется и проверяется например мега8 или 16 на таком шнурке?


30кб прошивки avrdude заливает+проверяет за 18 секунд. соответственно мега 8 зашьётся и проверится ВСЯ за менее 5 секунд.
bodja74
Petka
Спасибо,а на какой скорости контроллер в прогере принимает данные от FT232 ?
Petka
Цитата(bodja74 @ Jan 31 2008, 15:43) *
Petka
Спасибо,а на какой скорости контроллер в прогере принимает данные от FT232 ?

115200
bodja74
Тогда получится не менее 9 сек.
В любом случае скорость гораздо выше чем на софтовом ЮСБ,спасибо за ответы.
Petka
Цитата(bodja74 @ Jan 31 2008, 15:56) *
Тогда получится не менее 9 сек.
В любом случае скорость гораздо выше чем на софтовом ЮСБ,спасибо за ответы.

я же говорю c avrdude скорость получается где-то 1,7Кб/сек (включая проверку). Откуда взялось время "9сек." и как вы его соотнесли со скоростью 115200 непонятно.
bodja74
Пардон ,у STK500 свой хитрый протокол. smile.gif

Так что вполне может быть и за 5 сек.
colombo_2007
Цитата(Kuzmi4 @ Jan 31 2008, 13:34) *
2 colombo_2007 - можно конечно собрать ЮСб на 8-ймеге - на сайте атмела были примеры , да и по форуму валялись, однако стоит ли это делать при цене 8-й меги в полтора бакса в розницу - гора мучений из-за желания сэкономить доллар?

К нам FT232 доходит по 30-35грн, это уже 6-7$ и у поставщика они бывают в единичных колличествах.
На вопрос почему именно этот поставщик отвечаю сразу -- по поллитическим причинам
hoakinn
А работает ли сей девайс с CVAVR? Если да, то как дела со скоростью прошивки?
Petka
Цитата(hoakinn @ Feb 1 2008, 13:13) *
А работает ли сей девайс с CVAVR? Если да, то как дела со скоростью прошивки?

НЕТ. насколько я знаю CV ещё не поддерживает протокол stk500v2. Могу предложить в проекте КодВижна настроить запуск внешнего программатора по успешному завершению сборки проекта (Project->Configure->After Make->Execute User's Program).
Petka
Кто собирал, отпишитесь! Всё ли получилось, что понравилось, что улучшить?
WHALE
уважаемыйPetka.Я бы например,собрал-бы ваш программер,но только из-за этого ставить WinAVR влом.Вы бы выложили-бы hex-файл с описаловом-прошивка под камень такой-то,кварц такой-то.
ИМХО,больше-бы народу подтянулось.
Petka
Цитата(WHALE @ Feb 15 2008, 18:51) *
уважаемыйPetka.Я бы например,собрал-бы ваш программер,но только из-за этого ставить WinAVR влом.Вы бы выложили-бы hex-файл с описаловом-прошивка под камень такой-то,кварц такой-то.
ИМХО,больше-бы народу подтянулось.

Ок, на выходных займусь =)
goodwin
Цитата(Petka @ Feb 1 2008, 13:51) *
НЕТ. насколько я знаю CV ещё не поддерживает протокол stk500v2. Могу предложить в проекте КодВижна настроить запуск внешнего программатора по успешному завершению сборки проекта (Project->Configure->After Make->Execute User's Program).


Неправда ваша - работает эта махарайка и с CodeVision, и со студией, и из командной строки...
Шьет быстро.
Собрал с год назад сначала для кристалла 7.3МГц, потом подвернулся кварц как в оригинале -3.68...
В своей версии немного добавил функционала - возможность вывода через эту-же железку отладочной информации из target в любую терминальную программу.
По поводу FTDI не стоит страдать - мегу можно вставить в любой шнурок от сотового телефона - выйдет дешевле wink.gif Я заюзал шнурок на prolific - PL2303 (имхо, самый стабильный преобразователь).
Вот здесь Megajohn не поленился - выложил солянку из топиков в телесистемах:
http://gudwin.embedders.org/
goodwin
Цитата(Petka @ Feb 16 2008, 12:08) *
Да, был не прав CodeVision тоже умеет использовать эту версию программатора.
Для этого всего-навсего надо было выбрать тип программатора "Atmel STK500/AVRISP". Только что проверил - работает. Скорость действительно шустрая. Считал 128k flash за ~50s.
Готово =) В архиве прошивки для некоторых комбинаций Кварц/Чип.


50 сек - непростительно долго smile.gif В CV нужно выставить скорость SPI в зависимости от тактовой wink.gif
Petka
Цитата(goodwin @ Feb 16 2008, 22:49) *
50 сек - непростительно долго smile.gif В CV нужно выставить скорость SPI в зависимости от тактовой wink.gif

Если знаете как, то пожайлуста подробно обьясните. Желательно по шагам wink.gif
jasper
Хорошая штука. a14.gif
Цитата
Достоинства:
- Новый протокол от Atmel. Теперь не требуется перешивать программатор при появлении новых чипов.

А вот это вряд ли. Новые XMega не будут поддерживают ISP через SPI. crying.gif
goodwin
Цитата(Petka @ Feb 17 2008, 14:02) *
Если знаете как, то пожайлуста подробно обьясните. Желательно по шагам wink.gif


В файле проекта при программировании поиграть частотой кристалла. CV выставляет скорость SPI автоматом ~1/4 от тактовой. И не всегда по максимуму - страхуется wink.gif
Кстати, в прошивках для других кварцев надо корректировать делитель SPI - чтоб частота более-менее соответствовала стандартным (в AVRISP), которыуе учитывают утилиты для программирования.
WHALE
Цитата(goodwin @ Feb 17 2008, 22:19) *
В файле проекта при программировании поиграть частотой кристалла. CV выставляет скорость SPI автоматом ~1/4 от тактовой. И не всегда по максимуму - страхуется wink.gif
Кстати, в прошивках для других кварцев надо корректировать делитель SPI - чтоб частота более-менее соответствовала стандартным (в AVRISP), которыуе учитывают утилиты для программирования.

Нифига не понял.А если у кристала(tiny)вовсе нет SPI или он не используется или используется
в режиме слэйва?И че-то я помню в даташитах такого,чтобы частота в режиме программирования зависела от частоты SPI.Вы с тактовой камня не перепутали?
goodwin
Цитата(WHALE @ Feb 18 2008, 00:04) *
Нифига не понял.А если у кристала(tiny)вовсе нет SPI или он не используется или используется
в режиме слэйва?И че-то я помню в даташитах такого,чтобы частота в режиме программирования зависела от частоты SPI.Вы с тактовой камня не перепутали?


Нет smile.gif Я имел ввиду именно тактовую камня. А клок SPI (при программировании) должен быть в 4 раза меньше.
Lubitel
Здравствуйте!!!
Если вас не затруднит прошу ответить на пару вопросов.

1) Чем обусловлена частота кварца, и нельзя ли использовать 12 mГц ? (очень хочется)

2) Кто нибудь пробовал шить из windows Vista, какое ПО использовали? (AVRprog 1.40 Подойдет?)
Petka
Цитата(Lubitel @ Feb 18 2008, 13:33) *
Здравствуйте!!!
Если вас не затруднит прошу ответить на пару вопросов.
1) Чем обусловлена частота кварца, и нельзя ли использовать 12 mГц ? (очень хочется)
2) Кто нибудь пробовал шить из windows Vista, какое ПО использовали? (AVRprog 1.40 Подойдет?)

1) частота кварца выбрана кратной стандартной скорости COM порта 115200. Можно конечно и другие кварцы ставить, но:
а) скорость программирования будет меньше
б) придётся изменить скорость работы по COM порту, и как следствие не всякий софт сможет работать с этим программатором
2) программатор под вистой видеться будет, а вот софт - надо смотреть конкретно.
Lubitel
Цитата(Petka @ Feb 18 2008, 15:26) *
1) частота кварца выбрана кратной стандартной скорости COM порта 115200. Можно конечно и другие кварцы ставить, но:
а) скорость программирования будет меньше

А про висту?

Тут назрел еще один вопрос. На сколько я знаю ft 232 требует кварц. А у вас его нет в схеме.
Прокомментируйте пожалуйста.
Petka
Цитата(Lubitel @ Feb 18 2008, 15:32) *
Тут назрел еще один вопрос. На сколько я знаю ft 232 требует кварц. А у вас его нет в схеме.
Прокомментируйте пожалуйста.

У Вас информация по предыдущему поколению чипов. Обвязка чипа ft232R - минимальна.
Lubitel
Цитата(Petka @ Feb 18 2008, 15:34) *
У Вас информация по предыдущему поколению чипов. Обвязка чипа ft232R - минимальна.

Я живу в Н.Новгороде достать экзотические Микросхемы не возможно. А вот ft 232 bm у меня под рукой.
Petka
Цитата(Lubitel @ Feb 18 2008, 15:40) *
Я живу в Н.Новгороде достать экзотические Микросхемы не возможно. А вот ft 232 bm у меня под рукой.

Ну не такая уж и экзотическая. Поспрашивайте местных поставщиков например тех, у кого купили 232bm.
jasper
Цитата(Lubitel @ Feb 18 2008, 15:33) *
2) Кто нибудь пробовал шить из windows Vista, какое ПО использовали? (AVRprog 1.40 Подойдет?)

Черз AVRStudio, должна под Висту ставиться.
cz0
Ребята с Туксграфикс молодцы, конечно. У меня есть еще 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
Новые данные: ошибки идут не только по четным адресам, по каким угодно.
cz0
Итак, после долгой и мучительной войны я понял, что штатниые средства из архива просто напросто не стирают предыдущую прошивку. Если микроконтроллер стереть предварительно внешним программатором, то он отлично шьётся/проверяется. Подтверждением тому служит тот факт, что если сначала стереть прошивку 88ой меги а затем залить в нее штатными средствами test_1, то все будет работаеть. Если же следом зашить test_2, то ошибки будут длится ровно столько, сколько занимала прошивка test_1, далее все верифится отлично. Видимо, команда на стирание у ATMega88 отличается или же что-то не отрабатывает в той реализации BitBang mode, которую представил Guido Socher. Будем писать ему и просить починить, глядишь, опомнится, хотя я сильно сомневаюсь. Остается только попробовать поставить на место 88ой меги 8ю и посмотреть как будет вести себя она. Что-то мне подсказывает, что все будет отлично работать. Только смущает оверклокинг на 3.4 МГц...
Petka
Цитата(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.
cz0
Сознаюсь, виноват smile.gif Я посмотрел Вашу схему, достаточно интересно. А есть ли такой режим программирования в avrdude или uisp? Я не проактикую Виндовз так что понипрога у меня нет.
Petka
Цитата(cz0 @ Feb 19 2008, 12:49) *
Сознаюсь, виноват smile.gif Я посмотрел Вашу схему, достаточно интересно. А есть ли такой режим программирования в avrdude или uisp? Я не проактикую Виндовз так что понипрога у меня нет.

Так пони вроде и под *nix есть!
cz0
Цитата(Petka @ Feb 19 2008, 12:53) *
Так пони вроде и под *nix есть!

Надо будет посмотреть что там к чему. Идея "самопрограммирующегося программатора" мне нравится. Более того, реализация Guido очень интересна, но это все-таки огород, потому что надо патчить uisp для реализации им битбанга. Метод, предложены Вами куда интересней, потому что позволяет шить контроллер штатными средствами без костылей типа битбанга. Если удасться прошить контроллер uisp/avrdude'ом, то, вероятно, переделаю программатор. Бляго, для проверки у меня есть все необходимое: отладочная плата с FT232RL и отладочная плата с mega8/mega88. Остается понять какой режим используется, usip точно умеет инвертировать сигналы, насчет avrdude - не знаю. Буду пробовать.
cz0
Ога! Идея ясна. Ваш вариант - всего лишь разновидность 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 микроконтроллера.
Petka
Цитата(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в соответственно ) Отсюда и инверсия.

Можно и через утилиты, но зачем? Не вижу смысла.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.