реклама на сайте
подробности

 
 
> AvrUsb500 by Petka. продолжение, Вариант программатора AVR, доступный для простого изготовления. ч2.
Petka
сообщение Oct 15 2009, 18:08
Сообщение #1


Профессионал
*****

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



Этот топик является логическим продолжением темы AvrUsb500 by Petka (вариант программатора AVR, доступный для простого изготовления)

На сегодняшний день (октябрь 2009) та тема составляет форумных 65 страниц.

Для облегчения поиска ответов и информации по программатору я создаю новую тему в которой содержится выжимка содержания из старой темы.

Предлагаю продолжить обсуждение программатора в этой теме.

Вопросы по функциональности
Boba Fett
Какие контроллеры можно будет шить данным программатором?
Petka
Все, которые поддерживают программирование через ISP.
Ильмар
Эээ
а вообще то кто то работал с данным программатором с мегой128 ?
Petka
Я работал. Так-же успешно программировались мега2560, мега48, мега8, мега8515, мега8, мега168. других не было под рукой.

bodja74
За какое время шьется и проверяется например мега8 или 16 на таком шнурке?
Petka
30кб прошивки avrdude заливает+проверяет за 18 секунд. соответственно мега 8 зашьётся и проверится ВСЯ за менее 5 секунд.
Carbon
При установке в студии скорости SPI =921,6kHz заливка в Mega16 16кб кода - 11сек. Верификация 7сек.

Alex305
Кто-нить юзал этот девайс в Vista Ult x64?
Roger
Юзаю под vista 32bit проблем нету видется как в AVR Studio так и CVAvr
Andrew Bond
Отчитываюсь: программатор прекрасно шьет и читает из-под Windows 7 x64 !!!
Несколько раз прошивал/читал ATMega8, используя AVRStudio 4.15.

wer_1
Здравствуйте! Собрал ваше устройство , работает прекрасно с вижн и студио, столкнулся теперь с проблемой . Не хочет работать с пони.
Petka
пони не поддерживает протокол stk500v2.

swisst
В соответствии со схемой контроллер питается от 5 V, сигналы выдает 5-ти вольтовые на разъем STK200/300, по сему если будет подключена периферия по SPI, которая расчитана на 3,3 V(карта памяти например), на плате программируемого контроллера, то ей будет кердык. Или я не прав?
Petka
Как показывает практика при наличии токоограничивающих резисторов в программаторе (а они есть) с 3х вольтовой периферией ничего не случается. Но в каждом конкретном случае всё-таки загляните в даташит на эту периферию. Толерантны ли её входы к 5ти вольтам? Есть ли защитные диоды? Разделены ли у Вас резистором MISO контроллера и выход периферии?

ivainc1789
Собрал данный программатор, работает хорошо пока у таргета 5 вольт. Сегодня нужно было залить прошивку в устройство с питанием 3v3 где 4 бит шина LCD разделяема с линиями SPI …
Petka
отключите автоопределение контроллера по уровню линии reset. (делается через терминал)


Вопросы по комплектации
Метценгерштейн
есть принципиальная разница по выбору микросхем- FT232BM или FT232RL ? Там просто две папки со схемами. По какой лучше?
Petka
Принципиальной разницы нет. Люди собирали и на FT232BM и на FT232RL. Все довольны. На RL обвяза меньше и у нас она стоит дешевле. Так что каждый исходит уже из собственных возможностей и соображений.

Ar2rius
Вопрос: а можно FT232BM заменить аналогом FT232BL?
Petka
можно. Это же то же самое только без свинца.

colombo_2007
Вставлю свои пять копеек: напрягает наличие FT232, сотит как все остальное вместе взятое
Igor26
2.6$ в розницу напрягает????
http://shop.efo.ru

Boba Fett
Какой все-таки камень желательно взять для программатора? (Оптимально цена/функционал)
Petka
мега88 если её нет, то мега8

zheka
Скажите а с кварцем 18 Мгц программатор будет работать быстрее чем с 14 МГц?
Petka
Я не заметил разницы.

zheka
Имеется дроссель проволочный на 22 uH - подойдет вместо L1?
Petka
пойдёт если ток не менее 0,5А.

millano
ни как не могу понять....
в индуктивность (SMD) ---- uH это - мкГн или как, и где мона подглятеть эти сокращения на ... и рус. и англ.?
Petka
p - пико, n - нано, u - микро, m - милли, k - кило, M - мега

zheka
Петка, скажите, а если у меня USB кабель с ферритовыми кольцами в концевом отделе, можно выкинуть дроссель из схемы?
Petka
Cтавить дроссель рекомендует производитель мостика USB-COM (FTDI). Без него стабильная работа не гарантируется.

Lubitel
Чем обусловлена частота кварца, и нельзя ли использовать 12 mГц ? (очень хочется)
Petka
частота кварца выбрана кратной стандартной скорости COM порта 115200. Можно конечно и другие кварцы ставить, но:
а) скорость программирования будет меньше
б) придётся изменить скорость работы по COM порту, и как следствие не всякий софт сможет работать с этим программатором

