Hallo, ich bin neu hier und heiße Sarah und komme aus der Nähe von Mainz. Auch Frauen intressieren sich ja manchmal für Basteleien und ich habe jetzt zum ersten mal ein Projekt vor Augen, dass den Einsatz eines Mikrocontrollers erfordert. Ich möchte zuächst einmal grob gesagt einem beliebigen LCD, zum Beispiel 2-zeilig 16/20/24 Zeilen, beibringen bestimmte verschiedene Texte auszugeben. Die meisten LCD´s sind ja HD44780-kompatibel und viele lassen sich auch für Anfänger recht gut über die Druckerschnittstelle programmieren. Wenn ich mir jetzt ein LPT-geeignetes LCD hole und es programmiert habe - kann man es dann später auch unabhängig vom PC betrieben, das heißt in ein Gehäuse einbauen? Das ist nämlich der eigentliche Sinn der Aktion - ich möchte nicht einfach nur Texte vom PC aus ausgeben lassen sondern wenn alles so läuft wie ich mir das denke Texte aufgrund von einer bestimmten Anzahl analoger Impule ausgeben. Mag sein dass ich etwas unbedarft an die Sache rangehe aber vielleicht ist ja jemand hier der mich versteht und einen Einkaufstipp für ein bestimmtes LCD geben kann? Wenn es jemand interessiert kann ich auch ausführlich erklären, was ich bauen will. Liebe Grüße und Danke fürs Lesen, Sarah
> Auch Frauen intressieren sich ja manchmal für Basteleien Viel zu selten, wenn du mich fragst :P > Wenn ich mir jetzt ein LPT-geeignetes LCD hole und es programmiert habe - kann man es dann später auch unabhängig vom PC betrieben, das heißt in ein Gehäuse einbauen? Selbstverständlich geht das. Wie du schon geschrieben hast, eignet sich dann für die Ansteuerung ein Mikrocontroller. Im Falle des HD44780 kann ich dir die LCD Lib von Peter Fleury empfehlen, damit hast du einen schnellen, problemlosen Start und siehst sofort ob es funktioniert. Falls du dann doch ins Detail gehen willst kannst du deine eigene schreiben ;-) > sondern wenn alles so läuft wie ich mir das denke Texte aufgrund von einer bestimmten Anzahl analoger Impule ausgeben. Kommt auf die Menge an Text an, für Ebooks bräuchtest du einen datenflash ;-) Prinzipiell aber problemlos möglich > vielleicht ist ja jemand hier der mich versteht und einen Einkaufstipp für ein bestimmtes LCD geben kann? Jedes mit hd44780 geht da einfach. Bei den großen (4-zeiligen) hast du eine leicht kompliziertere Ansteuerung (zwei Enable-Leitungen). Hab meine Displays bei ebay geholt, aber das bieten auch alle gängigen Elektronikversender mit an (da wirst du bestimmt eh bestellen, wenn du mikrocontroller machen willst) > Wenn es jemand interessiert kann ich auch ausführlich erklären, was ich bauen will. Ach, Interesse ist immer da, wenn es sich um Projekte von anderen handelt, sei es um sie zu bestaunen oder um selbst Inspirationen zu sammeln Phantomix
>Die meisten LCD´s sind ja >HD44780-kompatibel und viele lassen sich auch für Anfänger recht gut >über die Druckerschnittstelle programmieren. Also "programmieren" lassen sie sich nicht, Du gibst über die Parallel- Schnittstelle lediglich Befehle aus, die vom LCD ausgeführt werden. Wenn Du Texte unabhängig vom PC anzeigen willst, brauchst Du einen Mikrcontroller, der dem LCD sagt. was es tun soll.
Hi, okay das geht ja sehr schnell hier. Ich möchte es kurz gesagt so machen: Es kommt ein anologes Signal - z.B. 1 Spannungsimpuls --> Textausgabe A neue Messung, Display wieder blank, Analoges Signal 2 Spannungsimpulse --> Textausgabe B Und so weiter... Der Text ist übrigens auf einen Satz beschränkt. Gibt es denn ein LCD wo ein Mikrokontroller integriert ist? Wie würde es dann funktionieren? Den Controller einmal über den PC programmieren, das heißt ihm beibringen was bei einem Impuls für eine Ausgabe erfolgen soll und dann getrennt davon nutzen? Geht das überhaupt so wie ich mir das denke? Liebe Grüße und Danke, Sarah
Sarah Hof wrote: > Wenn ich mir jetzt ein > LPT-geeignetes LCD hole und es programmiert habe - kann man es dann > später auch unabhängig vom PC betrieben, das heißt in ein Gehäuse > einbauen? Am LPT habe ich noch kein LCD angeklemmt. Aber an nen MC (z.B. ATmega48) geht das sehr gut: http://www.mikrocontroller.net/attachment/30300/lcd_drv.zip Programm ist in C geschrieben (WINAVR). Peter
Hi, ja sorry wegen der Ausdrucksweise okay ich meinte ja auch nicht das LCD direkt an den LPT hängen ich meinte halt generell die LCD´s wo immer dabei steht "für den Betrieb am LPT geeignet". Phantomix ich kann dir leider keine Nachricht schicken - würde dir gerne verraten was ich vorhabe... . :-) LG, SArah
> Ich möchte es kurz gesagt so machen: > 1 Spannungsimpuls --> Textausgabe A > 2 Spannungsimpulse --> Textausgabe B Das klingt mir zwar eher nach einem digitalen Signal, aber naja, ein ADC lässt sich dafür auch benutzen. Interessanter ist die Frage nach der Auswertung. Du musst im Prinzip Spannungspulse zählen, und hinterher den zugehörigen Text auswählen. Das ist der leichte Teil. Der schwierigere Teil ist die Beachtung der Timings. Du musst definieren, wie lang ein Spannungspuls ist, und wie viel Zeit zwischen zwei Pulsen vergehen darf (damit dein Controller weiß, was der letzte Impuls war, damit er mit dem Zählen aufhört) > Gibt es denn ein LCD wo ein Mikrokontroller integriert ist? Der hd44780 ist im prinzip schon ein Controller, lässt sich aber leider nicht programmieren, darum nimmt man einen zweiten, z.B. ATMega88 - der hätte für deine Zwecke noch genug Reserven. Was du also suchst ist ein kleines Board mit Mikrocontroller, wo du das Display anschließen kannst (Empfehlung: Flachbandkabel, Wannenstecker), und natürlich: > Den Controller einmal über den PC programmieren > und dann getrennt davon nutzen? Genau, zum programmieren brauchst du wiederum eine Schnittstelle zum PC. Wenn du einen seriellen Port hast bietet sich dieser an, ansonsten gibt es auch Lösungen für USB (kompliziert) oder parallel(geht so) http://www.roboternetz.de/wissen/index.php/Programmer
...um es mal kurz zu machen: Ohne einen uC wird das als "stand alone" nix. Was musst du jetzt tun? Dir das Tutorial hier anschauen, einen Atmega8 o.ä. + notwendiges Brimborium besorgen und dann mal loslegen. "C" kannst du? Es "gibt" auch soclhe Displays mit Prozessor zu kaufen, die man in einem gewissen umfang "einfach per RS232" programmierne kann - aber da lassen sich meistens nur best Texte bei einem Pegel an Pin 1-5 ausgeben. Sehr unflexibel. Ergo: Selbst ist die Frau! Klaus.
So, nun habe ich mich hier auch einmal registriert, und kann Nachrichten empfangen :-)
So wie Sarah hab ich auch angefangen. LCD (4x20) wie bei jaLCD oder ähnlichem am LPT angeschlossen. Dann hab ich mittels QBasic das LCD zum laufen gebracht. Mittlerweile hänge ich die Dinger an einen µC und lass den Stand-Alone laufen (z.B. als Spannungs / Temperaturanzeige). Das ändern der Ansteuerung geht am PC halt einfacher (man muss nichts irgendwo rüberladen). Wichtig ist nur die Steuerleitungen im 8-Bit-Mode nicht vergessen anzusteuern!
Hallo nochmal, cool und was genau soll ich mir jetzt kaufen? Es gibt so viele verschiedene ATMEGA8´s gibt es da keine Komplettlösung als Bausatz oder sowas die ihr mir empfehlen könnten? Selbst zusammenlöten und bestücken ist nicht so das Problem aber eine komplette Schaltung ausdenken - das kann ich nicht. :-( Liebe Grüße, SArah
Bastler wrote: > Wichtig ist nur die Steuerleitungen im 8-Bit-Mode nicht vergessen > anzusteuern! wieso? kannste auch im 4bit mode betreiben. Vorteil: Mehr freie Pins am AVR Nachteil: langsamer (wobei sich das eh nicht bemerkbar macht)
@Sarah besitzt du denn schon ein Programmiergerät für die ATMega MCUs? Ansonsten wäre vielleicht das Atmel STK500 für dich interessant. Grüße, Alex
Hi, nee sowas habe ich nicht wie gesagt bin ich totaler Anfänger im Bereich MC. Ich lese mich gerade erst ein... . Viele Grüße, Sarah
Wie viel du jetzt am Anfang ausgeben willst hängt davon ab, wie viel du später noch mit Mikrocontrollern machen willst sag ich mal so. Am Anfang brauchst du ein kleines, billiges board, das dir aber Zugriff auf alle Pins des Controllers gewährt. da gabs doch schon fertige zum bestellen... muss mal link suchen.
Hi Sara, am besten Du nimmst ein ATMega Entwicklungsboard von Pollin. Die sind recht günstig und für die ersten Schritte mehr als ausreichend. Ich hab vor einigen Monaten ähnlich angefangen. Displays kriegste bei Pollin auch für ein paar €. Board, ATMega32 und Display für ca. 20€ plus Versand. Und dann musst Du nur noch etwas löten können. Meld Dich ruhig, wenn Du fragen hast, ich hab mir am Anfang hier auch viel Unterstützung geholt und auch bekommen. Gruß netdieter
vom Preis her würde sogar etwas von myAVR passen :) Gibs auch fertig mit LCD Modul usw. Einfach mal Nachgucken: www.myavr.de
Okay dann besorge ich mir erstmal zum rumstochern und ausprobieren von pollin das Board mit der Nummer 810 038 und am besten 2-3 Controller Nummer 100 910 - ist der denn geeignet für meine Zwecke? Danke für EUre Hilfe, Sarah
Sarah Hof wrote: > Okay dann besorge ich mir erstmal zum rumstochern und ausprobieren von > pollin das Board mit der Nummer 810 038 und am besten 2-3 Controller > Nummer 100 910 - ist der denn geeignet für meine Zwecke? > > Danke für EUre Hilfe, > Sarah Das ist der ATMega8 und der tuts wahrscheinlich für Deine Zwecke. Wenn Du aber gleich den ATMega32 nimmst, dann hast Du für so ziemlich alle Zwecke den richtigen µC. Wegen des Unterschieds müsste man jetzt mal die Datenblätter vergleichen.
Hallo Sara, @Dieter Engelhardt >> am besten Du nimmst ein ATMega Entwicklungsboard von Pollin. Die sind >> recht günstig und für die ersten Schritte mehr als ausreichend. habe so ein Board fertig gebaut getestet + Atmega8 (oder eventuell ein 16) + ein LCD mit Hintergrundbeleuchtung. für 22 Euro + Versand würde ich es verkaufen Gruß Eduard
Hallo. Ich bin auch neu in der AVR-Branche. Mache momentan eine Studienarbeit und habe ein kleines Problem mit dem Ansteuern von einem Display (TC1602E-01 von Pollin). Habe zwar schon alle Foren durchkämmt, komme aber nicht auf die Lösung. Ist für Profis wahrscheinlich auch trivial. Benutze die Routinen von Peter Fleury. Jetzt mein Problem. Wenn ich das Display an PortA anschließe wie standartmäßig im Quellcode angegeben läuft es einwandfrei. Schließe ich es genauso an PORTD und ändere im Header PORTA nach PORTD, kommt nichts mehr am Display an. Woran kann das liegen? Hier der Quellcode der Header: #define LCD_PORT PORTA /**< port for the LCD lines */ #define LCD_DATA0_PORT LCD_PORT /**< port for 4bit data bit 0 */ #define LCD_DATA1_PORT LCD_PORT /**< port for 4bit data bit 1 */ #define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */ #define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */ #define LCD_DATA0_PIN 0 /**< pin for 4bit data bit 0 */ #define LCD_DATA1_PIN 1 /**< pin for 4bit data bit 1 */ #define LCD_DATA2_PIN 2 /**< pin for 4bit data bit 2 */ #define LCD_DATA3_PIN 3 /**< pin for 4bit data bit 3 */ #define LCD_RS_PORT LCD_PORT /**< port for RS line */ #define LCD_RS_PIN 4 /**< pin for RS line */ #define LCD_RW_PORT LCD_PORT /**< port for RW line */ #define LCD_RW_PIN 5 /**< pin for RW line */ #define LCD_E_PORT LCD_PORT /**< port for Enable line */ #define LCD_E_PIN 6 /**< pin for Enable line */ geänderter Quellcode: #define LCD_PORT PORTD /**< port for the LCD lines */ #define LCD_DATA0_PORT LCD_PORT /**< port for 4bit data bit 0 */ #define LCD_DATA1_PORT LCD_PORT /**< port for 4bit data bit 1 */ #define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */ #define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */ #define LCD_DATA0_PIN 0 /**< pin for 4bit data bit 0 */ #define LCD_DATA1_PIN 1 /**< pin for 4bit data bit 1 */ #define LCD_DATA2_PIN 2 /**< pin for 4bit data bit 2 */ #define LCD_DATA3_PIN 3 /**< pin for 4bit data bit 3 */ #define LCD_RS_PORT LCD_PORT /**< port for RS line */ #define LCD_RS_PIN 4 /**< pin for RS line */ #define LCD_RW_PORT LCD_PORT /**< port for RW line */ #define LCD_RW_PIN 5 /**< pin for RW line */ #define LCD_E_PORT LCD_PORT /**< port for Enable line */ #define LCD_E_PIN 6 /**< pin for Enable line */ und in der main: int main(void) { lcd_init(LCD_DISP_ON); lcd_clrscr(); lcd_puts("Test1\n"); lcd_puts("Test2"); while(1) { } } Wie gesagt, am PORTA funktioniert es einwandfrei und wenn ich es genauso an PORTD anschließe und den Quellcode auf PORTD ändere funktioniert es nichtmehr. Vielen Dank schonmal für eure Hilfe Gruß Jörg
Doch sehr interessant zu sehen, wie sich der Umgangston ändert wenn sich hier ein Weiblein herverirrt ^.^ P.s. Das ist nicht böse gemeint und würd mir wünschen es gäbe mehr Bastlerinnen ^^ Für den billigsten Einstieg in die µC Welt kann ich die Seite hier http://s-huehn.de/elektronik/avr-prog/avr-prog.htm empfehlen. Ich hab als ich angefangen hab zum auszuprobieren ob ich überhaupt in der Lage bin sowas zu machen den Programmer da zusammengelötet (naja Kunststück bei dem spartanischen Design ^^) und siehe da alles hat funktioniert. Wobei ich nur das STK500 empfehlen kann obwohl es etwas teuer ist, aber ich würde es nicht mehr hergeben. Gruß ErgoProxy
ErgoProxy: Man will sie ja nicht gleich vergraueln ;-)
Hi @ Jörg Irzinger (mecrumble) welcher Controller wird denn benutzt? @Phantomix (Gast) Wenn es der PortC wäre würde ich Dir zustimmen, aber nicht bei PortD. Gruß MISZOU
Huhu, also ich habe mir jetzt dieses Board und den Atmega-Controller bestellt. Hat jemand eine Empfehlung für ein LCD oder ist das im wesentlichen egal weil die Anschlüsse gleich belegt sind - hauptsache ich nehme eins basierend auf dem HD44780-Standard? Viele Grüße, Sarah PS: Wie funtioniert das hier mit PN´s? Werden die automatisch als e-Mail verschickt? Phantomix, du solltest nämlich eigentlich eine haben.
Sarah Hof wrote: > PS: Wie funtioniert das hier mit PN´s? Werden die automatisch als e-Mail > verschickt? Phantomix, du solltest nämlich eigentlich eine haben. Die PMs werden als Email an den Empfänger weitergeleitet. (You've got mail... ;-)
Sarah Hof wrote: > Huhu, > also ich habe mir jetzt dieses Board und den Atmega-Controller bestellt. > Hat jemand eine Empfehlung für ein LCD oder ist das im wesentlichen egal > weil die Anschlüsse gleich belegt sind - hauptsache ich nehme eins > basierend auf dem HD44780-Standard? > > Viele Grüße, > Sarah > Im Prinzip ist es wohl egal welches LCD Du nimmst. Kommt wohl eher auf Deine Anforderung an. Größe, Farbe, Backlight, ... Worauf ich achten würde, sind die Anschlüsse. Manche Displays kommen mit Folienleiter, z.B. das hier im Forum schon öfter erwähnte LCD-Modul WINTEK WD-C2704M-1HNN von Pollin. Wenn Du den Folienleiter durch ein Flachbandkabel ersetzen willst, dann ist das ein rechtes gefrickel beim Löten. Im Prinzip musst Du Dir das Datenblatt zu deinem Display anschauen und sehen ob Du damit klar kommst. Welchen ATMega hast Du Dir den jetzt bestellt?
Hoi Sarah, ich hab nicht jeden Post hier gelesen, aber so wie ichs verstanden habe, fängst du grade erst mit Mikrocontrollern an. Ich würde an deiner Stelle nicht gleich mit dem LCD anfangen, und zwar aus folgendem Grund: Du musst erst ja noch irgendwie den Mikrocontroller programmieren. Dazu benötigst du einerseits irgend eine Entwicklungsumgebung, andererseits ein passendes Programmiergerät. Dann musst du ja auch noch irgend eine Programmiersprache beherrschen, mit der du den MC programmierst. So ein Standard-Einsteigerprojekt ist ne blinkende LED. Versuch das mal, meinetwegen mit nem AVR (ansonsten kann ich 8051er auch sehr empfehlen, mit denen habe ich angefangen). Wenn du das erst mal fertig gebracht hast, weisst du dann auch sicher, dass dein Programmiergerät, Compiler und so weiter funktioniert. Und dann kommt das LCD. Anstatt am parallelen Port würde ich es aber lieber am seriellen anschliessen. Denn: der parallele Port ist relativ empfindlich. Ich hab zwar noch nie was zerschossen an meinem, aber anscheinend kann der kaputt gehen, wenn nur der geringste Kurzschluss auftritt. Das kann dann auch dein Mainboard grillen, weil der Controller für den parallelen Port im Chipset drin ist. Der serielle hingegen ist fast genauso einfach, und ausserdem Kurzschlussfest. Zudem hat er einen praktischeren Stecker (Parallelport ist ja recht klobig, ebenso das Kabel mit seinen vielen Adern). Für den seriellen Port benötigst du noch einen Pegelwandler wie den MAX232, da er mit +/-12V-Pegeln arbeitet. Viel Spass beim Basteln, Gruss
Tobias Plüss wrote: > Hoi Sarah, > ich hab nicht jeden Post hier gelesen, aber so wie ichs verstanden habe, > fängst du grade erst mit Mikrocontrollern an. > Ich würde an deiner Stelle nicht gleich mit dem LCD anfangen, und zwar > aus folgendem Grund: ...... Wenn Du Dir dann doch mal die mühe machen würdest den Thread zu lesen ... Das Board, von dem Sarah spricht, ist bereits ein Programmiergerät und verfügt über einer RS232-Schnittstelle. Das sie für die Programmierung auch noch die entsprechende Entwicklungsumgebung braucht ist doch wohl selbstverständlich, oder?
> Entwicklungsumgebung braucht ist doch wohl selbstverständlich, oder?
Natürlich. Aber nicht für jeden Controller gibts das fixfertig.
Ich musste mir meine selber basteln....
Hallo, danke für Eure Mühen. Ich kann zumindest sagen dass Grundkenntnisse in C vorhanden sind und ich zumindest erkennen kann was ein Programm macht bzw. machen sollen. Ich brauche für mein Projekt unbedingt ein LCD ich möchte ja etwas ausgeben. Mit blinkenden LED´s habe ich schon gearbeitet - zwar nicht indem ich Blinkfrequenzen usw. programmiert habe sondern als Test-LED und eben das will ich ja ersetzen durch eine Textausgabe auf einem LCD damit die Zählerei der Blinkimpulse durch den Anwender entfallen kann. KLingt wahrscheinlich komplizierter als es ist aber die Winterabende sind ja bekanntlich lang und dunkel und im Bastelkeller ist es dafür umso heller und wenigstens war. Viele Grüße, Sarah
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.