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.