Added lot's of code-files used during work

This commit is contained in:
sicarius 2007-02-11 18:32:03 +00:00
parent 644121b478
commit 56d9bdd39e
155 changed files with 23423 additions and 0 deletions

View file

@ -0,0 +1,39 @@
rem Aufruf von Avrdude zur Programmierung c't-Bot
rem (Unten sollte zunaechst der Pfad angepasst werden)
rem Batchdatei fuer Programmieradapter STK200 und viele baugleiche Programmer am Parallelport
rem
rem von andreas Staudenmayer (andreas.staudenmayer@t-online.de)
rem angepasst fuer STK200 (rl@loehmer.de)
rem Parameter
rem
rem -p m32 fuer ATMega32
rem -c stk200 Adapter kompatibel zu stk200
rem -P lpt1 Adapter installiert auf lpt1
rem -u disable safemode, um fusebits setzen zu koennen
rem -U flash:w:<Datei>:i Programmdatei, die geschrieben werden soll, wird als erster Batch Parameter uebergeben
rem
rem -U lfuse:w:lfuse.hex:i lowfusebits setzen, Inhalt Bin-Datei lfuse.hex: FF
rem -U hfuse:w:hfuse.hex:i highfusebits setzen, Inhalt Bin-Datei hfuse.hex: D9
rem -U lock:w:lock.hex:i lockbits setzen, Inhalt Bin-Datei lock.hex: 3F
rem -F Signatur des Chips lesen
rem -v geschwaetzige Ausgabe
rem -E reset Reset wenn fertig
rem -e Chip loeschen
rem Moeglichkeit 1:
rem Verknuepfung auf avrdude-Batchdatei auf dem Desktop ablegen,
rem "Fallenlassen" einer Hex-Datei auf diese Verknuepfung startet
rem den Programmierprozess
rem Moeglichkeit 2:
rem Nutzung von ECLIPSE 'External Tools'
rem kurze Anleitung :
rem http://www.ctbot.de/forum/fuse-bits-t108-15.html#2372
rem !!!Anfuehrungsstriche sind wichtig bei Pfaden mit Leerstellen!!!
rem Die naechste Zeile ist schon alles! Pfad fuer AVRDUDE anpassen!
"D:\Programme\WinAVR\bin\avrdude" -p m32 -c stk200 -P lpt1 -U flash:w:%1:i -e -F -v -E reset

View file

@ -0,0 +1,24 @@
rem Aufruf von Avrdude zur Programmierung c't-Bot
rem Setzen der Fuses/Locks ist EINMALIG vor der ersten Programmierung NOTWENDIG
rem weiteres hier: http://www.heise.de/ct/ftp/projekte/ct-bot/faq/f.shtml
rem (Unten sollte zunaechst der Pfad angepasst werden)
rem Batchdatei fuer Programmieradapter STK200 und viele baugleiche Programmer am Parallelport
rem
rem von andreas Staudenmayer (andreas.staudenmayer@t-online.de)
rem angepasst fuer STK200 (rl@loehmer.de)
rem Parameter
rem
rem -p m32 fuer ATMega32
rem -c stk200 Adapter kompatibel zu stk200
rem -P lpt1 Adapter installiert auf lpt1
rem -u disable safemode, um fusebits setzen zu koennen
rem -U flash:w:<Datei>:i Programmdatei, die geschrieben werden soll, wird als erster Batch Parameter übergeben
rem
rem -U lfuse:w:lfuse.hex:i lowfusebits setzen, Inhalt Bin-Datei lfuse.hex: FF
rem -U hfuse:w:hfuse.hex:i highfusebits setzen, Inhalt Bin-Datei hfuse.hex: D9
rem -U lock:w:lock.hex:i lockbits setzen, Inhalt Bin-Datei lock.hex: 3F
rem auch hier den Pfad setzen
"D:\Programme\WinAVR\bin\avrdude" -p m32 -c stk200 -P lpt1 -u -U lfuse:w:lfuse.hex:i -U hfuse:w:hfuse.hex:i -U lock:w:lock.hex:i

View file

@ -0,0 +1,21 @@
rem Aufruf von Avrdude zur Programmierung c't-Bot
rem Batchdatei für Programmieradapter mysmartUSB
rem
rem von andreas Staudenmayer (andreas.staudenmayer@t-online.de)
rem Parameter
rem
rem -p m32 für ATMega32
rem -c avr910 Adapter kompatibel zu avr910
rem -P com5 Adapter installiert auf com5
rem -u disable safemode, um fusebits setzen zu können
rem -U flash:w:<Datei>:i Programmdatei, die geschrieben werden soll, wird als erster Batch Parameter übergeben
rem
rem -U lfuse:w:lfuse.hex:i lowfusebits setzen, Inhalt Bin-Datei lfuse.hex: FF
rem -U hfuse:w:hfuse.hex:i highfusebits setzen, Inhalt Bin-Datei hfuse.hex: D9
rem -U lock:w:lock.hex:i lockbits setzen, Inhalt Bin-Datei lock.hex: 3F
rem Verknüpfung auf avrdud-Batchdatei auf dem Desktop ablegen,
rem "Fallenlassen" einer Hex-Datei auf diese Verknüfpung startet
rem den Programmierprozess
avrdude -p m32 -c avr910 -P com5 -U flash:w:%1:i

View file

@ -0,0 +1,55 @@
#!/bin/sh
# echo program C't-Bot with avrdude and mySmartUSB
#
# echo Usage: flash.sh <filename>
#
if [ $# != 1 ]; then
echo "Usage: flash.sh <filename>"
exit 1;
fi
# now check if the fuses are set correctly
# use temporary file names in /tmp for it
lowtemp="$(mktemp /tmp/lfuse.XXXXX)"
hightemp="$(mktemp /tmp/hfuse.XXXXX)"
locktemp="$(mktemp /tmp/lock.XXXXX)"
# read fuses
avrdude -p m32 -c avr910 -P /dev/ttyUSB0 -U lfuse:r:$lowtemp:i \
-U hfuse:r:$hightemp:i -U lock:r:$locktemp:i >/dev/null 2>&1
if [ $? != "0" ]; then
echo "Error while reading fuses!"
exit 1
fi
fuses_ok=1
# now compare the values with the correspondent .hex file
cmp -n 13 lfuse.hex $lowtemp >/dev/null 2>&1
if [ $? != "0" ]; then
echo "low fuse doesn't fit!"
fuses_ok=0;
fi
cmp -n 13 hfuse.hex $hightemp >/dev/null 2>&1
if [ $? != "0" ]; then
echo "high fuse doesn't fit!"
fuses_ok=0;
fi
cmp -n 13 lock.hex $locktemp >/dev/null 2>&1
if [ $? != "0" ]; then
echo "lock byte doesn't fit!"
fuses_ok=0;
fi
# clean up temp files
rm $lowtemp
rm $hightemp
rm $locktemp
# if some or all fuses were wrong, give hint and bail out
if [ $fuses_ok != "1" ]; then
echo "Please correct your fuses with setfuses.sh, else you'll probably get locked out from your MCU!"
exit 2;
fi
# all fuses ok, now program flash
avrdude -p m32 -c avr910 -P /dev/ttyUSB0 -e -U flash:w:$1:i

View file

@ -0,0 +1,17 @@
Die drei Hex-Dateien hfuse.hex, lfuse.hex und lock.hex
sind nur für ATmega32-Prozessoren geeignet.
Die Dateien sind im Intel-Hex-Format.
Mit der Programmiersoftware avrdude, die zum Beispiel bei WINAVR dabei ist kann man:
1. Seine eigenen Fuses wie folgt auslesen:
avrdude -p m32 -c stk200 -P lpt1 -U lfuse:r:lfuse.hex:i -U hfuse:r:hfuse.hex:i -U lock:r:lock.hex:i
2. Die hier stehenden Dateien schreiben:
avrdude -p m32 -c stk200 -P lpt1 -u -U lfuse:w:lfuse.hex:i -U hfuse:w:hfuse.hex:i -U lock:w:lock.hex:i
Dabei muss man die -c und -P Paramter an den jeweiligen Programmieradpter anpassen.
Für den ISP-Adapter aus dem BlueMP3-Projekt gilt, sofern er an der ersten Druckerschnittstelle (LPT1 hängt:
-c stk200 -P lpt1

View file

@ -0,0 +1,2 @@
:01000000D926
:00000001FF

View file

@ -0,0 +1,2 @@
:01000000FF00
:00000001FF

View file

@ -0,0 +1,14 @@
#!/bin/sh
# create ttyUSB0 device and load module for cp2101
if [ ! -c /dev/ttyUSB0 ]; then
mknod -m 666 /dev/ttyUSB0 c 188 0
fi
if [ -z $(lsmod |cut -d" " -f1 |grep "cp2101") ]; then
modprobe cp2101 >/dev/null 2>&1
if [ $? != "0" ]; then
exit 1;
fi
fi

View file

@ -0,0 +1,2 @@
:010000003FC0
:00000001FF

View file

@ -0,0 +1,17 @@
rem Aufruf von Avrdude zur Programmierung c't-Bot
rem Batchdatei für Programmieradapter mysmartUSB
rem
rem von andreas Staudenmayer (andreas.staudenmayer@t-online.de)
rem Parameter
rem
rem -p m32 für ATMega32
rem -c avr910 Adapter kompatibel zu avr910
rem -P com5 Adapter installiert auf com5
rem -u disable safemode, um fusebits setzen zu können
rem -U flash:w:<Datei>:i Programmdatei, die geschrieben werden soll, wird als erster Batch Parameter übergeben
rem
rem -U lfuse:w:lfuse.hex:i lowfusebits setzen, Inhalt Bin-Datei lfuse.hex: FF
rem -U hfuse:w:hfuse.hex:i highfusebits setzen, Inhalt Bin-Datei hfuse.hex: D9
rem -U lock:w:lock.hex:i lockbits setzen, Inhalt Bin-Datei lock.hex: 3F
avrdude -p m32 -c avr910 -P com5 -u -U lfuse:w:lfuse.hex:i -U hfuse:w:hfuse.hex:i -U lock:w:lock.hex:i

View file

@ -0,0 +1,11 @@
#!/bin/sh
# echo program C't-Bot with avrdude and mySmartUSB
#
# echo Usage: setfuses.sh <filename>
#
if [ $# != 1 ]; then
echo "Usage: setfuses.sh <filename>"
exit 1;
fi
avrdude -p m32 -c avr910 -P /dev/ttyUSB0 -e -u -U lfuse:w:lfuse.hex:i -U hfuse:w:hfuse.hex:i -U lock:w:lock.hex:i