03.08.2011

USBasp и TPI

Thomas Fischl, являющийся автором отличного программатора USBasp (поддерживается avrdude), разразился новой версией прошивки. А я уже и не надеялся на какие-то изменения - просто случайно зашел на страничку проекта USBasp.

По сравнению с предыдущей прошивкой, выпущенной более двух лет назад, в этой изменилось следующее:
  • добавилась поддержка протокола программирования TPI для ATtiny4, ATtiny5, ATtiny9, ATtiny10;
  • теперь поддерживаются MCU, у которых flash превышает 128К;
  • поправлен небольшой косяк с синхронностью последовательности разрешения программирования и сигналом RESET;
  • использовано новое ядро V-USB.
Автор первых двух изменений - Slawomir Fraś, фанатик USBasp. Однажды зимним вечером 2010 года он обнаружил, что его любимый usbasp не желает прошивать свежезакупленные ATtiny10, и не смог отказать себе в удовольствии сделать патч и для firmware, и для avrdude.

В отличие от стандартного MISO/MOSI/SCK + RESET, режим TPI предназначен для шестиногих MCU и использует сигналы TPIDATA/TPICLK + RESET (то есть, на одну линию меньше). Но если программатор не умеет поддерживать такой режим - увы, запрограммировать шестиногие ATtiny как-то по-другому невозможно :(

Если вы решились использовать последнюю версию, надо знать о паре интересных моментов.

Во-первых, поскольку USBasp поддерживается только avrdude, а новая версия 5.11 пока еще не вышла, для программирования новых ATtiny придется тянуть рабочий срез svn и собирать из исходников (звучит грозно, но на самом деле - несложно). Если поддержка TPI пока не требуется - новая прошивка будет замечательно работать и с версией 5.10.

Во-вторых, результирующая прошивка перестала влезать в 4К и использовать можно только ATmega88 или ATmega8. 

Новую версию прошивки USBasp я буду шить в этот набор - работает она вполне нормально.


С TPI, правда, возможности проверить пока не представилось, но если попадется соответствующий чип - обязательно проверю. Avrdude из svn собирается без шаманства - и вот, например, пакеты для Матерой Машки x64 ( Ubuntu Maverick Meerkat 10.10 ):
Если надо еще какие-то пакеты под иной debian-совместимый дистрибутив - пишите, постараюсь собрать.

2 комментария:

  1. Usbasp уже давно не актуален с тех пор как вышел клон ISP II который поддерживает TPI из коробки и видится студией.

    ОтветитьУдалить
  2. Для DiHalt конечно. Дядько, usbasp стоит меньше 5$ isp II не меньше 38-40, а так да все в порядке...

    ОтветитьУдалить