Lubitel
На сколько я знаю ft 232 требует кварц. А у вас его нет в схеме.
Прокомментируйте пожалуйста.
Petka
У Вас информация по предыдущему поколению чипов. Обвязка чипа ft232R - минимальна.

Azrail
Скажите, на сколько критично наличие екрана на шнуре ЮСБ и его длинна, и меня кабель длинной 70 см (отрезал ответку от удлинителя ЮСБ, шнур без екрана).
Petka
По спецификации ЮСБ без экрана могут эксплуатироваться только LowSpeed USB. т.е. мышки и клавиатуры. FT232 уже НЕ lowspeed.

lameralik
Нашел кварц 18.432 не будет ли косяков с atmega8 она же до 16
Petka
А можно ли есть просроченные сырки?


Вопросы по сборке
Carbon
Связи так и нет. С другими программаторами, студия, увидев stk500 со старой версией, предлагает его проапдейтить. Тут ситуация другая - она его не видит совсем.
Carbon
Разобрался. Принципиальное значение имеет цепочка резисторов R6, R8, R9, связывающая TARGET_RST с RST_ADC. Без них программатор не определяется ни CVAVR ни AVRстудией.
cz0
Цепочка резисторов R7/R12/R13 (обозначения по оригинальной схеме) играет ключевую роль в определении как таргета (точнее наличия его как такового) так и самого программатора. Если контроллер в программаторе не получает с ADC0 нужного значения, он не хочет общаться с программами, возвращая ошибку. Так он ведет себя не только в AVRStudio но и в avrdude.
Petka
Цепочка в моей схеме R6, R8, R9 отвечает за определение наличия программируемого контроллера. При подключении программатора к программируемому контроллеру ДОЛЖЕН загореться светодиод! Если этого не происходит - значит что-то не так в этой цепочке. Так-же при продключении шнура USB к программатору этот светодидод должен шесть раз быстро мигнуть.

Konstantin_M
Зачем нужен(или как используется) вход RST_ADC (ADC2\PC2 у ATMEGA8?) и можно ли обойтись без него ( если это вход)
Petka
Это вход. Он используется для определения подключения программатора к программируемой плате. Всё просто: Периодически измеряется напряжение, если оно в нужном диапазоне, то программатор зажигает светодиод (и разрешается программирование). Можно-ли без него? Можно. А зачем? На готовой печатке он уже разведён.

Serj78
Petka, а можно оставить неподключенным делитель на rst_adc? что он делает?
Petka
Этот вход отвечает за определение подключения к программируемому контроллеру. Без него работать не будет. Надо либо немного поправить прошивку, либо немного поправить схему.


Первоначальная прошивка программатора
jasper
Сделал себе подобную штуку…
Вот только программирование через PonyProg идет крайне медленно.
Чтение 8kB занимает, наверное, минут 20.
...
Это нормальная ситуация? Так и должно быть?
Или это я что-то не то делаю?
Fusion
Да... Так и есть... У меня минут 30 шился... Хорошо, что это только один раз.
Зато сейчас влет все шьет. Pony кажется теперь страшным тормозом. И еще его надо запустить, считать новый файл, прошить - и проверяет он всю флэш. А тут прямо из студии собрал - прошил.

Petka
Кроме понипрога первоначальную прошивку программатора можно сделать с помощью avrdude (он так же поставляется с WinAVR). Для этого:

1) В файл "avrdude.conf" (который лежит там где и "avrdude.exe") в соответствующее место добавить строки:

Код
programmer
  id    = "stk500_by_petka";
  desc  = "AvrUsb500 by Petka, reset=!txd sck=!rts mosi=!dtr miso=!cts";
  type  = serbb;
  reset = ~3;
  sck   = ~7;
  mosi  = ~4;
  miso  = ~8;
;

2) Выполнить команду:
Код
avrdude -p atmega168 -c stk500_by_petka -P \\.\com3 -i 10 -B 10 -b 9600 -U flash:w:mega168.hex   -U hfuse:w:0xDC:m -U lfuse:w:0xD7:m


(Не забудьте поменять "mega168" и "com3" на соответствующие Вашим)
Будут вопросы - задавайте.

konny
И ещё символы "\\.\" в командной строке avrdude, имхо, лишние, avrdude их просто игнорирует.
Petka
эти символы нужны для доступа к компортам номер которых больше 9, например к COM15 (при активном использовании микросхем FT232 количество компортов зарегистрированных в системе часто превышает 10 штук). Если номер компорта односимвольный, то этот префикс можно и не использовать. но лишним он никогда не бывает =)
P.S.
Информация относится вообще к Windows API. Т.е. так надо открывать файл компорта в windows , номер которого больше 9. Написано соответственно в MSDN.

