|
|
  |
avreal, новая версия (если кому-то это ещё нужно) |
|
|
|
Dec 7 2010, 07:51
|
Гуру
     
Группа: Админы
Сообщений: 2 736
Регистрация: 17-06-04
Из: Киев
Пользователь №: 48

|
Схема - OrCad Capture Плата - PADS Выходной разъем - 14-pin ARM JTAG (для OpenOCD). Для AVREAL используется внешний переходник (у меня например это IDC14 - WH6). Для AVREAL предусмотрены два светодиода (Ок и Error) и кнопка запуска программирования. Питание выходного буфера осуществляется или от +5V с USB или с +3.3V с LDO на плате или от внешнего устройства. В схеме много лишнего для обычного программатора. Поскольку сделана на 2232, то второй порт используется для создания виртуального последовательного порта (у меня это либо 232 либо 422 либо 485, выбирается джампером на плате). Кому не нужно такое разнообразие - может просто не паять. К тому же два последних интерфейса имеют выход в специфический для моего оборудования разъем. Разведено для корпуса Gainta G403.
--------------------
Вам помочь или не мешать?
|
|
|
|
|
Dec 7 2010, 11:35
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 6-02-09
Из: Новочеркасск
Пользователь №: 44 469

|
Цитата(ReAl @ Dec 6 2010, 18:09)  Собирать лучше что-то совместимое по раскладке выводов с поддерживаемым в OpenOCD, сразу на два фронта работать будет. Я в своё время это дело промухал, но и пересобрать OpenOCD с поддержкой моей (да и любой) коробочки оказалось не так сложно как кажется. Один фиг его собирать если не хочется ставить левый драйвер (а его ставить не хочется ну совсем) Проект под PCAD http://xdevs.com/kb/dx/ft2232/FT2232.AVReaL.rarТупо копировать наверно не следует, но вполне себе вариант для начала. Делал бы я его сейчас - ещё бы и драйвер 485-го на второй канал привинтил бы - часто нужен.
Сообщение отредактировал Dx! - Dec 7 2010, 11:37
|
|
|
|
|
Dec 7 2010, 20:03
|
Частый гость
 
Группа: Участник
Сообщений: 108
Регистрация: 6-02-09
Из: Новочеркасск
Пользователь №: 44 469

|
Да, согласен. Возможно даже эти моменты хорошо бы настраиваемыми делать (джамперами или ещё как) - много всякого софта поддерживает ft2232 но почти весь он не позволяет свободно настраивать ножку включения шинника. Тот же OpenOCD - ну почему бы не сделать настройку как в сабже? Зачем эти непонятные названия коробочек разных? Тогда бы нужно было менять только конфиг, он так и так нужен, а не перекомпилировать 8) (А кроме программаторов ещё есть куча софта под Boundary scan и там те же виллы - ft2232 есть, настройки нет.) И да - про мой проект - там цепочка слишком длинная получилась. На 3MHz ещё работает, а вот на 6MHz уже нет. Идет сдвиг на один бит, и, соответственно, житагу рвёт крышу. Так что задержки тоже нужно иметь в виду. Цитата(ReAl @ Dec 7 2010, 17:52)  а vid-pid родные FTDI-ные, Както он игнорит эти параметры. Можно совсем убрать, можно левые написать - один фиг работает. Код interface ft2232 ft2232_device_desc "AVR SPI Programmer A" ft2232_layout avr_spi jtag_khz 3000
Сообщение отредактировал Dx! - Dec 7 2010, 20:25
|
|
|
|
|
Dec 7 2010, 21:38
|

Нечётный пользователь.
     
Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417

