Programme mit dem SPI Tool übertragen

Erstellt am 26.03.2002 16:00:41Klicks [3461]

Wer den Aufbau des Programmieradapters scheut kann mit diesem kleinen Tool leicht eigene Programme in die Prozessoren der Atmelreihe übertragen. Das Tool wird für Linux wie auch für Windows zu Verfügung gestellt.

Dieser Beitrag wurde von Robert parusel für www.digital-hobby.de zu Verfügung gestellt.

Im Dowload Bereich ist eine Linux sowie Windoof/Dos Version verfügbar

Das Programm SPI-Tool wurde geschrieben um die häufig verwendeten Atmel Prozessoren (wie unten aufgeführten) auch ohne aufwendige "Programmer" direkt über den Druckerport eines PC programmieren zu können. Die einzige zusätzliche "Hardware" die hierzu notwendig ist ( ausser PC, EinplatinenRechner usw. ), ist ein Programmierkabel dessen Belegung weiter unten beschrieben ist. Das Programm ist ein Kommandozeilen-Tool, mit dessen Hilfe man direkt am Prompt der DosBox oder in einer Batchdatei das fertig compilierte Programm direkt in den Prozessor übertragen kann. Wird das Programm ohne Parameter aufgerufen, gibt es die folgende Hilfe aus.



SPI-Tool V1.0 (c) infratec plus GmbH 1999

usage : SPITool [-lX] [-dT] [-e] [-s] [-rNEG] [-rPOS] [-rdYYY] [-Weeprom] [-Wflash] [-Reeprom] [-Rflash] [-b] -ID filename

Druckerport Adresse:
 X : 1 = 0x378
     2 = 0x278
     3 = 0x3BC
     default = 1

Device Type:
 T : AT89S8252
     AT89LS8252
     AT89S53
     AT89LS53
     ATTINY10
     ATTINY11
     ATTINY12
     ATTINY15
     AT90S1200
     ATTINY22
     AT90S2313
     AT90S2323
     AT90S2333
     AT90S2343
     AT90S4414
     AT90S4433
     AT90S4434
     AT90S8515
     AT90S8534
     AT90S8535
     ATMEGA161
     ATMEGA603
     ATMEGA103
     default = AT89S8252

SPI Paramter:
 -rNEG | -rPOS             : reset aktiv high ( POS ) or aktiv low ( NEG )
 -rdYYY                    : reset delay = YYY ms

Commands:
 -Rflash    | -Reeprom     : read flash | eeprom, write to stdout
 -Rflash -b | -Reeprom -b  : read flash | eeprom, write to file flash.bin | eeprom.bin
 -Wflash    | -Weeprom     : write file filename.xxx into flash | eeprom
 -e   : erase Device
 -s                        : set lock bits
 -ID                       : read device id


Das Kommando -s ( set lock bits ) setzt alle oder keines der Lockbits ! Um die Bedienung zu vereinfachen, kann das Programm die Parameter auch aus einer Datei lesen.

Hier als Beispiel der Inhalt der Datei spitool.ini
    -dAT90S1200 -rNEG -Weeprom

Die Parameter bedeuten:
    -dAT90S1200 es soll ein AT90S1200 programmiert werden. ( war ja klar )
    -rNEG  der Reset des Chips ist aktive Low
    -weeprom es soll ins EEPROM geschrieben werden

 

Den Namen der zu programmierenden Datei erhält das Programm dann weiterhin als Command Line Parameter, die restlichen Eingaben haben wir un somit gespart.

Ach ja, als Dateityp sind Intel-Hex Files oder Binaerdateien erlaubt, wobei die Dateien als Endung .hex oder entsprechend .bin haben muessen.


Hier ist die Tabelle der benutzten Leitungen des Druckerports.
Die Leitungen sind so gewählt das das Programm auch mit alten unidirektionalen Druckerschnittstellen geht.

Pin Bedeutung          Belegt mit
------------------------------------------------
 1  STROBE             RESET
 2  D0                 SCK
 6  D4                 MOSI ( Daten an Device )
 9  D7                 SS ( Slave Select für Proz>2313) nicht zwingend notwendig
10  ACKNOWLEDGE        MISO ( Daten von Device )

Nicht vergessen die Masse:
18 - 25: Masse-PIN's GND ( einer reicht )