Roger
Дошел до 9 пунка подготовки к прошивке
Modify «fuse bits». (in PonyProg checked bit means ''1').
И тормазнулся! Какие фьзы нужно ставить, точнее какие галочки
Petka
Фузы надо настроить так, что бы контроллер тактовался от внешнего кварца т.е. как написано в документации "Crystal Oscillator".
Ещё надо настроить встренный BOD. "On-chip Brown-out Detection (BOD)"

DVF
Спаял второй девайс. (С первым все ОК). Внешне без ошибок, но при подключении к РС опознается системой на СОМ5, PonyProg показывает затененный СОМ4, ну и соответственно Fault Connect.
Petka
FT232R каждая новая садится на новый КОМ порт. Pony использует только первые 4 КОМ порта. Посмотрите HOWTO.pdf. Там я описал как поменять номер ком порта в Винде.

Lubitel
Непонятно зачем reset меги подсоединяется к Ft232, как это работает???
Petka
Это очевидно, Ватсон! Что бы программировать мегу через Ft232. Само-собой что после программирования эту связь надо убрать. Читайте внимательно howto.pdf, doc.pdf

eXeC001er
подскажите: выводы DCD, DSR, .... нужны только для программирвоания самого кристала в программаторе в работе они никак не участвуют?
Petka
Да, выводы RTS, CTS, DTR и DSR микросхемы FT232 используются только при первоначальной прошивке программатора. При штатной работе они не нужны.
Верно. Если Вы прошьете программатор каким-либо другим способом, то будет достаточно TXD и RXD.

Carbon
Достаточно-ли для работы вашего программатора двух проводков Rx и Tx с FTDI-ки? Именно для работы, так как саму мегу мы заранее можем запрограммировать другим программатором.
Petka
Достаточно.


Вопросы по проверке работоспособности программатора

Roger
При включении свето диод должен мигать несколько раз?
Petka
Так-же при продключении шнура USB к программатору этот светодидод должен шесть раз быстро мигнуть.

RN3QLQ
После подачи питания программатор мигает светодиодом 5-ть раз примерно секунд за 10..12. При подключении к программируемому устройству светодиод постоянно горит.
Пробовал CV и AVRStudio - компилятор не видит программатор! При нажатии несколько раз Enter в Терминале - программатор не отзывается.
Что посоветуете?
Petka
Скорее всего контроллер работает от внутреннего RC 1MHz. А надо от внешнего кварца.
Похоже, что вы фузы не так выставили (или выставили, а прошить забыли).

11111
Моргать при включении должен 5-7 раз?
Petka
Ровно 6 раз.

Настройка программатора через терминал
lve
Не получается выйти в режим настройки
SOS
использую гипертерминал.
Petka
попробуйте в гипертерминале в "параматры ASCII" установить галочку "дополнять символы возврата каретки (CR) переводами строк (LF)"
ещё не забудьте выбрать правильный ком порт, отключить аппаратный контроль потоком и выставить скорость 115200.

lve
Забыл спросить, что означают первые строки -

Код
avrusb500v2-1.2

Enter SW Version Major in hex [2]:
Enter SW Version Minor in hex [a]:
Reset target at connector polarity test(1=on 0=off)[1]:

OK, my SW version is now: 2.0a (hex)
Select 'stk500 by petka' mode. (1=1Mhz 0=Fast)[0]:
Ready. Just close the terminal. No reset needed.

Petka
Первые две строки используетсю студией(и вроде только ей) для определения версии программатора.

Программатор может детектировать наличие подключения к программируемому контроллеру. Делает он путём определения наличия "подтяжки" к VCC линии RESET. Если подключение есть, то программатор зажгет свой единственный светодиод =). Этот тест можно отключить.

andr_doy
…. параметры порта в инспекторе устройств тоже менял ….
Petka
В "инспекторе устройств" ничего менять не надо. Это ни на что не влияет.

dr_jenia
естьопять одна проблемка: тервинал виснет при попытке обращения.
Petka
Прикладываю инструкцию для Виндового гипертерминала.

zheka
Петка, скажите, а что это за "Enter SW version minor"?
Petka
Это версия (минорная часть) прошивки программатора skt500v2. Студия по этой версии отличает что умеет программатор и что не умеет.
P.S.
Умолчательная комбинация "Major/minor" = "2/a"

lve
Это прошивка с управлением Fast / 1мГц - ?
Как управлять переключением режимов - ?
Petka
Зайти терминалом на скорости 115200, на появившийся виртуальный com порт. Несколько раз нажать Enter. Потом программатор выйдет в режим настройки. последним пунктом настройки будет выбор режима (1MHz/fast).


Работа с программатором в различных программах
Ильмар
Этот программатор должен указываться в программах как STK500? или как то подругому?
Petka
stk500v2

protek
Еще вопрос в АВЕР СТУДИИ нет платформы STK500v2
Petka
Попробуйте в студии выбрать просто "stk500".

Ar2rius
а что делать когда Студия просит обновить ПО STK500?
Petka
Отказывать.

Anybody
Недавно обновил AVRStudio до версии 4.16, и теперь при старте она хочет его обновить. Нужно ли это делать или просто забить.
Petka
Делать этого нельзя. Однако, что-бы она больше не беспокоилась и не тревожила своими напоминаниями можно зайти терминалкой на программатор и поменять версию на бОльшую.


Функциональность вывода «1MHz»


