Sehr oft wurde schon nach Entwicklungsboards zum Einstieg in die MC-Programmierung gefragt. Anbei eine einfache Schaltung, die man schnell auf eine Rasterplatine selber hinkriegt. Mit anderen Worten, man braucht keine superteuren Boards zu kaufen. Nur noch die Flip-Software von Atmel runterladen und los gehts. Für die Linux-Fraktion gibt es auch eine Flip Version. Als freier Assembler, ist der Metalink-Assembler quasi Standard. Als freien C-Compiler gibt es den SDCC, aber damit habe ich keine Erfahrungen, da ich den Keil benutze. Da bleibt mir nur noch, viel Spaß und Erfolg zu wünschen. Peter
Hallo Peter, habe mir den Plan mal angesehen, ist klasse für'n kleines Projekt in dem ich die drei 16bit Timer brauche. Habe mich bis jetzt nicht an die AVR's rangetraut, da ich die 8051 bevorzuge. Hast Du ein Quelle wo man den T89C51RD2 bekommen kann, evtl. auch den 'CC01' mit CAN. TRange sollte -40/85 oC sein. DANKE.Gruss Stephan
Wirklich super, keinerlei Kommentare, keine Beschreibung. So stell ich mir Schaltungsbeispiele jedenfalls nicht vor. Die sollen doch auch nachnutzbar sein und möglichst auch von nicht so erfahrenen Elektronikern. So ist es nur eine Verschwendung von Forum-Platz.
Mal sachte ... Mark Fragenden Menschen kann geholfen werden. Beim Peter auf dem Entwicklungsboard ist alles was man so braucht. Wenn Du einen kleinen Einstieg suchtst schau mal bei den links oder melde Dich dann kann ich Dir ein kleines Tutorial zusammenstellen.
Was soll ich da noch mehr beschreiben, die 8 Tasten sind zum Drücken und die 8 LEDs zum Leuchten. Reicht aus, um in die Grundlagen einzusteigen (LED an, aus, blinken, Lauflicht, Ampel, Tastenentprellung, Timer, UART usw.) Und das man an VCC +5V gegen GND anlegen muß, dürfte auch klar sein. "Program" bedeutet in den Programmiermodus gehen und "Reset" bedeutet Reset. Mark, es würde mich mal interessieren, ob ich da zuviel vorausgesetzt hatte. Ist halt schwer sich in andere reinzudenken. Peter
Hallo Peter, ich habe mir Deine Vorschläge mal kurz angesehen. Die FLIP Software ist wohl zum Flashen. Der Kompiler war auch ganz einfach zu finden. Mehr braucht man wirklich nicht. Was jetzt noch ganz hilfreich wäre, ist ein kurzes Bespielprogramm, das mit dem Kompiler kompiliert wird und dann in den Controller übertragen und zum Laufen gebracht wird. Also Mark Äußerungen sind nicht nachvollziehbar. An einem ruhigen Nachmittag könnte ich so einen 8051 doch mal testen. Irgendwann funktioniert Deine Werbung. Wenns läuft werde ich mich mal melden. Wenn nicht, sowieso. Oryx
Hi minimales Beispielprogramm für Peters Board für den SDCC #define MICROCONTROLLER_T89C51RD2 #include <mcs51reg.h> void main(void) { while(1) P0 = P2; } Das sollte den Zustand der Taster auf den LED's ausgeben. Taste gedrückt = entsprechende LED leuchtet Matthias
Ich habe schon länger diesen uC bei mir liegen, konnte aber keine passsende Software dafür bei Atmel finden. Dank diesen Beitrag habe ich jetzt alles was ich brauche ! Gibt es eigentlich irgendwo im Internet eine Beschreibung zum AT89C51Rx2 ? Abgesehen vom normalen Datenblatt, denn da stehen nicht genügend Infos drin. Wann wurde der 8051 eigentlich enwtickelt ? Im Internet findet man dazu recht wenig, nur dass es irgenwann in den 80er Jahren war...
Hallo Ich habe noch eine Frage. Was ist der Unterschied zwischen der FLIP-Software und der AT89ISP - Software, die es zum Runterladen gibt Martin
@Henno: Such mal die 8051 FAQ. Findest Du überall im Netz. Entwickelt wurde er 1980, im Netz kursiert ein eingescanntes Original-UserManual von Intel, ca. 350 Seiten gross. Ausserdem kannst Du bei Philips ein paar PDFs runterladen: Family Architecture, Hardware Guide, Programmers Guide.
Hallo Benötigt man nicht noch zusätzlich ein Startup-File für den C-Compiler? Martin
Hallo Peter, ich habe deine Schaltung mal aufgebaut. Läuft super. Mit dem Beispielprogramm von Mathias ist auch der Einstieg in die Programmierung einfach. Also vielen Dank Oryx
HI, kann deine schaltung auch mit einem AT 89C51ED2 betrieben werden, oder ist dazu eine umständliche modifikation der schaltung nötig?
Hallo, Hab mir das Board nach dem obigen Schaltplan aufgabaut und hab jetzt folgendes Problem: Wollte mit Flip von Atmel mein Programm übertragen bekomme aber immer wieder den Fehler "Timeout error". Kann mir irgend jemand Helfen?
@peter: Hatte mal SDCC für den PIC herunter geladen, aber Floating Point Routinen sind da auch nicht drin. Nun ja, man braucht sie in vielen Anwendungen auch nicht wirklich bzw. kann etwas improvisieren. Gruß Dietmar
@Robert, welche 8051-Typ benutzt Du (genaue Bezeichnung) ? Schwingt der Quarz (f/6 oder f/3 an ALE) ? Nimm den 8051 raus, schließe RXD mit TXD kurz, dann muß am Terminalprogram jedes Zeichen zurück kommen. Setz den IC rein, mache Reset mit PSEN an GND, sende ein großes "U", muß zurück konmmen. Peter
Hab einen "AT89C51 24PI". Ob der Quarz schwingt kann ich zur Zeit noch nicht feststellen da ich kein passendes Messgerät habe (mach ich aber die Tage mal). wenn ich RXD und TXD kurzschließe kommt das gesendete auch zurück, wenn der µC drin sitzt kommt nichts zurück.
"Hab einen "AT89C51 24PI"." Da Du den nicht unter Flip auswählen kannst, kann es auch nicht gehen. Und im Datenblatt wirst Du auch finden, daß er keinen Bootloader hat und nur über einen Parallel-Programmer programmiert werden kann. Man kann nicht so einfach irgend einen MC reinstecken und erwarten, daß es funktioniert. Peter
Gutes Entwicklungsboard muss ich schon sagen. Aber ich hab da noch ne Frage wo kann ich die Flip-Software herunterladen? Gruss
Ich bin's nochmal, hab jetzt einen "AT89C51ED2" eingestzt und bekomm jetzt auch endlich ne Verbindung zu Flip. Allerdings wenn ich was übertragen löschen ect. will kommt wieder die Fehlermeldung "timeout error". Hat da jemand noch mal eine Idee zu?
Müsste eigentlich gehen - spiel mal ein bischen mit der Baudrate, sollte aber mit fast jeder Rate gehen. Prüf mal nach, ob da irgendwelche Wackelkontakte oder schlechte Leitungen vorhanden sind.
So hab endlich den Fehler gefunden, zwei drei Kondensatoren paralel zur SPannungsquelle und schön funktionierte es. ;-) Allerdings hab ich festgestellt das ich dei Ports P1.5 - P1.7 nicht ansteuern kann,die sind wenn ich sie ansteuern will immer auf Low und wenn ich den port nicht anspreche ganz normal auf 5V wegen den Pull Up's. Wenn ich die Ports einlesen will und auf einen der Drei high pegel lege gehen all drei auf high und bei Low eben alle auf Low. Hab im Datenblatt gelesen das die noch für einen Bus gut sind (glaub es war SPI) muss man den erst Deaktivieren oder so?
Kurzschluß !!!! >> Hab mir das Board nach dem obigen Schaltplan aufgabaut.... anscheind nicht.... Port 1 ist in Peters Plan nicht beschaltet. Ergo.... keine Pull UP´s da, Werden auch nciht gebraucht. Sind nämlich schon drin.... Irgendwo ist da nen Kurzer drin >>> Wenn ich die Ports einlesen will und auf einen der Drei high pegel lege gehen all drei auf high Wie jetzt, ???? Ich denke Du hast Pull UP und die sind schon high ?? Wie legt man die denn dann auf High ???? Alles in Ruhe noch einmal durchsehen !!!!!!!!!
War mal so wie oben aufgebaut aber der eigene ergeiz läst einen eben nicht in ruhe: Also ist an Port 1 jetzt nochmal eine reihe LED gekommen. Die Pull UP's von denen ich Rede sind die Internen. Einen Keurzschluss schließe ich aus, da der die ja eigendlich immer auf low ziehen würde, und nicht high oder low in abhängigkeit davon ob ich den Port anspreche oder nicht. Also wenn ich den Port nicht anspreche sind die Äusgänge High, wenn ich ihn anspreche sind sie auf Low und es ist ziemlich egal ob oder was da dran hängt ist nähmlich immer so.
"Also wenn ich den Port nicht anspreche sind die Äusgänge High, wenn ich ihn anspreche sind sie auf Low" Na dann funtionieren sie doch. Wenn das Low-setzen funktioniert, aber das High-Setzen nicht, dann liegt das Problem in Deinem Programm. Peter
@Peter, er schrieb " Wenn ich die Ports einlesen will und auf einen der Drei high pegel lege gehen all drei auf high und bei Low eben alle auf Low. " Das kann nur nen Kurzer..... oder er hat sich völiig falsch ausgedrückt. Kommt ja vor.. @Robert, ""Einen Keurzschluss schließe ich aus, da der die ja eigendlich immer auf low ziehen würde, und nicht high oder low " Siehst Du da liegt Dein Prblem.... warum können die 3 Ports nicht miteinander krz geschlossen sein ?? Macht Sinn mit deiner Aussage oben !!!!! Kurzschlüsse gibts nicht nur nach Masse oder VCC.
Hallo! Ich bin neu hier und habe mir auch das Board nach dem obigen Schaltplan aufgebaut. Habe von nem Kumpel einen Philips 80C31. Kann ich den auch verwenden, wenn ich ne andere Software benutze? Oder geht das Board nur mit Atmel uC? Danke schon mal im voraus Roman
Geht nur mit µC die per Bootloader über UART sich ISProgrammieren lassen. P.S. Hab ich es schön formuliert?
D.h. den oben angesprochenen AT89C51ED2 kann ich benutzen? Denn der uC aus der Anleitung des Boards kann ich bei Reichelt nicht finden. Gruß Roman
Ja den µC kannst du problem benutzen. Hab hier auch schon ein paarschaltungen mit dem Aufgebaut und Funktioniert wunderbar.
Hallo, habe vor geraumer Zeit auch ein einfaches Testboard gebaut und das Ganze etwas aufbereitet und für den Einstieg verpackt. Vielleicht kann ja jemand was damit anfangen: www.dominik-bollivo.de -> Grundausstatung Hardware
Brauche ich bei dem AT89C51ED2 eigentlich eine bestimmte include-Datei am Anfang, welche ich einbinden muss?
müsste eigentlich mit der ganznormalen reg51.h gehen die nehme ich immer und damit läuft das wunderbar. Weiß jetzt aber nicht wie weit das von dem Compiler abhängig ist. Mfg.: R.Ostermann
Ich hab mir heut den AT89C51ED2 in das board eingebaut. Wenn ich mit der Flip Software eine Verbindung aufbauen will, kommt immer gleich "time out error". Hat jemand eine Ahnung woran das liegen kann? Gruß Roman
Hallo, - hast du das Board nochmal auf fehler untersucht? - Passende Baud ausgewählt? - Richtigen µC gewählt? - richtige Schnitstelle? - PSEN auf Masse gezogen damit er in den BOOTloader geht und resetet? - TXD und RXD richt?(kannst du mit comterminal oder so ausprobieren ein U muss aufjedenfall zurück kommen) - Kondensatoren paralle zur spannungs versorgung? (hatte ich erst nicht und da hat er auch nichts gesagt). mfg.: R.Ostermann
Fehler hab ich keine gefunden. Ich habe zwei 1uF Kondensatoren parallel zur Spannungsversorgung. Jetzt weiß ich aber nicht genau, ob ich Elkos oder andere Kondensatoren brauche. Schnittstelle ist RS232. PSEN ist auch auf Masse. Was hat es denn mit dem U und dem comterminal auf sich? Damit kann ich irgentwie nichts anfangen. Danke für deine Bemühungen, bin halt noch recht neu auf dem Gebiet :-)
ja is kein problem bin auch och nicht so lange dabei und hatte am anfang auch dieverse probleme. Is eben so. Mit dem Comterminal und U hat es das folgende aufsich: Mit comterminal kannst du daten über die RS232 schnittstelle senden und sehen was dort ankommt. Wenn du die ädern 2 und 3 brückst siehst du im terminal genau das was du gesendet hast. Wenn du hinter Pegelwandler TXD und RXD brückst kannst du damit überprüfen ob der Pegelwandler richtig arbeitet ( dann müsste auch ganau das zurück kommen was du gesendet hast) und mit dem U kannst du überprüfen ob dein µC richtet arbeite ein U muss er aufjeden fall zurück senden. Wenn er das nicht tut kann es sein das er defekt ist. Und die Elkos müssten eigentlich reichen.
Ist das ein eigenes Programm, welches ich runterladen muss, oder ist das bei dem Flip dabei?
Hallo! Ich hab das mal mit dem comterminal probiert. Wenn ich TXD und RXD brücke, kommt nicht das selbe zurück, was ich gesendet habe, nur irgentwelche komischen Zeichen. Kann es sein, dass der Pegelwandler nicht richtig arbeitet oder defekt ist?
hallo, ja kann sein das der pegelwandler nicht richtig arbeitet. Probier mal aus TXD und RXD vor dem wandler zu brücken dann müsste das gleiche zurück kommen. Sonst kann es sein das schnittstelle am pc nicht richtig arbeitet.
hallo leuts ich habe eine kleine frage zur programmierung des AT89C51RD2....mir is klar das ich das programm von atmel laden muss...aber wie muss ich den ic am pc anschliessen??? brauche ich nicht wie bei eeproms ein spezielles gerät um die software draufzuladen?? Ich gebe zu, hab mich sonst noch nirgends schlau gemacht (hab leider zurzeit viel um die ohren), vielleicht kommt euch die frage dumm vor, aber bitte gebt mir eine antwort... gruss lukas
@Lukas Nein, Du brauchst kein Programmiergerät. Das ist ja gerade das bequeme bei den 8051 mit Bootloader. Einfach nur mit der COM des PC verbinden. Der Schaltplan ist für ein 1:1-Kabel. Für ein Nullmodemkabel mußt Du 2 mit 3 vertauschen. Peter
Hallo! Ich habe bei meinem Board mal den Pegelwandler ausgetauscht. Jetzt kommt auch das Gesendete beim Comterminal wieder zurück, aber die Flip-Software erkennt das Board trotzdem nicht. Weiß jemand, woran das noch liegen kann? Muss ich vielleicht noch ein paar Kondensatoren parallel schalten oder so? Gruß Roman
Hallo... ich wollte mir das Boar auch Bauen. Was benötige ich? - AT 89C51ED2 PDIP http://www.reichelt.de/?SID=27p0sh@qwQARsAAEbrYuc0081c6d63f9dcb2d60c7e3ba97540faa;ACTION=3;LA=5;GROUP=A364;GROUPID=2960;ARTICLE=48459;START=0;SORT=preis;OFFSET=16 <-Richtig? - MAX 202 CPE http://www.reichelt.de/?SID=27p0sh@qwQARsAAEbrYuc0081c6d63f9dcb2d60c7e3ba97540faa;ACTION=3;LA=5;GROUP=A217;GROUPID=2914;ARTICLE=39578;START=0;SORT=preis;OFFSET=16 <-Richtig? - Widerstände - Quarz - Kondensatoren - Taster - Jumper (Dip-Schalter) - D-Sub Buchse Sonst noch etwas? Die Tasten aus dem Layout brauch ich auch, anstatt der Led's will ich aber ein LCD-Display ansteuern, müßte doch Problemlos möglich sein oder?
und ohne LCD (4x20Zeichen), statt des ED2 kann in die freie Fassung ein 89C5131AM (5V/USB) verwendet werden. mfg Pieter
Das ist nett von dir aber im vergleich zu dem oben in der PDF von "Peter" (1.beitrag / thread ersteller)ist deine Schaltung viel komplizierter! Hat vielleicht auch viel mehr funktionen! Ich wollte die Schaltung auf einer Lochraster Platine oder so anfertigen, das wird bei deiner Schaltung etwas schwer, trotzdem nett von dir! Wollte ja mehr oder weniger nur wissen ob ich da die richtigen Bauteile habe... 89c51ed2 im Dil gehäuse ist auf einer Lochraster platine bestimmt sinnvoller als im PLCC gehäuse! Und ob der Max202 richtig ist, gibt soviele! Und warum ne max202 und nicht max232! Die habe dann auch alle noch zu komische änderungen! Der Aufbau nach Peters Schaltplan sieht ja relativ leicht aus.
die Schaltung ist nicht komplizierter, sieht nur so aus. Ausserdem sind da Bestückungsvarianten vorgesehen. Die selbe Leiterplatte kann also für verschiedene Aufgaben genommen werden. Den ED2 in PLCC verwende ich für Testboard lieber, da er 2 zusätzliche Ports hat. Damit ist debuggen leichter. Max202 braucht 100nF, Max232 1µF. mfg Pieter
Nö, Max232 geht auch mit 100n, ist zwar außerhalb der Spezifikation, aber Du willst NUR RS232 und nicht noch neg. Spannung für Kontrast für LCD machen.
Daniel W. wrote: > Sonst noch etwas? Nö, das ist alles > Die Tasten aus dem Layout brauch ich auch, anstatt der Led's will ich > aber ein LCD-Display ansteuern, müßte doch Problemlos möglich sein oder? Dann aber bei Benutzung von P0 beachten, daß man noch externe Pullups braucht. Oder P1..P3 fürs LCD benutzen. Peter
@peter da nehm ich dann einfach nen anderen port ist ja einfacher =) danke Also kann ich den max202 ruhig nehmen, von reichelt ? thx
Achso wie wird der MC betrieben im normal modus oder x2? Und kann ich auch einfach einen schnelleren quarz nehmen oder muss ich dabei sonst noch etwas beachten ? Wenn ich vor P0 Pullups schalte, gibt es da bestimmte Werte ? oder sind die immer gleich groß?
Kann mir jmd vll noch netter weise meine Fragen schnell beantworten, dann kann ich die Bauteile bestellen =)
mit dem 11,0592MHz Quarz kannst Du im Normal und im X2 Modus arbeiten. Ich arbeite auch mit 22,1184MHz im normal und X2 Modus. Oberhalb 22MHz können in der Ansteuerung einer LCD eventuell ein paar NOPs notwendig sein. mfg Pieter
Also könnte ich einfach einen 22,1184 MHz nutzen und an der schaltung ändert sich nichts ? Wozu ist in Peter's PDF , die kondesatoren C3 und C5???
also sollen die zwischen vcc und gnd von den beiden IC's und nicht irgendwo zwischen vcc und gnd? THX schonmal
Martin wrote: > aber Du willst NUR RS232 und nicht noch neg. Spannung > für Kontrast für LCD machen. Keine schlechte Idee.... Wo zweigt man die am MAX ab? Pin 6?
Kann mir vielleicht jemand eine Adresse mitteilen, die zu dem Standard- Assembler für die 8051er führt. Habe keine eMail-Adresse, bitte ins Forum schreiben. Hans
Hans wrote: > Kann mir vielleicht jemand eine Adresse mitteilen, die zu dem Standard- > Assembler für die 8051er führt. http://www.metaice.com/ASM51/ASM51.htm Peter
Nochmal gefragt, wie groß müssen die Pull Up Widerstände sein? Unter Pull Up finde ich weder bei reichelt noch bei conrad etwas... kann mir jmd sagen wo oder wie ich sie finde?
PullUp ist die gängige Bezeichnung für einen "Hochziehwiderstand" dessen genauer Wert erstmal Nebensache ist. Der Wert hängt vom genauen Einsatzzweck ab. Meist verwende ich da 10KOhm. mfg Pieter PS: es gibt auch PullDown...zum runterziehen...
Hi Pieter, Was ein Pull Up Wid. ist habe ich verstanden und was er macht. Dennoch finde ich keinen zu kaufen bei reichelt oder conrad. Das kann aber ja nicht sein oder? Der AT 89C51 ED2 hat am P0 ja keine integrierten Pull Ups, daher müssen Sie Extern vorgeschaltet werden! Der port soll für Taster genutzt werden, die gegen GND geschaltet sind! Ist die größe da egal? Aber erstmal muss ich sie ja zum kaufen finden!
>Dennoch finde ich keinen zu kaufen bei reichelt oder conrad. >Das kann aber ja nicht sein oder? >Aber erstmal muss ich sie ja zum kaufen finden! lol Wieso wusste ich, dass sowas kommt?
>Hilfst mir trotzdem ;) Guck einfach bei Reichelt oder Conrad nach Widerständen. Je nachdem, an welches Potential (GND oder VCC) sie angeschlossen werden, nennt man sie Pull-Up (VCC) oder Pull-Down (GND). Wie Pieter schon schrieb: >Meist verwende ich da 10KOhm. Duck einfach mal nach Widerständen in dieser Grösse (dürften im einstelligen Cent-Bereich liegen). Noch eine Suchaufgabe: Unter welcher Bezeichnung findet man "Vorwiderstände" bei Reichelt? PS: Ich empfehle dir. dich mal mit elektrotechnischen Grundlagen zu beschäftigen.
das hat schon was mit ET-Grundkenntnissen zu tun. Für jeden Schalter ist ein gewisser Mindeststrom im Datenblatt angegeben. Dieser soll dann durch den PullUp-Widerstand bereitgestellt werden. Meist wird dieser Mindestrom ignoriert. Mit 10KOhm sind das 0,5mA (bei 5V) und sollte für einen guten Schalter reichen. Das Prellen eines mechanischen Schalters kann durch die Software umgangen werden. Mein Schaltplan war Dir ja zu kompliziert, neben den Bestückungsvarianten sind da auch PullUps drin. Und je vollständiger ein Schaltplan ist, um so mehr wird es. mfg Pieter
verzeihe bitte das wir Dir helfen... es geht nicht um Namen (die sind Schall und Rauch) sondern um Aufgaben.
>pull up - widerstand hat nicht mit grundkenntnissen zu tun. ich kann dir >garantieren das du auf einer ET schule und am anfang des studium nicht >einmal davon hören wirst. aber egal Pull-Widerstände sind ja auch eher ein Teil der Digitaltechnik... Während meiner Ausbildung (zum Elektroniker) fielen diese Begriffe gelegentlich. (Studium habe ich auch hinter mir...)
>studiere jetzt
Von einem Student würde ich derartiges nicht erwarten...Sowas wäre mir
ein wenig peinlich.
zur Vorbereitung eines Praktikums klären wir Begriffe: Was hat ein Mann mit Turban -> ein InderFace
Und wenn der Thread auch noch so alt ist: Die Idee ist super!!! Prozessorsysteme interessierten mich schon immer, von Anbeginn der Erfindung dieser in Halbleiterschaltkreisen in den 70-er Jahren. Analog zur Hardware Lochrasterkarte, ebenso die Softwareentwicklung: Richtig eingestiegen und begriffen habe ich die erst Anfang 1990 mit dem ersten Kauf eines Standard-8031-Bausteins, stolz wie Oskar, so einen Chip zu besitzen, und wenn er nur 3 Euro wert war. Bezeichnung: Intel 8031P. Habe mich dann gezwungen, damit die erste Controllerschaltung mit einer blinkenden LED zu bewerkstelligen. Also, 8031-er, Multiplexer 74373 und EPROM. Noch ohne PC, entwickelte ich eine Schaltung, mit der man byteweise ein EPROM brennen konnte, ohne Kontrolle über den aktuellen Speicherzustand. Manuelle Adressierung eines Bytes, manuelle Eingabe des Datenbytes. Reine Maschinenprogrammierung mit manueller Berechnung der Sprungadressen auf Papier, das war sehr abenteuerlich, aber nach ein paar Tagen funktionierte es tatsächlich! Von kybernetischem Code wie Laplace-Transformation, z-Transformation oder Signalverarbeitung, ist sowas natürlich meilenweit entfernt:-) . Die Ur-8051 brauchten noch keinen aufwendigen Startup-Code wie z.B. die ARMs. In der Vor-Internet-Zeit: Keine Panik, keinem von euch wäre es damals besser gegangen als mir: Eine KFz-Elektronik verfügte damals noch über keinen einzigen PN-Übergang, es sei denn, man ist über ein PNP-Schnitzel gefahren: Schichtenfolge PNP-Schnitzel: Paniermehl/Nicht-Paniermehl/Paniermehl. Ich kam zur ersten Literatur mit einem Buch über Intel 8048 und Buch-Diskette und einem so genannten TASM, das war ein Table Driven Assembler für damals gängige Prozessoren wie z.B. 8085, 8048, 6502, 6800. Anfang 1990 besaß ich den ersten PC und eine Sammlung der damals gängigen Bausteine aus Industrieschrott (ausgeschlachtete Drucker, Kopierer, Videorekorder, Heizung, Motronik, ABS) von 8085-Schaltungen: Gigantische Mengen. Dazu gehörte der 8085 selbst, ein 32k RAM, 32k EPROM, ein 8255 I/O-Port und ein Timer 8253. Natürlich brannte ich dann darauf, ein älteres System zu entwerfen und in Betrieb zu nehmen, hatte ich doch alle Bausteine vor Ort. Kein Demo-Board, keinen Demo-Code, nur den Befehlssatz des 8085 und etwas Beschreibung aus dem Buch. Und da ich, bis in die heutige Zeit, nie mehr ein 8085-Demoboard fand: Eine Lochrasterkarte!!! Um mit dem neueren Ur-8031 zu experimentieren, hatte ich nach dem ersten PC später auch einen EPROM-Brenner, und den alten Assembler auf PC. Flash Download gab es überhaupt noch nicht, und ROM-Monitore erst später. Für jede Software-Änderung mußte ein EPROM gelöscht und wieder gebrannt werden. Aber das ging, ich beschwerte mich nicht. Die Technik war noch ehrlich und durchschaubar, keine Boot-Loader mit Re-Map-ten Interruptvektoren und geschütztem versteckten Boot-Sektor oder dergleichen. Für die Bestückungsseite einer Lochrasterkarte der 8085-Schaltung baute ich einen Kabelbaum aus Schaltdraht 0,4mm. Mit Quarz und Taktfrequenz 2 MHz (fast Gleichstrom!!!) ist das gerade noch so unkritisch vom Aufbau her. Das Ding funktionierte tatsächlich auf Anhieb, und bot mir auch gleich die Möglichkeit einer bescheidenen Experimentierplattform: 1 Taster an einem Interrupt-Eingang zur Programmwahl, 16 LED's am I/O-Port 8255, z.B. zur Ausgabe des Stack-Pointers. Und der externe 8253 konnte nach einmaliger Initialisierung z.B. 3-Phasen-PWM, ohne daß der Prozessor darin involviert ist. Ich schaltete einen der 3 Timer auf einen Interrupt-Eingang des 8085, das war dann ein Timer-Interrupt. Hier sind mir auch die ersten Gegensätze verschiedener Architekturen alter und neuerer Systeme klar geworden: Harvard (8051) gegen von Neumann (8085), der 8085 mit gigantischem Stack 32 kByte gegen 8051 mit "nur" 128 Byte Stack, z.B. für rekursive Programmierung. Als 8-Bitter hat der 16 Bit-Register. 6 Byte internes RAM, gegen immerhin 128 Byte beim 8051. Keinen internen Stack. Ohne externes RAM, konnte man gerade so ein bescheidenes Programm laufen lassen, daß keine Unterprogramme hatte. Lochrasterplatte für ein Einzelstück aus 08/15-Bausteinen, man ist von nichts abhängig, kein Bestücker, keine Platine, keine Lieferung. Nur etwas Draht, guten Willen, etwas Zeit, etwas Lötzinn. Und etwas Vertrauen, daß es funktionieren wird. Das würde ich jederzeit wieder so lösen. Der steinalte 8085 hat sogar die Zeiten überlebt, und ist 30 Jahre nach Einführung der meist produzierte Prozessor bei Intel (Quelle: Wikipedia). Dietmar
@Forum: >Hinweis: Der Beitrag den Sie beantworten möchten ist mehr als >6 Monate alt. Das macht nichts, auch der Thread ist fast 4 Jahre alt. Und wie man sieht, sorgt der noch immer für interessanten Stoff. Dietmar:-)
Hi haben das Board nach Peda's Schaltplan auf gebaut. Bin vorhin fertig geworden. Leider wenn ich die Flip Software starte und mich verbinden will bekomme ich ein Timeout Error. Kann mir jmd sagen wo der Fehler liegt, bzw. was ich tun kann? Chip: AT 89C51 ED2 Habe schon hier im Thread schon was gelesen von RXD und TXD kurz schliessen um zu gucken ob die Daten zurück kommen. Leider kann ich irgendwie nur nichts in mein Terminal-Programm eingeben. Was ich aber bei meinem alten uC konnte. mfg danny
Daniel W. wrote: > Hi haben das Board nach Peda's Schaltplan auf gebaut. > Bin vorhin fertig geworden. Leider wenn ich die Flip Software starte und > mich verbinden will bekomme ich ein Timeout Error. Versuchs mal mit ner kleineren Baudrate. Den PSEN Jumper hast Du gesteckt beim Reset ? > Habe schon hier im Thread schon was gelesen von RXD und TXD kurz > schliessen um zu gucken ob die Daten zurück kommen. Leider kann ich > irgendwie nur nichts in mein Terminal-Programm eingeben. Was ich aber > bei meinem alten uC konnte. Die UART kann nur einer haben. Also Flip beenden, BEVOR man das Terminalprogramm startet und umgekehrt. Peter
Hat sich erledigt klappt alles... hatte den vcc des atmel vergessen ^^ schande über mein haupt! Aber danke für die schnelle antwort
Ich hab jetzt aber noch paar allgemeine fragen! - ich schreibe in Keil uVision3, wie bekomme ich die Hex-File in den uC? Nutze Flip. Hab die Hex File schon geladen... - gibt es sonst noch einstellungen zu beachten? - der Jumper an Psen ist fürs ISP oder? Heißt ist das Programm drin Jumper raus nehmen? - wenn ich den mc von strom nehme und später wieder dran hänge staret er das programm dann automatisch? Sorry, für die vielen fragen. mfg Danny
Die Keil Demo Version arbeitet mit einem offset 0x8000. Schreib doch mal ein simples "toggle p3.3" Programm, läuft das ? ansonsten liegts vielleicht an der Keil Demo Version. Versuchs mal mit dem SDCC.
hab den sdcc jetzt! einstellen muss ich dann ja nichts... als include und define? #define MICROCONTROLLER_T89C51RD2 ?? (hatte einer hier im thread beim beispiel programm verwendet oder muss es T89C51ED2 sein??) #include <mcs51reg.h> ?? kann man die port-pins direkt an sprechen, also sind diese schon fest gelegt? oder muss ich das noch machen?
#include <P89c51RD2.h> muß nicht aber die *.h sollte schon beim SDCC dabei sein (bei mir jedenfalls). Schau mal in die *.h Datei, Auszug: /* P3 */ __sbit __at (0xB7) P3_7; __sbit __at (0xB6) P3_6; __sbit __at (0xB5) P3_5; __sbit __at (0xB4) P3_4; __sbit __at (0xB3) P3_3; __sbit __at (0xB2) P3_2; __sbit __at (0xB1) P3_1; __sbit __at (0xB0) P3_0; #define RD P3_7 #define WR P3_6 #define T1 P3_5 #define T0 P3_4 #define INT1 P3_3 #define INT0 P3_2 #define TXD P3_1 #define RXD P3_0 Alles schon drin. Also, define Ausgang P3_7 und dann setze den mal HIGH, LOW und schon haste nen Rechtecksignal.
Also... Eben hat es einmal geklappt, jetzt will sdcc keine files mehr erstellen weil es immer ein fehler gibt! Leider kann ich diesen aber nicht lesen da sich das DOS fenster direkt wieder schließt. :( Habe die include datei einmal geändert weil ich dachte das andere müßte doch auch gehen. Denke mal es liegt an der include datei... -----------------geht nicht------------------------- #define MICROCONTROLLER_T89C51RD2 #include <mcs51reg.h> #define Ausgang P2_0 void Main (void) { Ausgang =0; while(1); } --------------geht auch nicht------------------------------ #include <P89c51RD2.h> #define Ausgang P2_0 void Main (void) { Ausgang =0; while(1); } achso aber ne asm file spuckt er ab und zu aus mehr aber auch nicht!
ohh mann... ja. aber dein include geht nicht der obere schon, aber egal hauptsache einer ^^
Also meiner geht schon, deiner geht nicht ;-)) Welche SDCC Version verwendest du ? Mal nen Tip für dich (da du mit DOS auf Kriegsfuß stehst). http://www.opcube.com/home.html Da gibts ne IDE für den SDCC !"Windows 95, 98, ME, NT, 2000 or XP (i586-mingw32msvc)"! saugst du hier http://sdcc.sourceforge.net/snap.php Damit hast du nen aktuellen SDCC, den entpackst du nach C:/Mide (sofern du die Defaultinstallation durchgeführt hast). Dann versuchs noch einmal. Im Anhang die .h Datei.
Den freien Asssembler und freien C-Compiler, die im Anfangsbeitrag dieses Betreff´s angefuehrt sind habe ich im Internet bisher nicht finden koennen. Kann mir da jemand die Adressen mitteilen. Hans
Joe wrote: > Also meiner geht schon, deiner geht nicht ;-)) > > Welche SDCC Version verwendest du ? > > Mal nen Tip für dich (da du mit DOS auf Kriegsfuß stehst). > > http://www.opcube.com/home.html > > Da gibts ne IDE für den SDCC > > !"Windows 95, 98, ME, NT, 2000 or XP (i586-mingw32msvc)"! saugst du hier > > http://sdcc.sourceforge.net/snap.php > > Damit hast du nen aktuellen SDCC, den entpackst du nach C:/Mide (sofern > du die Defaultinstallation durchgeführt hast). > > Dann versuchs noch einmal. > > Im Anhang die .h Datei. Nutze sdcc von http://sdcc.sourceforge.net/snap.php mit mingw32 Habe aber Vista ^^ Aber mit dem anderem include geht es ja reicht ja. Aber habe ein anderes problem! Habe ein Programm geschrieben welches, einen text auf mein lcd aus gibt. funktioniert auch. jetzt hab ich danach in na while schleife ne tasten abfrage gestartet und wenn Sie gedrückt wird macht er einen clearscreen und gibt einen anderen text aus. Jetzt hab ich das Problem das er nach der text ausgabe direkt clearscreen macht und den anderen text ausgibt aber nicht immer. wenn ich meinen finger auf vcc oder gnd halte funktioniert es einwandfrei???? Das ist mir per zufall aufgefallen. woran kann das liegen??? Die tasten liegen an P0. siehe hier: P0 --- 10K --- Taster --- GND
Dann ist dir nicht zu helfen ;-)) siehe Links in meiner letzten Antwort, Thread über deiner Frage !!! http://plit.de/asem-51/ Hier noch einmal den ASM, der ist aber in der MIDE enthalten.
Für mich nicht erkennbar ;-) Entprellung etc... ? wie wäre es mit code und nem neuen Thread, dieser bezieht sich auf Peters Board.
so solle es sein oder ? dann hab ich was falsch gemacht! Bild im anhang..
Ja, aber ohne Code ist Rätselraten, hast du in P0 ein 0xFF geschrieben ? Ansonsten kann der Pin nicht korrekt abgefragt werden. Die 1 am Ausgang soll ja nach GND gezogen werden.
Hab es falsch gemacht habe den 10k zwischen p0 und den taster an gnd gehangen und garnicht an vcc! Hab ich etwas falsch verstanden gehabt.
Wieder zu Joe. Habe den ass jetzt doch gefunden, runtergeladen, entzippt, finde aber kein set up Datei. Oder das Anfängerproblem mit der Installation.....
Hans, http://www.opcube.com/home.html dann gehst du zu "dowmload packed file", saugst dir die SW und klickst setup.exe, kann doch nicht so schwer sein.
Zu Joe Über deinen letzten Adressentip habe ich dann den Assembler dann ganz einfach in den Kasten bekommen. Gehe ich jetzt richtig in der Annahme, dass da der Asem 5113 vom vorhergehenden Douwnload nicht mehr nötig war? Was mir auffiel war, dass unter den Erstellernamen lauter deutsch klingende Namen waren. - Kann es sein, dass es auch eine deutschsprachige Version gibt, oder ist das eher bei Shareware-Assemblern der Fall? So nebenbei, vor rund 20 Jahren habe ich mir den Assembler für die 8048er Familie noch selber geschrieben, dann aber mal 10 Jahre computermäsig nicht mehr viel gemacht, was sich in den Englischkenntnissen ganz schön bemerkbar macht.
Hi Folks, wollt mal fragen ob dieses Board auch geeignet ist um einen AT89C2051 bzw. AT89C4051 zu programmieren? Hab mir das Datenblatt mal kurz angeschaut, konnte aber nich finden ob der per Bootloader über UART sich ISProgrammieren lässt. Und kann ich für diese uC auch die oben genannte Flip-Software verwenden. Danke schon mal für die Antworten Gruß blicknix
moin moin, für die 89Cx051 braucht man einen 12V-Programmer, sind also zu experimentieren nicht wirklich geeignet. Mit Gruß Pieter
> Gehe ich jetzt richtig in der Annahme, dass da der Asem 5113 vom > vorhergehenden Douwnload nicht mehr nötig war? So ist es. > Was mir auffiel war, dass unter den Erstellernamen lauter deutsch klingende Namen waren. Wen meinst du ?? Wolfgang Werner Heinz ? ja, ziemlich deutsch und der Autor des besten freeware Assemblers für 8x51 Derivate. Marteen und die SDCC Bande ist eher international. > Kann es sein, dass es auch eine deutschsprachige Version gibt Nein, eigentlich schreiben alle in englisch, ist so üblich denn nur so kann man Weltweit ein solches Projekt zum laufen bringen. > ...was sich in den Englischkenntnissen ganz schön bemerkbar macht. Ja, aber englisch ist ein muß !!! denn alle Datenblätter sind eben nur in dieser Sprache zu haben. Übrigens hast du ja mit der MIDE den SDCC gleich mit dabei. Viel Erfolg beim wiedereinsteigen.
@Joe >Englisch ein Muss Soweit es das Datenblatt und den Befehlssatz betrifft, ist es kein so grosses Problem, wenn man mit der Vorgängerfamilie vertraut ist. Wenn auch der Befehlssatz ca. doppelt so gross ist, erkennt man an den Gemeinsamkeiten schnell wo es lang geht. Den Assembler auf die Reihe zu kriegen, dürfte auch möglich sein, es ist halt in erster Linie zeitaufwendiger sich durch das Fachenglisch zu kämpfen. >zum SDCC Habe erst durch deinen Hinweis bemerkt, was da alles möglich ist, werde aber wahrscheinlich das C-Programmieren noch zurückstellen. Zur Info mal stichpunktmäsig meine Vorgeschichte: -1. Rechner - Casio-Pocketcomputer, 4-Zeilen-LCD-Display a 32 Z. ca. 1 Mhz, 40 Kbyte RAM, 36 Kbyte Rom, im BS Basic- und Assembler-Programmierung möglich. -Programmiergerät für die 8048er gebaut -Eprommer gebaut -8048er Assembler und alle Software selbst geschrieben. Nachdem ich bis vor einem 1/4 Jahr nie einen grösseren Rechner hatte, sind natürlich alle höheren Programmiersprachen an mir vorübergegangen. Bin momentan auch mehr damit beschäftigt, die aktuelle PC-Hard- und Software (hier Pentium III-Laptop mit ME) und das Internet kennenzulernen, was schon eine gewaltige Umstellung mit sich bringt, und sich jemand, der mit Windows aufgewachsen ist, wahrscheinlich gar nicht so leicht vorstellen kann. Als Beispiel: Für meinen Casio habe ich mir einen Disassembler geschrieben, mit dem ich zum gesamten BS im 32K-ROM (ausser dem CPU-internen ROM) zugang hatte. Dazu kam auch noch ein Service- Manual mit dem Schaltplan des Rechners. Jetzt habe ich 4,5 Interneteinführungsbücher, unter anderen eins mit dem Titel "Den PC beherrschen", und bin nicht mal in der Lage, eine ganz simple Text-Datei über die RS232-Schnittstelle mit meinem kleinen Casio auszutaschen. Am Casio wäre dies einer der einfachsten Vorgänge, ganz ohne Programmierkenntnisse. Ich denke da an die Möglichkeit, meinen Eprommer für auf dem grossen Rechner erstellte Files weiter verwenden zu können. Vielleicht kennst du oder ein anderer Leser dazu eine Möglichkeit, meine PC-erfahrenen Brüder oder ein Nachbar, Lehrer am Gymnasium, sogar Medienbeauftragter der Schule, meinten dazu das es mit MS- DOS gehen müsste. Wegen meiner Programmiervergangenheit hat man mir auch zu Linux geraten. Aber dazu vielleicht ein ander Mal. Gruss Hans
Hi, @Pieter Sorry, versteh nicht ganz was du mir damit sagen willst. Könntest du mir das näher erläutern, bitte. Würde es funktionieren mit diesem Programmer oder nicht? Falls nicht gibts ne ähnlich einfache Lösung für nen AT89C2051? Hab mittler Weile entdeckt das die Keil Software, welche ich verwende, den AT89C2051 unterstützt, wär also super wenn jemand einen simplen Programmer kennt den ich mit dieser Software nutzen kann. Danke Grüßle blicknix
Hi, kann man für den Controller auch einen AT89C51 verwenden, also wenn man die Pinbelegung anpasst, oder muss da mehr gemacht werden? Grüße
hallo @blicknix Siehe mal unter http://www.ic-proc.com ich bin sicher, der war auch für den 2051,wenn auch nicht gelistet. Ich hatte damals gamailt und eine Antwort bekommen. Ich hoffe,ich finde das mal wieder. auch im eigenen Interesse. Es ging mit einem ganz simplen Adapter direkt an der seiellen Schnittstelle. zum programmieren nutzt der Programmer die 12 der Schnittstelle und deren Handshakeleitungen. Es sind nur weinige diskrete Bauteile erforderlich. Allerdings wird hier nicht In System Programmiert. hav a fun! gruß Andreas
dbollivo wrote: > Hallo, > > habe vor geraumer Zeit auch ein einfaches Testboard gebaut und das > Ganze etwas aufbereitet und für den Einstieg verpackt. Vielleicht kann > ja jemand was damit anfangen: www.dominik-bollivo.de -> Grundausstatung > Hardware Ich hab mir gerade mal dieses Projekt angeschuat und würde das Board auc gerne als Grundlage für ein eigenes Board. Nur, welches IC nehm ich am Besten als IC3 in der Spannungsversorgung? Danke
Als Spannungsregler würd ich nen 7805 nehmen, der liefert die benötigten 5V. Was ich aber noch nicht weiss, oder einfach nur übersehen habe, was sollen die Abkürzungen FPSEN und FRES? Klar, das ist malen nach zahlen -> einfach entsprechend verbinden, aber das allein ist ja nicht Sinn der Sache.
Hallo, @neugierigere bastler: In der HW-Doku gibt's auch 'ne Stückliste: LM7805 o.ä. Falls Dein Board etwas mehr Strom braucht, währe evtl. auch ein LM1084/LM1085 mit 5V empfehlenswert. Vorsicht jedoch, die LM10xx haben eine andere Pinbelegung als der LM78xx! @bonito : FPSEN und FRES sind lediglich Labelbezeichner, die könnten auch abc und xyz heissen. Die Leitungen werden benötigt, um die ISP-Programmierung über RS232/FLIP zu ermöglichen. Dabei wird der Controller über FRES und FPSEN in den Bootloder gebracht. Über den Bootloader kann dann der interne Flash des Controllers beschrieben werden. Gruß, dbollivo
Nabend Herr Bollivo, Sie hier!? Schöne Grüße in den Südwesten der Republik! Bis demnächst Detlef S.
So, das Board ist jetzt fast fertig. Ich hab die Schaltung aber noch um ein 2 zeiliges LCD, nen Poti und jede Menge Schalter und LEDs erweitert. Ein DAC kommt dann auch noch dazu und mein "rundrumsorglosexperimnetierboard" wäre dann fertig. Das ist aber bei ner Rasterkarte einiges mehr an arbeit als erwartet, aber Spass machts natürlich trotzdem. Ich benutze jetzt nen AT89C51CC03UA, aber welche µCs von den Atmel 8051ern kann ich eigentlich noch im gleichen Sockel betreiben? Danke MFG Christof
Argh, wie schliet man den Quarz an richtig an? Der hat für mich 2 Pins "zu viel". Hilfe..... Danke MFG Christof
Hallo, was für 'nen Quarz hast Du denn verwendet? Evtl. 'nen ""Quarzoszillator"? Grüße, dbollivo
Ja, ist ein Oszillator. Der hier: http://www.reichelt.de/?SID=29QCueWKwQAR0AAAezi6g5126e90179ab097746e30ed8cdcc0557;ACTION=3;LA=4;GROUP=B42;GROUPID=3174;ARTICLE=13695;START=0;SORT=preis;OFFSET=1000 MFG Christof
Hallo, Oszi: Pin 14 an +5V, Pin 7 an Masse/GND evtl. zwischen den beiden noch 'nen 100nF Blockkondensator (kann [fast] nie schaden), Pin 8 geht an XTALA1 des 8051 (Pin 19 beim 40/DIL). Pin XTALA2 des 8051 bleibt unbeschaltet, Grüße, dbollivo
Hm, leider ist am Quarz keine Beschriftung, und ich kenn die Dinger bisher nur aus der Theorie. Nur einen Hinweis seh ich, und zwar ist an einem Pin der Fuß nicht mit Kunststoff vergossen, bei den anderen schon. MFG Christof
...das ist dann der Pin 7. Wenn Du den Oszi von oben betrachtest (Beinchen also unsichtbar nach unten) und den Pin 7 unten rechts hast, dann ist Pin 1 unten links, Pin 8 oben rechts und Pin 14 oben links. Pin 1 ist manchmal ein Enable-Eingang, die sind aber meistens so beschaltet, dass sie offen (unbeschaltet) den Oszillator arbeiten lassen.
Hallo, Siehe R**chelt-Foto: Auf dem Gehäuse ist vor der Frequenz-Angabe ein Punkt. Der markiert Pin 1. Zusätlich gibts vermutlich am Gehäuse eine spitze, nicht abgerundete Ecke , ebenfalls Pin 1. Zählweise ist dann wie bei enem DIL14-IC (einfach die fehlenden Pin's dazu denken). Der Pin, der mit dem Gehäuse verbunden ist ist höchstwarscheinlich Pin 7 (Masse) Grüße, dbollivo
Hi, entschuldigt,wenn ich den Thread wieder hochhole,aber ich hab ein Problem mit dem Entwicklungsboard. Ich hab das Entwicklungsboard oben aufgebaut,mit ein paar Änderungen an den I/O Ports. Jetzt tritt bei mir aber das Problem auf,dass ich den Port P0.7 nicht setzen kann(um beispielweise eine LED anzusteuern). Komischerweise funktioniert kann ich den I/O Port aber "löschen"(auf 0 setzen). Für das Setzen verwende ich den Befehl SETB P0.7 bzw CLR P0.7 fürs "löschen". RxD und TxD hab ich bereits (nach dem Pegelwandler) kurzgeschlossen und es kommen die selben Zeichen zurück,die gesendet werden. Die Frequenz des Schwingquarzes kann ich leider nicht kontrollieren,da ich kein Oszi besitze. Hat jemand eine Idee? Danke! Bernhard
Bernhard wrote: > Jetzt tritt bei mir aber das Problem auf,dass ich den Port P0.7 nicht > setzen kann(um beispielweise eine LED anzusteuern). Komischerweise > funktioniert kann ich den I/O Port aber "löschen"(auf 0 setzen). Das ist nicht komisch sondern das typische Verhalten eines opendrain Ausgangs ohne Pullup. Schau bitte mal in ein 8051-Datenblatt. LEDs schaltet man beim 8051 gegen VCC. Peter
Hi Peter, für mich war das ein komisches Verhalten,aber es beruhigt mich,dass der µC nicht kaputt ist. Ich glaub ich weiß was du meinst mit den Pullup Widerständen. Ich werd das morgen ausprobieren. Besten Dank! Bernhard
Hallo miteinander, ich habe ein Problem. Leider habe ich bei Reichelt den AT89C51 24PI bestellt, nun kann ich ihn ja garnicht so einfach programmieren. Da ich die Teile für 5 Kollegen auch bestellt habe ist es schlecht mit zurück schicken. Wie kann ich den ... 24PI programmieren, was muss ich an der Schaltung ändern? Gruß Martin
guest schrieb: > Wie kann ich den ... 24PI programmieren, Steht im Datenblatt. guest schrieb: > was muss ich an der Schaltung > ändern? Da ist nicht einfach mal schnell durch 2 Bauteie anlöten erledigt. Hier ist eine Schaltung für einen passenden Parallelport-Programmer. Schau dir das mal an, ob es den Aufwand wert ist. Am besten du wirfst die µCs in die Ecke und besorgst dir welche mit Bootloader. Zum Beispiel AT89C51RC2.Gibts bei R noch als PLCC.
Vielen Dank für die schnelle Antwort. Ich habe gleich ein paar bei CSD bestellt. Nochmal eine kurze Frage zum Programmieren. So wie im Schaltplan verschaltet kann ich den 8051 mit Flip über die RS232 programmieren, ohne weitere Leitungen zusätzlich anschliessen zu müssen (Miso, Mosi, etc.)? Gruß Martin
Hallo zusammen, durch Mister Google bin ich auf diesn Thread gekommen. Ich bekomme auch den "Timeout error" und verwende den 89C51ED2. Leitungen passen, und wenn ich ein U schicke bekomme ich es auch zurück(wobei ich alle zeichen zurück bekomme egal was ich tippe). mir ist aufgefallen das wenn der jumper für PSEN nicht gesteckt ist, ich dort 1,6V habe. hat das jemand schonmal gesehen? kommt jemand auf meinen fehler mit den timeout? gruß Tobi
Schaltplan? Den Timeout bekommst Du in FLIP, wenn die Baudrate z.B. zu hoch eingestellt ist. Der ED2 hat ja einen Bootloader für die serielle Schnittstelle (also nicht MOSI/MISO...) und mit einem 12MHz-Quarz bekommt der maximal 38400 Baud auf die Reihe. Sicherheithalber lieber bei 9600 bleiben. Also PSEN auf 0, dann Reset, dann Connect in FLip. tschuessle Berhard
Schaltung hab ich die von peter. Mein Quartz ist 12 MHz. Meine ersten Versuche waren mit 9600Baud. dann hab ich im Datenblatt nachgeschaut welche Baudraten er automatisch erkennt und diese ausprobiert. wie gesagt, die 1,6V an PSEN finde ich merkwürdig
Hi, ich habe das im Anhang gezeigte Board, das kann ich prima über sie serielle Schnittstelle (Download) programmieren. Aber wenn ich dann mit Hyperterminal kommunizeren möchte muss ich das Kabel an RS 232 anschliessen oder die Reset-leitung kappen. geht das nicht auch so, dass man Programmieren und Kommunizeren über eine leitung abwickelt? Gibts da vielleicht eine idee? Danke schonmal (K)einstein
also ich hab meinen fehler gefunden. hatte meine schalter vertauscht resat war bei mir PSEn und andersrum.
Hi, @ b_spitzer Hatte ich auch gedacht, aber so einfach ist es leider nicht. Der Controller bleibt stehen, wenn Hyperterminal versucht zu verbinden. Gruß (K)einstein
Was macht Dein Programm?? Lasse mal an kritischen Stellen eine LED toggeln, dann sollte das was einzukreisen sein. Wenn Du die printf() oder putchar() in C verwendest, dann muss TI bei der Initialisierung gesetzt sein. Also SCON auf 0x52 und nicht auf 0x50. Putchar (das auch von printf() genutzt wird) wartet, bis TI wieder auf '1' ist. Daher muss das (im Gegensatz zu den meisten ASM-Beispielen) gesetzt werden. Bei weiteren Fragen bitte Quellcode der Initialisierung sowie der Datenübertragung. Weitere Idee... hast du in Hyperterm die Flußsteuerung aus- und das lokale Echo eingeschaltet?? tschuessle Bernhard
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.