|
по vid-pid там под линуксом для libftd2xx.so для нестандартных vid-pid нужно Цитата Remarks By default, the driver will support a limited set of VID and PID matched devices (VID 0x0403 with PIDs 0x6001, 0x6010, 0x6006 only). In order to use the driver with other VID and PID combinations the FT_SetVIDPID function must be used prior to calling FT_ListDevices, FT_Open, FT_OpenEx or FT_CreateDeviceInfoList. Для WIN в библиотеке этой функции нет вообще. Т.е., полчается, если vid-pid стандартные, то ничего и не нужно делать, и так возьмёт. Надо будт попробовать прошить vid-pid другие и глянуть, что выходит без их указания. UPD: А не надо и пробовать. Взял Altera USB-Blaster (avreal с ним не работает, но сейчас ведь и не работать, а так) Без указания vid-pid (и, соответственно, без вызова той функции) Цитата $ avreal -aft2232 -pd="USB-Blaster" +mega8 avreal/LINUX - AVR controllers programmer by Redchuk Alexandr v1.28r5 (Oct 11 2010 22:17:20) http://real.kiev.ua/avrealbug-reports, suggestions and so on mail to avreal@real.kiev.ua Command: -aft2232 -pd=USB-Blaster +mega8 Can't open FTDI device with description "USB-Blaster" (FT_DEVICE_NOT_FOUND) С указанием Цитата $ avreal -aft2232 -pv=09FB,p=6001,d="USB-Blaster" +mega8 avreal/LINUX - AVR controllers programmer by Redchuk Alexandr v1.28r5 (Oct 11 2010 22:17:20) http://real.kiev.ua/avrealbug-reports, suggestions and so on mail to avreal@real.kiev.ua Command: -aft2232 -pv=09FB,p=6001,d=USB-Blaster +mega8 Can't use opened FTDI device (some of parameters not match) Requested FT_DEVICE_2232C (description "USB-Blaster", serial number "any") Found FT_DEVICE_BM (description "USB-Blaster", serial number "8afaa230") Так что это нужно, но только под линуксом (не знаю, нужно ли при работе через libftdi, а не libftd2xx) и только при не-умолчательных vid-pid. Если стоят стандартные, то ничего не нужно.
--------------------
Ну, я пошёл… Если что – звоните…
|
|
|
|
|
Dec 20 2010, 13:42
|

Нечётный пользователь.
     
Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417

|
Так это уже давно. И скорее на МегаДжоне :-), плата взята отсюда. И там кроме avreal ещё какой-то софт упомяут. И уж точно не «уже», это далеко не первая плата, которая продаётся с рассчётом и на avreal. Ну хорошо, а просто шьющий avreal-ом изделия на продажу зарабатывает на мне или нет? С тем же успехом я зарабатываю на авторах/поддерживающих gcc, включая порт avr-gcc. avreal столь же бесплатен, так что «всё честно» Тут двойственная ситуация, к которой я отношусь «философски». С одной стороны — как бы кто-то зарабатывает «на мне». С другой стороны — этих денег я всё равно не заработал бы и вопрос скорее почему я сам не пытаюсь это делать. Лень, наверно. С одной стороны — а кроме «космодрома» сколько народу по всему xUSSR продавало байт-бластеры с припиской «и для AVR с avreal-ом»? Так почему «космодром» мне что-то должен, а те — нет? С другой стороны — приятно было бы получить какую-то копеечку с таких продаж или хоть подарочек к Новому Году :-) Кстати, восемь лет назад именно к новому году я получил в подарок большой пакет всякой пиротехники, как я понимаю (сверяя адреса и историю) от этих ребят.
--------------------
Ну, я пошёл… Если что – звоните…
|
|
|
|
|
Feb 12 2011, 23:15
|
Гуру
     
Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954

|
Цитата(ReAl @ Dec 8 2010, 03:38)  Взял Altera USB-Blaster (avreal с ним не работает, ... кстати, а было бы неплохо, если бы avreal и с usb-blasterом тоже работал. описание того, что там epm7064 в бластере делает, вроде есть, но насколько оно соответствует действительности не проверял: Цитата The CPLD knows two major modes: Bit banging mode and Byte shift mode. It starts in Bit banging mode. Each byte B of them is processed as follows:
Bit banging mode Remember bit 6 (0x40) in B as the "Read bit". If bit 7 (0x80) is set, switch to Byte shift mode for the coming X bytes ( X := B & 0x3F ), and don't do anything else now. Otherwise, set the JTAG signals as follows: TCK/DCLK high if bit 0 was set (0x01), otherwise low TMS/nCONFIG high if bit 1 was set (0x02), otherwise low nCE high if bit 2 was set (0x04), otherwise low nCS high if bit 3 was set (0x08), otherwise low TDI/ASDI/DATAO high if bit 4 was set (0x10), otherwise low Output Enable/LED active if bit 5 was set (0x20), otherwise low If "Read bit" (0x40) was set, record the state of TDO(CONF_DONE) and DATAOUT/(nSTATUS) pins and put is as a byte( (DATAOUT<<1)|TDO) in the output FIFO _to_ the host.
Byte shift mode Load shift register with byte from host Do 8 times (i.e. for each bit of the byte; implemented in shift.a51) if nCS=1, set carry bit from TDO, else set carry bit from DATAOUT (Active Serial mode) Rotate shift register through carry bit TDI := Carry bit Raise TCK, then lower TCK. If "Read bit" was set when switching into byte shift mode, record the shift register content and put it into the FIFO to the host.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|