Страница 1 из 1

Avrdude + FTDI

Добавлено: Вт окт 06, 2020 06:37:31
vt1980
Программа Avrdude умеет работать с микросхемами FTDI (например FT2232H) в режиме MPSSE
Но для меня не очевидно как задать интерфейс который я хочу использовать (SPI или JTAG)

покопавшись в avrdude.conf толком ничего не нашёл.
например для дракона там есть такой выбор, а для программаторов на FTDI нет,
но часть программаторов type = "avrftdi" с описанием ног MISO MOSI, имеет закомментированные надписи TDO TDI,
то есть, тоже должен уметь по всякому.

я предполагаю что выбор должен задаваться каким то ключом, при обращении к программе, но в описании на avrdude тоже толком ничего не нашёл.

кто с этим уже сталкивался, подскажите как делать .
или jtag не реализован в avrdude на программном уровне ?

Re: Avrdude + FTDI

Добавлено: Вт окт 06, 2020 08:01:10
oleg110592
можно попробовать через AVR Happy Jtag2.
Суть простая — FTDI обеспечивает связь между отлаживаемым контроллером и программой, а программа косит под JTAG ICE II и подбрасывает студии виртуальный порт, который та наивно принимает за JTAG ICE II.
http://easyelectronics.ru/ft2232d-i-avr ... -jtag.html
http://www.lura.sk/
проще через Аврстудию 4.19 прошивать да и отлаживать можно

Re: Avrdude + FTDI

Добавлено: Вт окт 06, 2020 08:56:00
vt1980
[uquote="oleg110592",url="/forum/viewtopic.php?p=3902385#p3902385"]можно попробовать через AVR Happy Jtag2.
проще через Аврстудию 4.19 прошивать да и отлаживать можно[/uquote]

спасибо. читал про Happy Jtag, интересная программа,
но в данном случае мне авр-студия не нужна, прошивка готовых файлов батником.
а если использовать avrdude через AVR Happy Jtag2, то это уже какое-то извращение, через два виртуальных драйвера шить.

Re: Avrdude + FTDI

Добавлено: Вт окт 06, 2020 10:04:19
NStorm
[uquote="vt1980",url="/forum/viewtopic.php?p=3902367#p3902367"]Программа Avrdude умеет работать с микросхемами FTDI (например FT2232H) в режиме MPSSE
Но для меня не очевидно как задать интерфейс который я хочу использовать (SPI или JTAG)[/uquote]
Имхо в режиме MPSSE только SPI доступен, исходя из вот этого куска кода в avrftdi.c:

Код: Выделить всё

        if (!pin_check_mpsse && !pin_check_bitbanging) {
                log_err("No valid pin configuration found.\n");
                avrftdi_check_pins_bb(pgm, true);
                log_err("Pin configuration for FTDI MPSSE must be:\n");
                log_err("%s: 0, %s: 1, %s: 2 (is: %s, %s, %s)\n", avr_pin_name(PIN_AVR_SCK),
                         avr_pin_name(PIN_AVR_MOSI), avr_pin_name(PIN_AVR_MISO),
                                                 pins_to_str(&pgm->pin[PIN_AVR_SCK]),
                                                 pins_to_str(&pgm->pin[PIN_AVR_MOSI]),
                                                 pins_to_str(&pgm->pin[PIN_AVR_MISO]));
                log_err("If other pin configuration is used, fallback to slower bitbanging mode is used.\n");

                return -1;
        }
Ну и нигде в avrftdi.c нет упоминаний AVRPART_HAS_JTAG, т.е. драйвер FTDI не рассчитан на JTAG судя по всему. Вот AVR_HAS_TPI есть. Т.е. он умеет SPI и TPI как я понимаю и всё. Везде, где упоминается AVRPART_HAS_JTAG - 3 драйвера от разных версий JTAG ICE.

Добавлено after 4 minutes 24 seconds:
Так что наверное придется всё-таки извратиться через Happy Jtag если он нужен.

Re: Avrdude + FTDI

Добавлено: Ср окт 07, 2020 02:33:38
vt1980
[uquote="NStorm",url="/forum/viewtopic.php?p=3902413#p3902413"]Так что наверное придется всё-таки извратиться ...[/uquote]
Так хотелось упростить жизнь а не усложнить

Задача: чтоб любая обезьяна воткнула на любом компе дешёвый jtag программатор, запустила сконфигурированный батник и готово.

А с FTDI мало того что приходится с драйверами манипулировать для включения режима MPSSE
Так ещё что-то ставить дополнительное типа Happy Jtag и настраивать.

Похоже данное решение это тупиковый путь в никуда.

Но я уже нашёл несколько вариантов решения.

Re: Avrdude + FTDI

Добавлено: Ср окт 07, 2020 07:09:55
NStorm
дешёвый jtag программатор
https://www.aliexpress.com/item/4000233354471.html
А то FTDI всё-таки даже на это не тянет.