ATMEL-Microcontroller
Man kann sich hier zwei unterschiedliche Anleitungen zum Bau eines
Brenners fuer den Atmel Microcontroller 89C2051 runterladen.
Die erste Anleitung setzt den Besitz des C'T-Eprop, einen Eprombrenner
aus der C'T 1/90 voraus. Es muss dann lediglich noch ein Adaptersockel
gebastelt werden. Die Software laeuft nur unter Linux.
Komplettpaket 15kb
Die zweite Anleitung behandelt den vollstaendigen Selbstbau eines Brenners
fuer den MCS51 kompatiblen 89C2051 der Firma
ATMEL
Diese Anleitung basiert auf einer anderen von
Steven J. Merrifield Seine Originalanleitung kann hier ebenfalls
gesaugt werden.
Komplettpaket 70kb enthaelt
meine Anleitung, den Source der Software und das Original von Steven.
Ein paar Worte zu meinen Aenderungen:
1. Der Transi an XTAL1
War noetig weil sonst jedes ungerade Byte den internen Addresscounter
des 2051 eine Adresse zu weit geschaltet hat.
2. Aenderung der Widerstaende an Q1
War bei mir noetig weil mein 2051 sonst zuviel Saft gezogen hat und
die 12V etwas zusammenbrachen. Es wurden dann naemlich ab und an ein
paar Bytes nicht gebrannt.
3. Der doppelte Inverter vor Q1.
Ich versprach mir dadurch eigentlich ein schnelleres durchschalten von
Q1 zwischen 5V<->12V. Hat leider nicht viel gebracht. Deswegen ist das
delay(1) im Source. Ich habs aber trotzdem fuer die Leuchtdiode drinnen
gelassen. Vielleicht liesst das ja hier so ein alter Knacker aus dem
Transistorzeitalter der mir mal schreibt wie man soetwas schneller
hinbekommt. :-)
4. Die drei NAND-Gatter
Damit ersetze ich die Resettaste. Man wird ja bescheuert wenn man
immer von Hand da drauf druecken soll. Ich habe fuer die Gatter ein
4011 genommen weil hier gerade ein echter Notstand an 74xx00 geherrscht
hat. Kein LS,F,HC,HCT,ALS noch nichtmal ein Standard-TTL war hier
aufzutreiben. Unglaublich! :-) Bei mir funktioniert das weil mein
Druckerport 0/5V liefert. Ich koennte mir aber vorstellen das es mit
alten Druckerports Probleme gibt. Vielleicht doch besser ein 74LS00
einsetzen.
Noch ein paar Worte zu Software:
1. DOS
Ich hab mal ein Binary mitgeliefert. Es ist nur auf einem 486DX4/133
und Druckerport LPT1 (378) lauffaehig. Fuer andere Prozessoren muss
nach Aussage des Originalautors noch eine Softwareschleife angepasst
werden. Mir ist das nicht ganz klar da nach meinem etwas duennen
Datenblatt der 2051 die Zeit selbst vorgibt und das Programm dies auch
ueber die ERROR-Leitung auswertet. Vielleicht geht es ja auch mit
anderen PCs. (so teuer ist ein 2051 ja nicht :-)
Da IMHO ein zu langsamer Rechner keinen Aerger machen sollte, koennten
ja die Pentium-Angeber die keinen C-Compiler haben ja einfach den
Prozessorcache abschalten. :-))
2. Linux
Also gut mittlerweile gibt es auch eine Linuxversion. Ich hatte ein
paar Probleme damit im ms-Bereich zu warten. Zum Glueck gibt es seit
einiger Zeit /dev/rtc. Da bedeutet leider das dieses Programm erst ab
Kernel 1.3.93 und hoeher laeuft. Wer mir doofe Fragen stellt ohne
vorher /usr/src/linux/Documentation/rtc.txt gelesen zu haben, bekommt
ein X11R6 :-)
Die Software laeuft nun auch problemlos mit meinem 2.0.29.
Der Druckerport wird hier direkt ueber out und in angesprochen. Das
Programm muss also als root laufen.
Der mitgelieferte Source und das Binary erwarten den Brenner an
0x278. Das kann man aber in atmel.c aendern.
Die Bedienung des Programms erinnert immer noch an mittlere
Computersteinzeit aber man kann erstmal seine Controller brennen. Die
naechste Version wird auch Kommandozeilenparameter verstehen
koennen. (aber nicht diese!)
Ich moechte alle bitten die es geschafft haben mit der Linuxversion
erfolgreich zu brennen, mir eine Mail an
olaf@criseis.ruhr.de
zu schicken.
Ich bin mir naemlich noch nicht ganz darueber im klaren ob es mit
jedem Rechner laufen wird. Sicher bin ich im Augenblick nur das es mit
2.0.29 und einem AMD486DX133 laeuft.
Und noch ein Wort des trostes zum Abschluss :-) Die Atmels scheinen
ziemlich robust zu sein. Obwohl ich denen bei der Entwicklung der
Software ein paarmal versehentlich boeses angetan habe, haben sie es
ueberlebt. Kein vergleich mit GALs oder Eproms. Die waeren da schon aus
dem Sockel gesprungen.
Das bedeutet aber natuerlich nicht das ich irgendeine Garantie
uebernehme! Wenn dein 2051 weniger gut ist, dann hast du halt Pech
gehabt.