Beim USBisp handelt es sich um einen weiteren AVR Programmierdongle. Wie seine diversen Vertreter die im Internet zur Verfügung stehen hat meine Version, so denke ich zumindest, ein paar Vorteile:
Der USBisp ist also besonders für moderne Notebooks interessant, die keine serielle/parallele Schnittstelle mehr mitbringen.
Der USBisp ist damit zum AVR Studio aber auch zu vielen anderen Programmen, die dieses Protokoll unterstützen, kompatibel. Zu diesen Programmen gehören unter anderem avrdude und uisp.
Der USBisp ist durch die schnelle USB-Schnittstelle aber auch durch die hohen Frequenzen des SPI-Interface zum AVR sehr schnell. Die Taktfrequenz des SPI-Interface läßt sich in mehreren Stufen zwischen 2MHz und 60kHz einstellen. Weitere, langsamere Taktfrequenzen sind geplant damit auch langsam getaktete AVR’s programmiert werden können
Der USBisp ist durch seinen integrierten Bootloader updatefähig. D.h. die Firmware des ATmega8 kann beliebig geändert werden. Ein Softwareupdate erfolgt ebenfalls sehr einfach über den USB mittels avrdude. Es stehen 7k für das Anwenderprogramm zur Verfügung.
Der USBisp ist dank der offengelegten Schaltung und des Bootloaders nicht nur ein AVR Programmiegerät, sondern ermöglicht auch eigene Anwendungen. Mit einer einfachen Porterweiterungen (mittels Schieberegister) ließe sich z.B. ein Lauflicht oder ein LCD über den USB ansteuern.
Mailingliste:
Ich habe eine Mailingliste zum USBisp eingerichtet. Wer daran teilnehmen will besucht einfach folgende URL
Zur Hardware:
Der USBisp besitzt zwei entscheidende Chips die für seine Funktion entscheidend sind. Einmal der FT245BM USB zu Parallelumsetzer. Dieser Chip übernimmt die Ankopplung an den USB-Bus. Der Treiber stellt auf der PC-Seite eine virtuelle serielle Schnittstelle (COMx bzw. /dev/ttyUSBx) zur Verfügung so das die Anwendung die auf den USBisp zugreifen will keine besondere Anpassung benötigt. Einfach die passende Schnittstelle angeben und schon kann mit dem FT245BM kommuniziert werden. Der zweite wichtige Chip ist ein ATmega8. Dieser übernimmt die Bearbeitung des STK500-Protokolls und die Umsetzung der ankommenden Befehle auf die SPI-Schnittstelle. Zusätzlich zu diesen beiden Chips findet sich noch ein EEPROM zur Konfiguration des FT245BM und ein 4 MBit Dataflash für zukünftige Erweiterungen auf dem Board. Das Layout (dessen CAD-Daten ich nicht veröffentliche) ist so angelegt daß es in das Gehäuse des originalen AVRISP von Atmel passt. Damit ist ein einfaches Umrüsten eines evtl. vorhandenen AVRISP möglich.
Da sich die Beschaffung von AVRisp Gehäusen, wie erwartet, als schwierig bis unmöglich herausgestellt hat wurde die Version 2 des Layouts auf das Bopla Gehäuse E406 optimiert.
Zur Software:
Sowohl Applikation als auch Bootloader sind in C geschrieben. Beim Bootloader handelt es sich um eine auf 1024 Byte abgespeckte Variante der Applikationssoftware.
Zum Download: