COMA 1 6 декабря, 2010 Опубликовано 6 декабря, 2010 · Жалоба Если интересно кому - выложу весь проект. Выкладывай! :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nixon 4 7 декабря, 2010 Опубликовано 7 декабря, 2010 · Жалоба Схема - OrCad Capture Плата - PADS Выходной разъем - 14-pin ARM JTAG (для OpenOCD). Для AVREAL используется внешний переходник (у меня например это IDC14 - WH6). Для AVREAL предусмотрены два светодиода (Ок и Error) и кнопка запуска программирования. Питание выходного буфера осуществляется или от +5V с USB или с +3.3V с LDO на плате или от внешнего устройства. В схеме много лишнего для обычного программатора. Поскольку сделана на 2232, то второй порт используется для создания виртуального последовательного порта (у меня это либо 232 либо 422 либо 485, выбирается джампером на плате). Кому не нужно такое разнообразие - может просто не паять. К тому же два последних интерфейса имеют выход в специфический для моего оборудования разъем. Разведено для корпуса Gainta G403. USBAVREAL.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dx! 0 7 декабря, 2010 Опубликовано 7 декабря, 2010 (изменено) · Жалоба Собирать лучше что-то совместимое по раскладке выводов с поддерживаемым в OpenOCD, сразу на два фронта работать будет. Я в своё время это дело промухал, но и пересобрать OpenOCD с поддержкой моей (да и любой) коробочки оказалось не так сложно как кажется. Один фиг его собирать если не хочется ставить левый драйвер (а его ставить не хочется ну совсем) Проект под PCAD http://xdevs.com/kb/dx/ft2232/FT2232.AVReaL.rar Тупо копировать наверно не следует, но вполне себе вариант для начала. Делал бы я его сейчас - ещё бы и драйвер 485-го на второй канал привинтил бы - часто нужен. Изменено 7 декабря, 2010 пользователем Dx! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 7 декабря, 2010 Опубликовано 7 декабря, 2010 · Жалоба Да я смотрел исходники, проблем никаких. Но и смысла плодить разное в коде тоже никакого. У меня сейчас небольшая платка с шинником с разводкой разрешений как у amontec jtagkey Написал в cfg ft2232_layout jtagkey, а vid-pid родные FTDI-ные, я их не переписывал в EEPROM-ке. И всё работает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dx! 0 7 декабря, 2010 Опубликовано 7 декабря, 2010 (изменено) · Жалоба Да, согласен. Возможно даже эти моменты хорошо бы настраиваемыми делать (джамперами или ещё как) - много всякого софта поддерживает ft2232 но почти весь он не позволяет свободно настраивать ножку включения шинника. Тот же OpenOCD - ну почему бы не сделать настройку как в сабже? Зачем эти непонятные названия коробочек разных? Тогда бы нужно было менять только конфиг, он так и так нужен, а не перекомпилировать 8) (А кроме программаторов ещё есть куча софта под Boundary scan и там те же виллы - ft2232 есть, настройки нет.) И да - про мой проект - там цепочка слишком длинная получилась. На 3MHz ещё работает, а вот на 6MHz уже нет. Идет сдвиг на один бит, и, соответственно, житагу рвёт крышу. Так что задержки тоже нужно иметь в виду. а vid-pid родные FTDI-ные, Както он игнорит эти параметры. Можно совсем убрать, можно левые написать - один фиг работает. interface ft2232 ft2232_device_desc "AVR SPI Programmer A" ft2232_layout avr_spi jtag_khz 3000 Изменено 7 декабря, 2010 пользователем Dx! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 7 декабря, 2010 Опубликовано 7 декабря, 2010 · Жалоба по 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/avreal bug-reports, suggestions and so on mail to [email protected] 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/avreal bug-reports, suggestions and so on mail to [email protected] 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. Если стоят стандартные, то ничего не нужно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 10 декабря, 2010 Опубликовано 10 декабря, 2010 · Жалоба Фирма FTDI в начале декабря «подарочек» сделала в виде выпуска новой библиотеки FTD2XX под линукс (libftd2xx). Раньше были версии 0.4.x, а это уже типа совсем релиз, 1.0.0. «Но мы-то с вами понимаем», на чём два нуля пишут. Подробнее о засаде у меня на страничке. Старую библиотеку они убрали, но у меня есть две предыдущих, 0.4.15 и 0.4.16:-) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
delamoure 0 20 декабря, 2010 Опубликовано 20 декабря, 2010 · Жалоба Я смотрю на вас, Александр, уже кто-то зарабатывает. http://www.kosmodrom.com.ua/el.php?name=AVREAL-USB Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 20 декабря, 2010 Опубликовано 20 декабря, 2010 · Жалоба Так это уже давно. И скорее на МегаДжоне :-), плата взята отсюда. И там кроме avreal ещё какой-то софт упомяут. И уж точно не «уже», это далеко не первая плата, которая продаётся с рассчётом и на avreal. Ну хорошо, а просто шьющий avreal-ом изделия на продажу зарабатывает на мне или нет? С тем же успехом я зарабатываю на авторах/поддерживающих gcc, включая порт avr-gcc. avreal столь же бесплатен, так что «всё честно» Тут двойственная ситуация, к которой я отношусь «философски». С одной стороны — как бы кто-то зарабатывает «на мне». С другой стороны — этих денег я всё равно не заработал бы и вопрос скорее почему я сам не пытаюсь это делать. Лень, наверно. С одной стороны — а кроме «космодрома» сколько народу по всему xUSSR продавало байт-бластеры с припиской «и для AVR с avreal-ом»? Так почему «космодром» мне что-то должен, а те — нет? С другой стороны — приятно было бы получить какую-то копеечку с таких продаж или хоть подарочек к Новому Году :-) Кстати, восемь лет назад именно к новому году я получил в подарок большой пакет всякой пиротехники, как я понимаю (сверяя адреса и историю) от этих ребят. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 16 января, 2011 Опубликовано 16 января, 2011 · Жалоба Свежая версия. В основном мелочи, по просьбе добавлена форма ключа -k (различие в регистре буквы), при которой меняется порядок зачитывания файлов и ожидания кнопки. При -K файлы зачитываются после нажатия, а не до, как было раньше. Можно зациклить avreal в командном файле и после перекомпиляции жать кнопку на программаторе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Метценгерштейн 0 22 января, 2011 Опубликовано 22 января, 2011 · Жалоба Пока для своего программатора я жду дефицитных микросхем, МегаДжон одолжил мне на время свой программатор (очередная разработка). Вот что странно с ним происходит- проект шьется, все проходит как надо. Но работать не хочет в плате... Стоит перезагрузить комп, сразу шьется, но теперь уже работает. Вчера вообще дело дошло до того, что загружаю проект, а он не хочет внутри работать как положено, хотя, должен был бы. Кто- нибудь сталкивался с подобным? Из-за чего может возникать подобное? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 22 января, 2011 Опубликовано 22 января, 2011 · Жалоба "Ну не знаю" Если верификация проходит, то не работать не должно. Даже если на выводах адаптера мусорное состояние поначалу было (как у LPT-шных может быть), всё равно после первого программирования всё устанавливается в нормальное состояние. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Метценгерштейн 0 22 января, 2011 Опубликовано 22 января, 2011 · Жалоба Уже грешу на мой DC-DC конвертор, что этот МК питает. Т.к. похоже странности там. Хотя, осциллом не вижу ничего плохого. Пытаюсь сейчас другой примменить, может что посоветуете из практики? Сейчас стоит ST1S10 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dx! 0 23 января, 2011 Опубликовано 23 января, 2011 · Жалоба У меня была поджаренная высоким напряжением (27 пришло на INT1) m162 - читалась, писалась, верифицировалась. Но где-то в самом начале программы мертво висла. Замена вопрос решила. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_pv 74 12 февраля, 2011 Опубликовано 12 февраля, 2011 · Жалоба Взял 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. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться