29.3.2009 11:34, pesco
Ich war neulich malwieder bei Nacht im Freihafen und habe Fotos
von
dunkler Industrieidylle geschossen:
Das Highlight kommt zum Schluss.
Was genau es ist und wo es steht, verrate ich jetzt grad nicht…
Wer das wissen will, darf mich gerne mal Abends besuchen kommen. :)
Ich bin mir auch sicher, sie haben darunter einen zweihundert Meter tiefen
Hive fuer
Experimente. Und Supercomputer, aber das ist eh klar.
PS.
Spontaner Musiktipp zu den Fotos: Der Soundtrack von
Silkcut.
PPS.
Jetzt neu! Mit
Zwitscherautomatik.
10.3.2009 18:10, pesco
Erfolg! Der AVR-Programmierer kann auch den ATtiny13 programmieren.
Das ist glaube ich der kleinste Atmel, den man noch mit
avr-gcc programmieren
kann. Er hat 8 Pins, 1KB Flash, ist so gross wie ein kleiner Fingernagel und
kostet 80 Cent. Die einzig noetig Anpassung am bereits verlinkten
Code war, die
PAGESIZE auf 16 zu setzen.
Uebrigens habe ich mir die Muehe gemacht, den Tiny direkt in C zu
programmieren, und nicht etwa die Arduino-Umgebung auf ihn anzupassen. Nachher
haette die evtl. noch zu viel Code erzeugt, der nicht mehr in 1K gepasst
haette. Zum Glueck ist das auch alles nicht
viel schwieriger. Nur zum korrekten
Setup von PWM etc. war es noetig, das Datenblatt etwas eingehender zu studieren
und viele wueste Registernamen abzutippen. ;)
Nachdem er denn nun blinken konnte: Meine Oma hat am Sonntag Geburtstag gefeiert
und ich habe Samstag damit verbracht, meinen Arbeitsplatz mit Basteleien zu
verwuesten. Das Endprodukt ist ein marienkaefermaessig angemalter halber
Tischtennisball, der anfaengt zu leuchten, wenn es dunkel wird. Man sehe selbst:
Ja, man haette das Innenleben auch ordentlicher, huebscher und effizienter
gestalten koennen, aber ich war jung und dumm. Naja, und in Eile.
Anlage:
Quelltext fuer den Kaefer
6.3.2009 0:00, pesco
Hah!
Geht doch
(TM). Ich habs irgendwie nicht eingesehen, mir ein teures
Programmiergeraet zum Beschreiben von Mikrocontrollern zu kaufen, wenn ich doch
mit meinem Arduino bereits ueber einen frei (!) programmierbaren ebensolchen
verfuege. Also ist mein erstes richtiges Arduino-Projekt ein
AVR-Programmierer. Ist alles noch recht roh und leicht
ATmega8-spezifisch, aber funktioniert soweit anstandslos.
Kurzanleitung:
Arduino-Pins 2 bis 5 mit RESET, SCK, MISO, MOSI verbinden. VCC und GND
anschliessen. Mit
minicom auf den Arduino gehen, ggf. resetten. Es sollten
Informationen ueber den angeschlossenen Zielchip erscheinen. Nach Aufforderung
gewuenschtes Firmware-Image als Intel
.hex-Datei an die Serielle senden. Beispiel:
cat foo.hex > /dev/cuaU0
Vorsicht:
Nicht zu schnell senden! Sonst laeuft dem Arduino der Empfangspuffer
voll und er verschluckt alles, was danach kommt. Man kann das Problem vermutlich
vermeiden, indem man die Serielle langsam schaltet. Aber: Fuer sowas gibt es doch
Flusskontrolle! :)
Der Arduino hat vier leere Loetstellen, die mit
X3 markiert sind. Da kann man
Pfostenstecker einloeten. Und
zufaellig entsprechen diese Pins gerade den
seriellen Steuerleitungen, die nicht anderweitig angeschlossen sind. Eine davon
ist CTS,
clear to send
. Darueber teilt man dem angeschlossen
Endgeraet
(lies: PC) mit, ob man gerade empfangsbereit ist oder nicht. Also
X3-1 mit
Arduino-Pin 6 verbinden und die Daten sollten lueckenlos ankommen. Bei mir
musste man auch noch die Beachtung der Flusskontrolle einschalten:
stty -f /dev/cuaU0 crtscts
NB.
Ich habe FreeBSD und meine Serielle heisst
cuaU0. Die Linux-Fanbois
setzen bitte
ttyS0 oder was auch immer. ;)