Serj78
И еще- с ножки С0 идет меандр с частотой 146 КГЦ!!!! и фронты его дрожат по фазе. (должно быть вроде 1 мгц?)
Petka
Сейчас посмотрел исходники. Да, на выводе должна быть частота порядка 150кГц.
lve
Все прекрасно работает, частота примерно 166 кГц.
usta
на X5 присутствует меандр с частотой 150 кГц.

afsh
Видимо, какая-то нестыковка в софте ATMega88. Я взял осциллограф и все смотрю, частота на выводе 1 Мгц - 0,1474 Мгц
Petka
Такая и должна быть. "1МГЦ" это условность. Главное наличие меандра.

Konstantin_M
Кстати как там этот мегагерц формируется, если не лень, конечно опять к проге возвращаться?
Petka
Настраивается таймер. В обработчике инвертируется заданный пин. Вот и весь меандр. Само-собой получается не мегагерц, а значительно меньше. но это не принципиально. Для спасения АВРок с неправильно выставленными фузами тактирования годится.

DVF
У данного программатора есть выход 1МГц. Как с его помощью можно воскресить МК - ATmega32? и подробнее, пожалуйста, если можно?
GDI
Подать этот 1МГц на вход внешнего тактирования МК, обычно это XTAL1, подробнее можно почитать в даташите на ваш контроллер в разделе о внешнем тактировании. Затем программатором исправить фьюзы на правильные.

Andrew Bond
...я только начинаю осваивать контроллёры. Расскажите пожалуйста, для чего нужен сигнал 1 МГц и как этим пользоваться? Вроде им можно восстановить неправильно прошитые фьюзы? Как это сделать и восстанавливает он бит SPIEN?
Petka
1) иногда пользователи неправильно зашивают фузы, определяющие способ тактирования АВРки. Например пользователь расчитывал на встроенный RC генератор, а запрограммировал фузы на внешний кварц или внешний генератор. тогда после ресета АВРка не сможет запустится, т.к. снаружи тактирование не подаётся. Поэтому не работает и дальнейшая перепрошивка чипа. Если подать ожидаемое внешнее тактирование, то АВРка снова может программироваться.
2) фуз SPIEN соответственно таким образом поправить не получится т.к. он СОВСЕМ отключает возможность программирования по ISP. Будьте внимательны.

vladumur
Может неправильно применил вывод 1 Мгц? я подсоединял вывод 1Мгц к xtal1-9пин.
Petka
Правильно.
На самом деле генерация меандра на выводе "1Mhz" софтовая. поэтому там меандр ~100кГц. укажите в студии более низкую (например 125кГц)частоту контроллера и попробуйте повторить эксперимент.


Если по какой-либо причине собираем прошивку для программатора сами
11111
Если Вас не затруднит, с этого момента подробнее. Как самому поменять в прошивке используемые пины
Petka
скачиваете и устанавливаете winavr.
скачиваете последнюю версию исходников.
в файле "analog.h" меняете #define RESETADC на номер АЦП к которому подключен делитель с ресета.
в файле "led.h" букву порта и номер пина, куда подключен светодиод.
в файле "spi.h" аналогичным образом настраиваете куда подключены сигналы "TG_SCK", "TG_MISO", "TG_RESET" и "TG_MOSI".
в файле "makefile" прописываете свой чип и свой кварц.
потом в каталоге с исходниками запускаете через консоль "make".
получаете прошивку.

Petka
Советую собрать HEX самому, тем более, это достаточно просто:
1) установить WinAVR.
2) в makefile выбрать свой камень и частоту кварца
3) выполнить "make all" и HEX файл готов.

sergey_kkks
Каким компилятором нужно компилировать программу?
Petka
gcc (winavr).

FCK
А если снизить частоту до 57600, тогда точность будет по КодВижну 0,2%
Petka
В том-то и дело что на stk500v2 заложена стандартная частота 115200. 57600 это уже будет отклонением от стандартных настроек, и например кодвиженовский проггер не сможет работать с этим железом.

ShuraX
По поводу BAUDRATE вопросик. Я так понял для моего кварца (16МГц) необхоимо поставить 38400?
Хотя сейчас он у меня стоит 115200 и прекрасно связывается и отвечает.
Petka
Считаем вместе:

1) 16МГц = 16000000
2) UART AVR для себя делит частоту ядра на 16, итого UART работает на частоте 16000000/16 = 1000000 (1МГц)
3) Нам надо получить 115200, для этого делитель должен быть 1000000/115200 ~ 8,68 в делитель можно записать только целое число. 8,68 округляем до 9.
4) Считаем обратно: внутреннюю частоту UART делим на наш округлённый делитель: 1000000/9 = 111111,111(1)
5) Считаем насколько полученная частота отличается от требуемой: (111111,111 - 115200) ~ 4089
6) Теперь переводим ошибку в проценты (4089/115200)*100% = 3,54%
7) Уарт передаёт символ за 10бит (8 - байт + 1 стоповый бит + 1 стартовый). Для успешного принятия символа требуется, что бы за 10 бит погрешность накопилась не больше чем на пол бита. Пол бита составляет 5% от 10 бит.
8) Итого понимаем, что для успешного приёма нужно что-бы погрешность частоты была не больше 5%. С одной стороны полученное значение в пункте (6) меньше 5%, значит Приём будет работать без ошибок. Но с другой стороны "на том конце" тоже могли заложиться на некоторое отклонение по частоте. Значит 5% допустимой погрешности надо делить на 2 (на обе стороны). Итого на уарт допустимо отклоняться не боллее 2,5%, а эта цифра уже меньше, полученной в пункте (6). Так что если делать на совесть, то надо уменьшить частоту, до такой, при которой полученная ошибка будет меньше 2,5%. А если для себя, тяп-ляп, и если есть уверенность что в компе uart держит частоту точнее 1,45% (5%-3,54%), то можно оставить скорость такой.


