|
|
  |
USB programmer AVR910, с драйвером от obdev |
|
|
|
May 23 2008, 15:40
|

Частый гость
 
Группа: Участник
Сообщений: 148
Регистрация: 23-02-07
Пользователь №: 25 618

|
Цитата(Nick_Shl @ May 23 2008, 18:11)  Так я уже и сам скомпилил, отловил баги и протестил. Результат чуть выше... Так как получающийся файл не работает, может, стоит обновить файлы в ProtDoper.zip ? p.s. ProtDoper.hex из ProtDoper.rar в студии работает нормально, а в CodeVision ничего не поменялось. (одну операцию выполняет, вторую нет) Скорость работы не изменилась.
Сообщение отредактировал Marian - May 23 2008, 15:41
|
|
|
|
|
May 24 2008, 09:53
|
Участник

Группа: Участник
Сообщений: 55
Регистрация: 17-04-08
Пользователь №: 36 850

|
Цитата(Marian @ May 23 2008, 18:40)  Скорость работы не изменилась. Потому что похоже она максимальна. Когда-то prottoss писал: Цитата(prottoss @ Oct 18 2006, 13:24)  С USB CDC классом я разобрался, можно сваять ПОЛНЫЙ Communication Port со реальной скоростью до 800 bps (я считаю так - обращение хоста к девайсу минимум 10 мс - 8 байт за обращение), хотя для приложения может прикидываться хоть Мегабитным. Очевидно имея ввиду не бит в секунду, которыми обычно скорость com портов меряют, а байт. У меня прошивка на 53кб залилась за 60 секунд. 54274/60 = 904 байт/сек... Хотя там же он писал: Цитата(prottoss @ Oct 18 2006, 14:30)  Да и еще, справшивают некоторые, почему не STK500(AVRDoper) а AVR910? Потому что, если кто заметил, AVR910 в моем исполнении работает, во много крат быстрее, чем AVRDoper, с ПО, поддерживающим блочную запись/чтение, так как у STK500 в протоколе нет таковой, а у 910 есть... Цитата(Marian @ May 23 2008, 18:40)  Так как получающийся файл не работает, может, стоит обновить файлы в ProtDoper.zip? Если надо выложу, но чуть позже. Вобще я этот файл выложил потому, что сам не знал чем и как компилить. Естественно он оказался с ошибками. Цитата(Marian @ May 23 2008, 18:40)  p.s. ProtDoper.hex из ProtDoper.rar в студии работает нормально В смысле при программировании или в эмуляторе? Надо бы точнее выражатся  . Цитата(Marian @ May 23 2008, 18:40)  а в CodeVision ничего не поменялось. (одну операцию выполняет, вторую нет) Да как-то подглюкивает. Попробую разобраться, а в качестве средства отладки буду использовать моргание светодиодиками  ... P.S. Утром был на рынке и видел ещё одну реинкарнацию( кроме МастерКит'а) этого девайса - тоже AVR910 и по деталькам поход очень... Стоил 37.5$. Хотя самому сделать не больше 10$ стоит... Фото: 
|
|
|
|
|
May 24 2008, 19:29
|
Участник

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

|
AVRStudio AVRRrog не поддерживает ATMega 48,88 и т.п.???
|
|
|
|
|
May 25 2008, 15:49
|

Частый гость
 
Группа: Участник
Сообщений: 148
Регистрация: 23-02-07
Пользователь №: 25 618

|
Цитата(svs39 @ May 24 2008, 22:29)  AVRStudio AVRRrog не поддерживает ATMega 48,88 и т.п.??? Пользуюсь прошивкой STK500, там, в списке есть 48 и 88 .
|
|
|
|
|
May 25 2008, 18:02
|
Участник

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

|
Цитата(Marian @ May 25 2008, 18:49)  Пользуюсь прошивкой STK500, там, в списке есть 48 и 88 .
Так я по теме- программатор prottoss в AVRStudio работает через AVRProg, а там не видно 48 и 88
|
|
|
|
|
May 25 2008, 18:30
|
Участник

Группа: Участник
Сообщений: 55
Регистрация: 17-04-08
Пользователь №: 36 850

|
Попытался разобраться с глюками... Судя по всему пропадает один USB пакет - 8 байт... Вот лог из студии: Код Port opened successfully Returned status: Command succeeded
Sending packet 05/25/2008 21:19:16.890 ( 200ms) > 1B 01 00 01 0E ( 200ms) > 01 ( 200ms) > 14 Sequence number 1, message size 1, checksum 20 CMD_SIGN_ON
Receiving packet 05/25/2008 21:19:16.890 ( 200ms) < 53 54 4B 35 30 ( 200ms) < 30 5F 32 02 (expected 1 more bytes but timed out) Sequence number n/a, message size n/a, checksum n/a No data in packet Returned status: Client: Total timeout exceeded (PC side gave up)
Sending packet 05/25/2008 21:19:17.093 ( 200ms) > 1B 02 00 01 0E ( 200ms) > 01 ( 200ms) > 17 Sequence number 2, message size 1, checksum 23 CMD_SIGN_ON
Receiving packet 05/25/2008 21:19:17.093 ( 200ms) < 1B 02 00 0B 0E ( 200ms) < 01 00 08 53 54 4B 35 30 30 5F 32 01 Sequence number 2, message size 11, checksum 1 CMD_SIGN_ON Returned status: Command succeeded Студия открывает порт и посылает команду CMD_SIGN_ON, но девайс шлет не корректный ответ. Тогда студия делает вторую попытку - и все работает. Если посмотреть второй ответ, то выкинув первые 8 байт получим первый ответ. Далее студия держит порт открытым пока мы не закроем программатор. CodeVision работает по другому - при подаче каждой команды заново открывает порт и инициализирует ISP. При этом второй попытки не делает. Отсюда и ошибка. Кроме этого все немного хитрее, потому как ошибка плавающая... Например в студии можно сколько угодно раз открывать программатор - ошибки в логах нет. Но стоит прочитать сигнатуру чипа - при следующем открытии будет. Странно все это...
|
|
|
|
|
Jun 15 2008, 16:02
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 16-07-07
Пользователь №: 29 166

|
Долго возился с запуском программатора В результате получилось,что: - вместо 1.5k ставить 2к (работа с питанием через 1, 2 и без диодов) - выкинуть резистор 1мом (4 нога) и 10ком (1 нога) - выкинуть электролит - уменьшить резисторы 330 ом на ISP ~ до 30 ом, а лучше вообще закоротить - исключить сигнал LED из разема ISP
Эти доработки повлияли в лучшую сторону для прошивки AVR910 v.1.05 (удалось добится устойчивой работы в режиме LOW SCK), в обычном режиме без изменений - ошибка режима программирования.
С прошивкой STK500 работает быстро и устойчиво, но через раз, а через раз предлагает варианты: проверить питание, подключение и т.п. Похоже STK500 можно довести до ума (драйвер) - разница в начале выполнения новой команды после успешного или без успешного выполнения предыдущей возможно какая то инициализация или перезагрузка.
Отладка происходила с подключенным частотомером на 90S2313 от МастерКита 8051(самопал). Ноги MISO, MOSI и SCK используются в управлении разрядами АЛС318. ПО - ChipBlasterAVR и CodeVisionAVR, печатная плата от автора, чуть доработана под корпус BOX-G025 из ЧИП & ДИПа, питание на частотомер пробовал и свое и от программатора. Пробовал разные кварцы (3), ATmega8 из 2х разных мест
При заливке прошивки от Prottoss возникла проблема связанная с размером файла v1.05 - 4841 на программаторе AutoProg - RomService. По их информации файл должен быть четным, так как по спецификации ATMEL в буфер передается 2 байта по очереди после этого зашивается слово (16 бит), передача одного байта из 2х с зашиванием наверно не есть правильно, хотя софт от ATMELA это делает (нарушают свои правила), в местах дыр в файле в MC сохраняется старая информация. Прошивки 4 и 5 имеют не четную длину с одинаковым окончанием :
000012D0: 0000 0000 0000 0000 0000 00FF 0000 0000 000012E0: 0000 0000 0000 D200 ..5A
Точки условно на самом деле пусто. При зашивке ATMELовским софтом получается - FF5A а AutoProg по умолчанию отбрасывает 5A как ошибочное неполное слово. PROTTOSS - ПРАВИЛЬНО ЛИ ЭТО ????? Prottos подскажи - была какая то ошибка с ответом /r вместо Y, в версии 1.05 она исправлена или нет ?
Просьба к Prottos и Alfa гляньте драйвера может получится довести до ума.
|
|
|
|
|
Jun 17 2008, 07:32
|
Местный
  
Группа: Свой
Сообщений: 364
Регистрация: 15-04-08
Из: UA
Пользователь №: 36 798

|
Цитата(lve @ Jun 15 2008, 19:02)  Долго возился с запуском программатора - уменьшить резисторы 330 ом на ISP ~ до 30 ом, а лучше вообще закоротить ИМХО, не стОит этого делать. выходные сопротивления стоят не просто так... (хотя, конечно, если с ними ну никак не работает, и таргет только на 5В...)
|
|
|
|
|
Jun 18 2008, 07:47
|
Участник

Группа: Участник
Сообщений: 55
Регистрация: 17-04-08
Пользователь №: 36 850

|
Цитата(garlands @ Jun 17 2008, 10:32)  ИМХО, не стОит этого делать. выходные сопротивления стоят не просто так... (хотя, конечно, если с ними ну никак не работает, и таргет только на 5В...) Единственный резистор который можно выкинуть - на резет, потому как он должен( этот момент надо уточнить) иметь на выходе или высокоомное состояние, или землю. И проблем с согласование 3-5 вольт на нем быть не должно...
|
|
|
|
|
Jun 18 2008, 08:39
|
Местный
  
Группа: Свой
Сообщений: 364
Регистрация: 15-04-08
Из: UA
Пользователь №: 36 798

|
Цитата(Nick_Shl @ Jun 18 2008, 10:47)  Единственный резистор который можно выкинуть - на резет, потому как он должен(этот момент надо уточнить) иметь на выходе или высокоомное состояние, или землю. И проблем с согласование 3-5 вольт на нем быть не должно... и то, если посмотреть на распиновку ISP и посмотреть что будет, если случайно перевернуть его... мега в программаторе скорее всего ну очень сильно обидится... Или еще вариант: рядом JTAG. Как вы думаете, насколько большая вероятность воткнуть одно вместо другого?  А там вообще, VTREF попадает аккурат на землю ISP... Забыл, что мега на 3,6В трудится. Лично себе я ее перевез на 5В и поставил согласование уровней с таргетом. Да, на один корпус больше, но не фатально совсем. Зато как-то поспокойнее будет.
|
|
|
|
|
Jun 20 2008, 16:10
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 16-07-07
Пользователь №: 29 166

|
prottoss глянь пожалуйста мой предыдущий пост, может чего подскажеш, в том числе по поводу прошивки (что у тебя зашито в самом конце на месте дырки).
Просьба, у кого хорошо работает, считать прошивку контроллера и где нибудь выложитью
|
|
|
|
|
  |
19 чел. читают эту тему (гостей: 19, скрытых пользователей: 0)
Пользователей: 0
|
|
|