Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AVR-Doper
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
TomaT
Вот эта штука http://www.obdev.at/products/avrusb/avrdoper.html
Не могу понять почему не захотел ставится драйвер с .inf файликом:
Код
; Windows USB CDC Setup File
; Copyright (c) 2000 Microsoft Corporation
; Copyright (c) 2006 Recursion Co., Ltd.
; Copyright (c) 2006 OBJECTIVE DEVELOPMENT Software GmbH

[Version]
Signature="$Windows NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%OBDEV%
LayoutFile=layout.inf
DriverVer=06/06/2006,1.0.0.0

[Manufacturer]
%MFGNAME% = OBJECTIVE DEVELOPMENT Software GmbH

[DestinationDirs]
DefaultDestDir=12

[ObDev]
%Modem3% = Modem3, USB\VID_16C0&PID_05E1

;------------------------------------------------------------------------------
;  Windows 2000/XP Sections
;------------------------------------------------------------------------------

[Modem3.nt]
CopyFiles=USBModemCopyFileSection
AddReg=Modem3.nt.AddReg

[USBModemCopyFileSection]
usbser.sys,,,0x20

[Modem3.nt.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,usbser.sys
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"

[Modem3.nt.Services]
AddService=usbser, 0x00000002, DriverService

[DriverService]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%\usbser.sys

;------------------------------------------------------------------------------
;  String Definitions
;------------------------------------------------------------------------------

[Strings]
OBDEV="OBJECTIVE DEVELOPMENT Software GmbH"
MFGNAME="www.obdev.at"
Modem3="Communications Port"
SERVICE="USB-232 Emulation Driver"


Зато все заработало вот с этим:
Код
; Windows 2000 and XP setup File for AT89C5131 demo
[Version]
Signature="$Windows NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%ATMEL%
LayoutFile=layout.inf
DriverVer=10/15/1999,5.0.2153.1
[Manufacturer]
%ATMEL%=ATMEL
[ATMEL]
%ATMEL_CDC%=Reader, USB\VID_16C0&PID_05E1
[Reader_Install.NTx86]
;Windows2000
[DestinationDirs]
DefaultDestDir=12
Reader.NT.Copy=12
[Reader.NT]
CopyFiles=Reader.NT.Copy
AddReg=Reader.NT.AddReg
[Reader.NT.Copy]
usbser.sys
[Reader.NT.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,usbser.sys
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
[Reader.NT.Services]
AddService = usbser, 0x00000002, Service_Inst
[Service_Inst]
DisplayName = %Serial.SvcDesc%
ServiceType = 1; SERVICE_KERNEL_DRIVER
StartType = 3; SERVICE_DEMAND_START
ErrorControl = 1; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbser.sys
LoadOrderGroup = Base
[Strings]
ATMEL = "Atmel"
ATMEL_CDC = "AVRDoper USB Programmer"
Serial.SvcDesc = "USB Serial emulation driver"
prottoss
Кстати, как впечатления о работе сего девайса?
TomaT
Вполне положительные. Всяко лучше чем STK-200 smile.gif
Alex_Pol
AVR-Studio его понимает?
TomaT
А как же! Это ж STK-500.
prottoss
Цитата
А как же! Это ж STK-500.
Кстати, счас планирую собрать на подобном USB STK500, jtag, и еще чего нить до кучи...Может пару RS232 воткнуть? И, по моему, параллельное программирование e AVRDOPER только МК в DIP8 + DIP14? Что помешало немцам сделать вплоть до DIP40?

Кстати, как параллельное программирование? На сколько быстрое? Мне предлагают все же воткнуть драйвер USB... Но на одном МК как то более заманчиво...
JK9
a14.gif Спасибо, ТомаТ!!!!!!!!!!!!!!! cheers.gif Работает (на первый взгляд biggrin.gif ).
Studio его определила, хотя с фирмваре там глюк какой-то, хочет даунгрейд сделать, видите ли, моя версия фирмвар 2.04 не поддерживается AvrSt.4. Даунгрейд сделать не удалось - пишет "программер нот фаунд". Может с пином резета глюки. Как сделать, чтоб можно было даунгрейдить и апгрейдить МК программатора?
Кстати, я не могу понять, как Доппер работает с неподключенным к питанию резетом (странно задумали как-то)? И в фузах резет не отключен huh.gif
Я еще не прошивал никаких камней, но выглядит многообещающе... Ты прав, мой STK200 даже покраснел от стыда слегка :-)
А как тебе удалось все исправить в этом новом, установочном файле? wink.gif

То Protosss: Хорошие твои идеи! Твой USB программатор прикольный получился - очень маленький (правда еле спаял на картонке с СМД элементами, wacko.gif) и быстрый, да еще и диодики перемигивают! Как ни крути, классная разработка. cool.gif
TomaT
Цитата(prottoss @ Aug 31 2006, 19:15) *
... И, по моему, параллельное программирование e AVRDOPER только МК в DIP8 + DIP14? Что помешало немцам сделать вплоть до DIP40?
...


В "Допере" нет параллельного программирования только HVSP - высоковольтное последовательное.

Цитата(JK9 @ Sep 1 2006, 00:00) *
Studio его определила, хотя с фирмваре там глюк какой-то, хочет даунгрейд сделать, видите ли, моя версия фирмвар 2.04 не поддерживается AvrSt.4. Даунгрейд сделать не удалось - пишет "программер нот фаунд". Может с пином резета глюки. Как сделать, чтоб можно было даунгрейдить и апгрейдить МК программатора?


"Допер" не поддерживает обновление собственной прошивки. Студию просто посылаю с эти предложеним и так работает. В принципе можно сделать чтоб он откликался версиеей 2.07, чтоб не раздражало. Кто разбирался, протокол 2.04 и 2.07 сильно отличается?

Цитата(JK9 @ Sep 1 2006, 00:00) *
Кстати, я не могу понять, как Доппер работает с неподключенным к питанию резетом (странно задумали как-то)? И в фузах резет не отключен huh.gif

Не вздумай в фузах ресет отключать! 1111493779.gif Потом через ИСП не зашьеш, только параллельным!
На ресете внутренний пулап есть + схемы POR, BOD. Я в "безответственных" smile.gif устройствах тоже ресет "в воздухе" оставляю, вернее на разъеме ИСП.


Цитата(JK9 @ Sep 1 2006, 00:00) *
А как тебе удалось все исправить в этом новом, установочном файле? wink.gif


Я этот .inf вот отсюда взял: http://www.atmel.com/dyn/resources/prod_do...nts/doc4322.pdf
и просто PID/VID поменял: %ATMEL_CDC%=Reader, USB\VID_16C0&PID_05E1

Да "Допер" -- это не STK-500, просто работает по его протоколу, и то не полному!
TomaT
Цитата(TomaT @ Sep 1 2006, 11:48) *
... Студию просто посылаю с эти предложеним и так работает. В принципе можно сделать чтоб он откликался версиеей 2.07, чтоб не раздражало. Кто разбирался, протокол 2.04 и 2.07 сильно отличается?

Поменял, "Студия" скушала и "не жужит". smile.gif
TomaT
USB - вариант "лайт", без стабилитронов, пока ничего не здохло smile.gif
Буфер поставил 244-й, повесил два двухцветных светика показывают собстна подключение/обмен по USB и наличие питания(>2.5V) таргета/обмен с оным. Соотв. поменял фирмварю.
Кому интересно, завтра выложу фотки, схему, фирмварю.
Скрость ~1кБ/сек.
Gennadiy_
Цитата(prottoss @ Aug 31 2006, 19:15) *
....... планирую собрать на подобном ....., jtag, и еще чего нить .............



Интересует сей инструмент, желательно, если возможно, совместимый не только с АВР инструментами, но и пригодный для ALTERA XILINIX
Кинте ссылочку на самодельный ДЖИТАГ, пожалуйста, если есть.
JK9
cheers.gif Здоров, Томат. Мне интересно!!! (Это насчет новой фирмвары, светиков (ну это вообще) :-), и буфера 244. Я ставил 125, а его глючит, может что-то с инверсией не то. А что ты там заделал клевого, колись. Я хочу его в корпус собрать, только не глюченный. a14.gif
TomaT
2 JK9 Извиняюсь, что несколько продинамил, тут запарка была.
Вот возникла еще трабла.
Не хочет зашивать 90s2313. Сигнатуру читает, стирает флеш нормольно, но не пишет. Чтение флеша, и что там с eeprom еще не разбирался. Чип сто пудово живой, с STK-200 никаких проблем. У Doper'a с М128, М32, М8, Т2313 никаких проблем. А вот с 90s2313 трабла.
osnwt
Цитата
Что помешало немцам сделать...

Извиняюсь, что влез, но Christian (разработчик драйвера и, скорее всего, AVR-Doper) - из Австрии.

Цитата
Кстати, счас планирую собрать на подобном USB STK500, jtag, и еще чего нить до кучи...Может пару RS232 воткнуть?

А сделать JTAG на том же чипе было бы неплохо, если бы не одно "но": firmware самодельного JTAG содрано с фирменного устройства. Я не в курсе, есть ли его реконструированный исходник. Ставить второй контроллер, как сделано в некоторых таких совмещенных разработках, как-то не интересно.
А насчет RS-232: действительно, всегда очень полезно иметь, как минимум, один свободный serial порт для отладки, причем работающий в обе стороны (вывел что-то - ждем нажатия кнопки и идем дальше). И второй такой же - для, собственно, отлаживаемого устройства (в меге128, к примеру, два порта - один можно пользовать для отладки, а второй - по какому-нибудь основному назначению, например, меню).

И наличие двух портов + программатора + если бы еще и JTAG - и все на одном USB, было бы реально очень интересно. Оно все, в принципе, реализуемо - вопрос только в реализации JTAG.
prottoss
Цитата(osnwt @ Oct 18 2006, 18:03) *
Извиняюсь, что влез, но Christian (разработчик драйвера и, скорее всего, AVR-Doper) - из Австрии.
Зачем извиняться? Здесь форум, а не частный клуб)))
Цитата(osnwt @ Oct 18 2006, 18:03) *
А сделать JTAG на том же чипе было бы неплохо, если бы не одно "но": firmware самодельного JTAG содрано с фирменного устройства. Я не в курсе, есть ли его реконструированный исходник. Ставить второй контроллер, как сделано в некоторых таких совмещенных разработках, как-то не интересно.
А насчет RS-232: действительно, всегда очень полезно иметь, как минимум, один свободный serial порт для отладки, причем работающий в обе стороны (вывел что-то - ждем нажатия кнопки и идем дальше). И второй такой же - для, собственно, отлаживаемого устройства (в меге128, к примеру, два порта - один можно пользовать для отладки, а второй - по какому-нибудь основному назначению, например, меню).
И наличие двух портов + программатора + если бы еще и JTAG - и все на одном USB, было бы реально очень интересно. Оно все, в принципе, реализуемо - вопрос только в реализации JTAG.
Исходника JTAGа у меня, к сожалению нет((( НО...Есть опубликованный протокол, и по нему реализовать JTAG для меня нет особых проблем...Конечно, все это требует определенного времени, т.к. это все домашнее любительство. С СОМ портом тоже в плане реализации функции проблем нет. С USB CDC классом я разобрался, можно сваять ПОЛНЫЙ Communication Port со реальной скоростью до 800 bps (я считаю так - обращение хоста к девайсу минимум 10 мс - 8 байт за обращение), хотя для приложения может прикидываться хоть Мегабитным.

Вообще вижу девайсину в таком виде - для приложения будет видно три СОМ порта - AVR910, Virtual Comm.Port, AVR JTAG ICE... Возможно будет еще один, скрытый. Для него можно написать демона, который будет сидеть, например, в трее. Через него можно будет управлять разными параметрами девайса...

Пока проблема для меня одна - не могу составить дескриптор так, чтоб появилось хотя бы два девайса((( Не могу въехать, как все соорудить...
osnwt
Цитата(prottoss @ Oct 18 2006, 13:24) *
Зачем извиняться? Здесь форум, а не частный клуб)))

Да так, что-то мне слонёнок из "38-ми попугаев" вспомнился smile.gif

Цитата
Исходника JTAGа у меня, к сожалению нет((( НО...Есть опубликованный протокол, и по нему реализовать JTAG для меня нет особых проблем...

Ценная информация. Я профессионально не занимаюсь железом, так - для души. Потому до сих пор так и не обзавелося JTAG - обхожусь без него, отладочной serial консоли вполне хватает. А делать отдельно то да сё не хочется. Потому было бы очень интересно посмотреть на описание протоколов как между хостом и JTAG адаптером, так и между JTAG адаптером и целевым устройством. Если есть оба этих документа - очень бы хотелось посмотреть. Возможно, я тоже бы поигрался в этом направлении.

Цитата
Пока проблема для меня одна - не могу составить дескриптор так, чтоб появилось хотя бы два девайса((( Не могу въехать, как все соорудить...

Если бы вопрос упирался в HID, например, несколько джойстиков на одном устройстве, то я бы подсказал. А с CDC пока не игрался. Может быть, только пока...
prottoss
Цитата(osnwt @ Oct 18 2006, 19:08) *
Потому было бы очень интересно посмотреть на описание протоколов как между хостом и JTAG адаптером, так и между JTAG адаптером и целевым устройством. Если есть оба этих документа - очень бы хотелось посмотреть. Возможно, я тоже бы поигрался в этом направлении.


AVR060: JTAG ICE Communication Protocol
Introduction
This application note describes the communication protocol used between AVR
Studio® and JTAG ICE.

Commands Sent from AVR Studio to JTAG ICE are Described in Detail
Replies Sent from JTAG ICE to AVR Studio are Described in Detail
Configurable Parameters are Described
Different Memory Types are Described
Special Characters and Packet Formats for Packet Synchronization and Error Control
Described
Break Point Handling in JTAG ICE is Described
The purpose of this document is to enable third party vendors to design their own
front-end to the JTAG ICE emulator.


А между таргетом и МК ИМХО стандартный протокол JTAG должон быть. На крайний случай прошивку дизассемблировать можно.


[left]
Цитата
Если бы вопрос упирался в HID, например, несколько джойстиков на одном устройстве, то я бы подсказал. А с CDC пока не игрался. Может быть, только пока...
Я думаю, параллель провести можно, выкладывайте здесь, или , если документ, то приаттачте, освоим совместно...
[left]
[left]Да и еще, справшивают некоторые, почему не STK500(AVRDoper) а AVR910? Потому что, если кто заметил, AVR910 в моем исполнении работает, во много крат быстрее, чем AVRDoper, с ПО, поддерживающим блочную запись/чтение, так как у STK500 в протоколе нет таковой, а у 910 есть...
osnwt
Цитата(prottoss @ Oct 18 2006, 14:30) *
The purpose of this document is to enable third party vendors to design their own front-end to the JTAG ICE emulator.

С фронт-ендом всё понятно...

Цитата
А между таргетом и МК ИМХО стандартный протокол JTAG должон быть. На крайний случай прошивку дизассемблировать можно.

Во-во, вот тут и начинаются грабли. Можно много чего сделать. Наверное... в 16 кило кода можно столько всего напиндюрить :-)

В таком виде понятно. Лишь бы не вышло как с debugwire, если они используют внутренние расширения JTAG протокола для своих целей (с DW, правда, совсем печально). Отдельная большая тема для изучения. Но если там все стандартно, то тогда шанс есть и неплохой.

Цитата
Я думаю, параллель провести можно, выкладывайте здесь, или , если документ, то приаттачте

Документов вразумительных я не нашел - пришлось экспериментировать, но проблема решилась. Но это не поможет. В хиде там нюанс только в HID Report Descriptor'е - там нужно создать пару Application Collections в одном дескрипторе с разными Report ID, и получаем пару устройств (я делал 4, больше было не нужно). Но аналога HID Report Descriptor в CDC, как мне кажется, нет (не смотрел, потому могу ошибаться).
prottoss
Цитата(osnwt @ Oct 18 2006, 19:53) *
Цитата(prottoss @ Oct 18 2006, 14:30) *

The purpose of this document is to enable third party vendors to design their own front-end to the JTAG ICE emulator.

С фронт-ендом всё понятно...

Цитата
А между таргетом и МК ИМХО стандартный протокол JTAG должон быть. На крайний случай прошивку дизассемблировать можно.

Во-во, вот тут и начинаются грабли. Можно много чего сделать. Наверное... в 16 кило кода можно столько всего напиндюрить :-)
В таком виде понятно. Лишь бы не вышло как с debugwire, если они используют внутренние расширения JTAG протокола для своих целей (с DW, правда, совсем печально). Отдельная большая тема для изучения. Но если там все стандартно, то тогда шанс есть и неплохой.
Когда предыдущий пост послал, вспомнил - в любом ДШ на МК с JTAG есть описание регистров и т.п. про JTAG, так что и здесь все прозрачно. Правда, все это надо проглотить еще... Но это лучше, чем дизассемблить 16к кода, написанного, скорее всего, на Си...

Цитата
Документов вразумительных я не нашел - пришлось экспериментировать...
Похоже и мне придется тоже на тернистый путь экспириментов и РЕСЕТОВ вставать)))
osnwt
Цитата(prottoss @ Oct 18 2006, 15:32) *
Когда предыдущий пост послал, вспомнил - в любом ДШ на МК с JTAG есть описание регистров и т.п. про JTAG, так что и здесь все прозрачно. Правда, все это надо проглотить еще... Но это лучше, чем дизассемблить 16к кода, написанного, скорее всего, на Си...

А придется :-)

Mega32 даташит, p.217:

The On-chip Debug support is considered being private JTAG instructions, and distributed within ATMEL and to selected third party vendors only.

Есть только описание программирования через JTAG, да ссылка, что boundary scan нужно смотреть в соответствующем IEEE документе. Так что или дизассмблировать, или ставить второй чип и пользовать его со своим программтором, он же USB интерфейс. Как это ни прискорбно.
klop
Цитата(osnwt @ Oct 18 2006, 16:38) *
Цитата(prottoss @ Oct 18 2006, 15:32) *

Когда предыдущий пост послал, вспомнил - в любом ДШ на МК с JTAG есть описание регистров и т.п. про JTAG, так что и здесь все прозрачно. Правда, все это надо проглотить еще... Но это лучше, чем дизассемблить 16к кода, написанного, скорее всего, на Си...

А придется :-)

Mega32 даташит, p.217:

The On-chip Debug support is considered being private JTAG instructions, and distributed within ATMEL and to selected third party vendors only.

Есть только описание программирования через JTAG, да ссылка, что boundary scan нужно смотреть в соответствующем IEEE документе. Так что или дизассмблировать, или ставить второй чип и пользовать его со своим программтором, он же USB интерфейс. Как это ни прискорбно.


Устройство AVR JTAG внутри - енто уже не тайна. Доставаемо.

P.S.
http://download.savannah.gnu.org/releases/...umentation.html
Там кое где есть неточности.
µµC
А вообще, есть ли возможность работать с подобными (софт-USB на меге) устройствами в вин98? Если да, то где брать драйвера и как устанавливать?
prottoss
Цитата(µµC @ Oct 18 2006, 21:36) *
А вообще, есть ли возможность работать с подобными (софт-USB на меге) устройствами в вин98? Если да, то где брать драйвера и как устанавливать?
Теоретически можно работать под любой ОС. Драйвера писать самому, либо использовать сторонние, например libusb, либо прикидываться стандартным классом (у мя получалось USB CDC, USB HID, USB Priner Class), для которых в ОС есть свой стд. драйвер
Waso
Эм... Ну и как обстоят дела с самодельным JTAG -ом спустя годик с небольшим? wink.gif

Я вот подумываю присобачить FT232RQ к JTAG mini ICE, но неуверен будет ли оно работать с альтерой... А было бы здорово! Может уже кто изобрел такой велосипед?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.