Вопросы про модификацию «by Petka»
Давно назрела необходимость описать что же такое "AvrUsb500 by Petka" и чем же отличается от других "USB" программаторов.

1)
Вопрос:
В чём ключевое отличие схемотехники "AvrUsb500 by Petka" от прочих программаторов, построенных по схеме (USB->COM + AVR) например от tuxgraphics?
Ответ:
В схеме программатора кроме линий RX/TX от USB преобразователя подключены так-же линии RTS, CTS, DTR, DSR. Причём подключение сделано совместимым с распространёнными "COM-port bit-bang programmer" программами (например PonyProg, avrdude).
Вопрос:
И что это даёт?
Ответ:
а) Это даёт возможность запрограммировать кристалл AVR, входящий в программатор, без использования другого программатора. (Решение проблемы "Курицы и яйца"). Это очень полезно для тех, у кого нет под рукой другого программатора AVR (новички в AVR или те кто лишился LPT порта).
б) Это избавляет от дополнительного разъёма (для программирования программатора), что позволяет сделать очень компактную печатную плату (размером с брелок).

2)
Вопрос:
Чем отличается прошивка в "AvrUsb500 by Petka" от Tuxgraphics?
Ответ:
а) Прошивка "AvrUsb500 by Petka" была сделана на основе исходников Tuxgraphics.
б) К оригинальной прошивке была добавлена возможность менять расположение всех внешних сигналов (для удобства создания своей разводки платы)
в) добавлена возможность задавать свою скорость UART.
г) добавлена возможность задавать свою частоту кварца.
д) добавлена возможность конфигурировать режим 1Mhz/fast через компорт
е) добавлена возможность использования mega48 в программаторе за счёт отключения консольного режима при компиляции для mega48.

3)
Вопрос:
Что ещё сделано в "AvrUsb500 by Petka"?
Ответ:
а) Сделана разводка печатных плат для схемотехники "AvrUsb500 by Petka". Прилагаются готовые разводки (для удобного изготовления печатных плат в домашних условиях) как для ft232rl, так и для ft232bm.
б) Каждая топология рассчитана для односторонней печатной платы. Нет необходимости делать перемычки или совмещать шаблоны.
в) Сделаны готовые фотошаблоны в PDF как для лазерно-утюгового метода, так и для фоторезистивных технологий.

Qwertty
Собственно вопрос - как изменение схемотехники вызвало уменьшение программы?
Petka
Изменена не только схемотехника, но и прошивка. При компиляции под M48 отключается терминальный режим.

Carbon
….По схеме от tuxgrafix первой версии ….
Petka
Прошивка сделана для моей схемы (схема отличается от tuxgraphics). как минимум не совпадает разпиновка на разъём программирования.


Cz0
Метод, предложены Вами куда интересней, потому что позволяет шить контроллер штатными средствами без костылей типа битбанга....Идея ясна. Ваш вариант - всего лишь разновидность serial bit banging, посмотрев конфигурацию avrdude нашел много различных вариантов, в том числе и тот, что у вас, обзывается sipprog (он же ponyser). Остается вопрос: почему в настройках понипрога Вы инвертируете rts dtr и cts? Потому, что соотв. выходы FT232 инвертированы?
Petka
В оригинальной схеме ponyser уровни +12в, -12в (RS232) с помошью диодов, резисторов, стабилитронов преобразуются соответственно в +5в и 0в. (а ft232 делает 0в и +5в соответственно ) Отсюда и инверсия.

Lubitel
На схеме (на выходном разъеме) Обозначение Jtag сигналов. Планируется ли его реализовать?
Petka
У меня в планах нет, может кто-нибудь другой попробует?

lve
Былоб здорово добавить Плис Altera (JTAG), обычно используется ByteBlasterMV и т.п., еще
есть USB blaster.
Petka
Не на этом железе.
Огромный плюс этого программатора в том что его очень просто собрать в домашних условиях (односторонняя печатка, наличие шаблонов для "лазерного утюга" и для "фоторезиста", можно спрограммировать АВРку без программатора, минимум деталей, не надо (под/на)страивать, соответствие спецификации USB, и поддержка "фирменного" протокола stk500v2, открытость исходников, стандартные драйвера). Если пытаться сделать из этого программатора нечто больше, то многие достоинства могут потеряться =(.

GDI
А почему бы не сделать генерацию 1МГц сигнала аппаратным ШИМом, например с ноги PD5(PD6, PB1), если у вас там мега48? Судя по схеме из первого поста темы, все эти ножки свободны.
Petka
Можно, ножки свободны. Более того, в программе заложена возможность использовать аппаратный ШИМ. Но плата уже разведена. Может в будущих ревизиях этот вывод и будет выведен
Go to the top of the page
 
+Quote Post
76 страниц V  « < 15 16 17 18 19 > »   
Start new topic
Ответов (240 - 254)
NicholasR
сообщение Mar 11 2010, 21:38
Сообщение #241


Частый гость
**

Группа: Свой
Сообщений: 175
Регистрация: 19-01-09
Пользователь №: 43 620



У меня также заработал и выяснилась проблемка, которая все портила))) Косяк был не в программаторе, а плате программируемого контроллера.
Go to the top of the page
 
