Gast
#259986
Ich stelle mein Problem einfach mal ein wenig klarer da: Ich benutze einen PIC18F2550, der direkt über USB gespeist wird. An PORTA hängen Reset, CS1, CS2, Enable, R/W und D/I des Displays. An PORTB hängt der Datenbus des Displays. An RC0 hängt über einen FET die Hintergrundbeleuchtung des LCD. Das ganze hängt an einem USB-Hub. Laut USB-Doku soll jeweils ein Einheitsstrom von 100mA pro Anschluss zur Verfügung stehen. Die Beleuchtung zieht zwar ~150mA, scheint aber tadellos zu funktionieren, ohne dass die Versorgungsspannung einbricht. Ein einfaches Programm, dass das Display blinken lässt, funktioniert erstklassig. Wenn ich nun auf die Idee komme, das Display nach dem Busy-Zustand abzufragen, scheint sich der PIC selbst zu resetten (Watchdog, Brown-Out, MCLR ausgeschaltet). Mir ist absolut schleierhaft, weshalb das passiert. In der Versorgungsspannung sehe ich keine Spitzen; der Oszillator scheint einzubrechen. Ich habe versucht, einen externen 40 MHz-Oszillator zu verwenden. Dabei sprang der PIC schlecht an. Mit einem 4 MHz-Quarz war das Ergebnis ähnlich. Jetzt nun, mit einem 16 MHz-Quarz läuft der PIC sauber, bis man das Display ansprechen möchte; auch erst dann, wenn man eine der beiden Chip-Select-Leitungen des Displays setzt. Gibt es vielleicht von Eurer Seite Tips, wie man soetwas am besten entstört? Ich denke mal, dass der DC/DC-Wandler des Displays und die Taktung des Displays selbst irgendwelche Störungen ausstrahlen. Kann es sein, dass man dies vielleicht noch zusätzlich extern speisen sollte? Vielen Dank im Voraus!