Gast
#4109001
Guten Tag! An einem Atmega8 betreibe ich ein 16x2 Zeilen Display mit HD44780-"kompatiblem" Controller. Sowohl Schreiben zum als auch Lesen (Busy Flag) vom Display funktionieren. Die Datenleitungen DB 0-7 sind direkt an Port D des Atmegas angeschlossen. Wenn ich nun fälschlicher Weise (per Software) sowohl Port D als auch die Datenleitungen des Displays auf Ausgang stelle, würde je nach gesetzten Levels ein recht hoher Strom fliessen. Das Enable-Signal müsste natürlich auch längere Zeit gehalten werden - so meine Überlegung. Da das Display-Datenblatt recht dünn ist, habe ich mir das HD44780-Datenblatt von Hitachi angesehen: https://www.sparkfun.com/datasheets/LCD/HD44780.pdf Auf Seite 54 unten (rechts) habe ich die Ausgangsstufe gefunden. Über die PMOS- bzw. NMOS-Transistoren wird der Ausgang auf Vcc bzw. GND geschaltet. Eine weitere Strombegrenzung scheint nicht integriert zu sein. Ist das Szenario so korrekt bzw. kann der AVR oder der Display-Controller in der Form mit fehlerhafter Software beschädigt werden? Falls ja, sollte man die Display-Datenleitungen lieber über Widerstände zur Strombegrenzung mit dem AVR verbinden? Ich würde jetzt eher auf die Strombegrenzung verzichten und auf korrekten Code achten. Das "Enable"-Signal dauert meist auch nur wenige Mikrosekunden, so dass man den Fehler vermutlich noch finden wird, bevor etwas Schaden nimmt. Aber wie macht man das in Anwendungen mit höherem Anspruch als meiner Bastelei? Danke schon einmal für eure Meinung und schönen Nachmittag! Frank