+Quote Post
Radistor
сообщение Mar 13 2010, 11:08
Сообщение #242





Группа: Участник
Сообщений: 4
Регистрация: 13-03-10
Пользователь №: 55 927



Petka, большое спасибо за программатор! Собрал схему на FT232rl и сразу заработало (правда пока готовый девайс не дошли руки прошить.)

Хотел задать вопрос. Какая прошивка актуальна, на сегодняшний момент?

На первой странице проекта есть два вида прошивки:

Готовые прошивки и исходники актуальные на 8 июля 2009 года

Обновление IgorKossak - Oct 19 2009, 10:31

Я посчитал, что прошивка от октября 2009 должна быть новее июля 2009, но видимо ошибся laughing.gif

И хотелось бы дать пару советов Petka. smile.gif
Мне кажется стоит довести документацию до ума. Сейчас ее в принципе достаточно, но она как то разбросанна. Вот те недостатки которые заметил я.

- Нет четкой ссылки на последнюю, актуальную, версию прошивки. (директория AvrUSB500_by_Petka_HEX_SRC_v5_fast вложенная в директорию AvrUSB500_by_Petka_HEX_SRC_v6_uni тоже не добавляет ясности)
- Стоило бы сделать HowTo и в русской версии
- Скриншот с фьюзами PonyProg можно запихнуть в HowTo
- Описание настройки программатора через гипертерминал размазано по всему форуму.

Не сочтите мои советы придирками, но новичкам бы было заметно проще.

Сообщение отредактировал Radistor - Mar 13 2010, 11:11
Go to the top of the page
 
+Quote Post
kot-69
сообщение Mar 13 2010, 19:07
Сообщение #243





Группа: Новичок
Сообщений: 7
Регистрация: 10-04-08
Из: Херсон
Пользователь №: 36 664



Цитата(Radistor @ Mar 13 2010, 14:08) *
...


на все эти вопросы были ответы. и для Дудика автор давал настройки. и всё становится на УРА... я еще не говорил, но автору огромное СПАСИБО и РЕСПЕКТ!!

Сообщение отредактировал IgorKossak - Mar 13 2010, 20:31
Причина редактирования: Бездумное цитирование
Go to the top of the page
 
+Quote Post
Radistor
сообщение Mar 13 2010, 22:04
Сообщение #244





Группа: Участник
Сообщений: 4
Регистрация: 13-03-10
Пользователь №: 55 927



Цитата(kot-69 @ Mar 13 2010, 22:07) *
на все эти вопросы были ответы. и для Дудика автор давал настройки. и всё становится на УРА... я еще не говорил, но автору огромное СПАСИБО и РЕСПЕКТ!!


Да я тоже нашел все настройки, и сразу заработало (еще раз большое спасибо Petke).

Просто некоторые моменты очевидны не сразу и приходится просматривать форум и FAQ, что не есть гуд.
ИМХО, для новичков было бы хорошо собрать все в одном архиве. Что бы там была самая последняя рабочая версия прошивки, схема, фьюзы и т.д.
Если расписать инструкцию по шагам, типа скачать понипрог по адресу такому-то, поставить фьюзы такие то, меньше было-бы проблем и вопросов. Petka, как-то упоминал, что англоязычный HowTo является своеобразным тестом. Т.е что бы новички, которые не знают английский язык, шли бы повышать свое образование, а потом собирать программатор. Я частично соглашусь с этим мнением, но на мой взгляд совсем уж новичок, не поймет вообще что такое программатор и чего это тут люди обсуждают на сотню листов biggrin.gif
А людям хоть немного разбирающимся в электронике (думаю и профессионалам тоже) проще купить нужные детали, вытравить готовую плату, особо не напрягая мозг выполнить ряд действий и получить готовый программатор smile.gif
Ну а тем, кто хочет поэкспериментировать или у кого нет нужных деталей, уже могут делится своими мнениями и советами на форуме.

Еще раз повторюсь (что бы ненароком не навлечь гнев форумчан smile.gif ) что это сугубо мое мнение и оно может не совпадать с мнением других участников rolleyes.gif
Go to the top of the page
 
+Quote Post
zuruzuyn
сообщение Mar 13 2010, 23:22
Сообщение #245





Группа: Новичок
Сообщений: 1
Регистрация: 13-03-10
Пользователь №: 55 936



Mrgnstrn Мне понравилась Ваша плата на 6-ой странице этой темы по сылке Timm_STK500v2_PL2303_Mega8_withoutSelfProg.zip. Уже собрал и только тогда заметил что назначения портов не соответствует основной схеме. Разобраться и поменять прошивку мне сложно. Не могли бы Вы выложить прошивку к этому варанту схемы. Да, еще МК я использовал AtMega88/
Go to the top of the page
 
+Quote Post
flyer66
сообщение Mar 14 2010, 18:50
Сообщение #246





Группа: Новичок
Сообщений: 2
Регистрация: 8-02-10
Пользователь №: 55 374



Petka ,за подсказку спасибо! Завелось.Было 4 непропая.Теперь очередной вопрос, уж не взыщите.Периодическе в ветке всплывает вопрс- сколько раз мигает светодиод? Из чего я делаю вывод что моргает он быстро.Уменя он моргает ровно 6 раз.Примерно раз в секунду.Это нормально? Если нет, то что делать, куда смотреть?При подключении таргета загорается на постоянно, Студия и Коде вижн программатора не находят, на выходе 1Мгц ничего нет.

Сообщение отредактировал flyer66 - Mar 14 2010, 18:52
Go to the top of the page
 
+Quote Post
Radistor
сообщение Mar 14 2010, 20:06
Сообщение #247





Группа: Участник
Сообщений: 4
Регистрация: 13-03-10
Пользователь №: 55 927



Всем привет!
На днях стал программировать Atmega128 и столкнулся с тем, что микроконтроллер не хочет прошиваться crying.gif

Вроде у NicholasR, возникали какие то трудности с программированием Atmega128, буду рад, если поделится своими советами.

Вообщем, прошу помощи уважаемые форумчане. Немного о схеме: Выводы MOSI и MISO подключенны к выводам PE0 и PE1. Программатор на 90% должен быть рабочим (быстро мигает 6 раз светодиодом, при подключении к плате светодиод горит постоянно, вобщем все хорошо). Плата типа тестовой, разводка выполнена не очень корректно + нет подтягивающего резистора на RESET. Также на плате сделан разъем под JTAG... тьфу тьфу тьфу с ним проблем не возникло.
А подключаю программатор AvrUsb500 by Petka и контроллер не видится, не AVRStudio не CodeVision. В чем проблема так и не смог разобрать crying.gif Если надо могу прислать скриншоты осциллограмм, на разных выводах.
Go to the top of the page
 
+Quote Post
Petka
сообщение Mar 15 2010, 10:41
Сообщение #248


Профессионал
*****

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



Цитата(zuruzuyn @ Mar 14 2010, 02:22) *
Разобраться и поменять прошивку мне сложно. Не могли бы Вы выложить прошивку к этому варанту схемы. Да, еще МК я использовал AtMega88/

Попробуйте сначала сами. На первой странице форума описано как. Что не получится - спрашивайте.

Цитата(flyer66 @ Mar 14 2010, 21:50) *
Примерно раз в секунду.Это нормально? Если нет, то что делать, куда смотреть?

Неправильно прошиты Фузы. Или вообще не прошиты.

Цитата(Radistor @ Mar 14 2010, 23:06) *
Всем привет!
Плата типа тестовой, разводка выполнена не очень корректно + нет подтягивающего резистора на RESET.

Конденсаторы на каждой паре VCC-GND есть?
Программатор хоть одну мегу с момента пайки запрограммировать смог?
Go to the top of the page
 
+Quote Post
Radistor
сообщение Mar 15 2010, 13:29
Сообщение #249





Группа: Участник
Сообщений: 4
Регистрация: 13-03-10
Пользователь №: 55 927



Цитата(Petka @ Mar 15 2010, 13:41) *
Конденсаторы на каждой паре VCC-GND есть?
Программатор хоть одну мегу с момента пайки запрограммировать смог?


конденсаторов к сожалению нету. Вообщем я еще немного поколдовал. Один раз в AVRStudio удалось прочитать фьюзы и прошить программу, после чего, девайс опять стал недоступен. Скорее всего дело в неправильной схемотехнике моего девайса, но все таки думаю, что конденсаторы по питанию не должны так сильно влиять на возможность программирования, может конечно я ошибаюсь.

Из замеченных странностей:
Если программатор подключен только к плате и не подключен к USB, то на выводе RST присутствует низкий уровень (1,8В), если же отключить программатор от платы, то уровень высокий (4,6В)

Светодиод программатора, при подключении к плате горит постоянно в независимости от Reset target at connector polarity test

При попытке прочитать сигнатуру или фьюзы в AVRStudio светодиод программатора гаснет а потом 6 раз мигает (как при включении в USB)

В CodeVision, светодиод просто тухнет на секунду и загорается вновь.

Прикладываю осциллограмму с вывода SCK. Видно, что фронты немного завалены, но в целом достаточно хороший сигнал. По остальным ногам также.

P.S. Есть возможность прошить Atmega8, но это только дня через 2.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
ds1307
сообщение Mar 15 2010, 14:34
Сообщение #250


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 6-03-09
Пользователь №: 45 759



Цитата(Radistor @ Mar 15 2010, 15:29) *
конденсаторов к сожалению нету. Вообщем я еще немного поколдовал. Один раз в AVRStudio удалось прочитать фьюзы и прошить программу, после чего, девайс опять стал недоступен. Скорее всего дело в неправильной схемотехнике моего девайса, но все таки думаю, что конденсаторы по питанию не должны так сильно влиять на возможность программирования, может конечно я ошибаюсь.


Ошибаетесь и сильно. В цифровых схемах должны обязательно стоять конденсаторы по питанию. Это азы цифровой схемотехники.
И еще если программатор сделан правильно, то меги 128 он программирует без проблем из CodeVision. Проверял лично и неоднократно.

Сообщение отредактировал ds1307 - Mar 15 2010, 14:37
Go to the top of the page
 
+Quote Post
amv2000
сообщение Mar 15 2010, 18:35
Сообщение #251


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 1-03-10
Пользователь №: 55 744



Вот немного попытался собрать из всего материала: в частности собиралось для себя кто дополнит буду благодарен

Сообщение отредактировал IgorKossak - Mar 15 2010, 18:51
Причина редактирования: Совершенно ненужное цитирование!!!

Прикрепленные файлы
Прикрепленный файл  __________________.doc ( 81.5 килобайт ) Кол-во скачиваний: 451
 
Go to the top of the page
 
+Quote Post
marinter
сообщение Mar 19 2010, 12:42
Сообщение #252





Группа: Новичок
Сообщений: 1
Регистрация: 19-03-10
Пользователь №: 56 070



Спасибо, Petka, за конструкцию.
Собрал 2 варианта, первый с переключателем 3,3/5В на ATmega8 14,7456 МГц, второй на ATmega88 18,432 МГц с добавкой MAX3001 для программирования схем с низковольтным питанием. Одна из ATmega162L прошилась при напряжении питания 2,05 В. Пришлось для этого подбирать R9.
Go to the top of the page
 
+Quote Post
Bugs Bunny
сообщение Mar 19 2010, 22:35
Сообщение #253





Группа: Участник
Сообщений: 6
Регистрация: 11-12-08
Пользователь №: 42 391



Собрал программатор на плате от -JonnS-, Atmega8 прошилась нормально, при нажатии несколько раз на enter в терминале вижу такое:

Код
avrusb500v2-1.2

Enter SW Version Major in hex [2]:
Enter SW Version Minor in hex [a]:
Reset target at connector polarity test(1=on 0=off)[1]:

OK, my SW version is now: 2.0a (hex)
Select 'stk500 by petka' mode. (1=1Mhz 0=Fast)[255]:
Ready. Just close the terminal. No reset needed.


Программатор не испытывал, т.к. не на чем. Но вот появилась необходимость перепрошить Atmega168-20PU (в нее по ошибке залили другую прошивку), т.е. нужно ее стереть и залить нужную прошивку. В свойствах виртуального ком-порта я установил скорость 115200 и отключил управление потоком. Запускаю AVR Studio4, Tools -> Programm AVR -> Connect, дальше выбираю как на картинке:



Вроди все нормально. Но не могу ничего поделать с Atmega168 - ни фузы прочесть, ни стереть, ни записать.





При нажатии на программаторе кнопки S1 загораются светодиоды "Target" и "Program", к атмеге подвел сигналы MOSI, MISO, RESET, GND, VCC и SCK. Подключал по даташиту, неоднократно проверил правильность подключения проводов к атмеге и к программатору. Пожалуйста подскажите где собака порылась - неправильно собрал программатор или атмега умерла?
Go to the top of the page
 
+Quote Post
Petka
сообщение Mar 20 2010, 08:38
Сообщение #254


Профессионал
*****

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



Цитата(Bugs Bunny @ Mar 20 2010, 01:35) *
Собрал программатор на плате от -JonnS-,

Эта версия железа мною не поддерживается.
Ищите чем отличается оригинальная схематика от той, что вы собрали. Скорее всего отличия по питанию таргета.
Цитата
При нажатии на программаторе кнопки S1 загораются светодиоды "Target" и "Program", к атмеге подвел сигналы MOSI, MISO, RESET, GND, VCC и SCK. Подключал по даташиту, неоднократно проверил правильность подключения проводов к атмеге и к программатору. Пожалуйста подскажите где собака порылась - неправильно собрал программатор или атмега умерла?

Либо в таргете неправильно зашиты фузы тактирования, либо отсутствует питание. Судя по скриншотам программатор функционирует. Что за кнопка S1 ? такой никогда не было.
Go to the top of the page
 
+Quote Post
Bugs Bunny
сообщение Mar 20 2010, 10:32
Сообщение #255





Группа: Участник
Сообщений: 6
Регистрация: 11-12-08
Пользователь №: 42 391



Спасибо, разобрался, видимо меге168 не хватало обвязки, когда попробовал программировать внутрисхемно - все получилось.
Go to the top of the page
 
+Quote Post

76 страниц V  « < 15 16 17 18 19 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 2nd September 2025 - 18:50
Рейтинг@Mail.ru


Страница сгенерированна за 0.01603 секунд с 7
ELECTRONIX ©2004-2016