Hallo! Ich programmiere momentan einen ATMEGA168 und habe auf dem Komplette PortD eine LCD liegen. Nun benötige ich aber die Timer Ausgänge die auf diesem Port liegen nutzen. Gibt es die möglichkeit diese auf Andere Pins zu legen? Ach ja, ich verwende auch die anderen Timerausgänge an PortB, also kann ich die nicht nehmen. Hätte da vllt jemand eine Idee?? Danke schon mal im vorraus.
Wieso steuerst Du nicht das LCD mit einem Schieberegister an? Im 4-Bit Modus brauchst Du dann fürs LCD 3 Portausgänge.
ISR schreiben und die Pins dort manuell verstellen. Es gibt keine Möglichkeit, die Timer-Pins umzuleiten.
>Gibt es die möglichkeit diese auf Andere Pins zu legen?
Nicht einfach so.
Ich gehe mal davon aus, dass du ein PWM ausgeben willst.
Dabei sind die OC-Ausgänge fest mit dem Portpins verdrahtet.
Das kann man auch nicht ändern. Lösen kann man das Problem nur dadurch,
dass man die gewünschten Ausgänge in der Software schaltet.
Besser wäre es wohl, die LCD-Pins auf verschiedene Ports zu verteilen -
LCDs werden in der Regel sehr langsam angesprochen, und sofern die
Ansteuersoftware dafür selbst geschrieben ist, sollte man sie
entsprechend anpassen können.
Mmmhhh ich seh schon das Problem. Da ich die Ansteuerung für das LCD nicht selbst geschrieben habe, sondern eine Vorlage verwendet habe bekomme ich da nun Probleme dies in eine Routine zu verpacken. Hab es auch schon Probiert das Lcd dann auf den PortC zu legen, aber leider ohne erfolg. Nach dem anpassen des Codes hat sich nichts getan und der Code lande im Abfalleimer. Dann werd ich mir wohl selbst eine LCD Ansteuerung schreiben müssen. Dachte es geht einfacher....
Die LCD-Library von Peter Fleury lässt sich sehr leicht auf andere Ports umstellen. Es ist auch kein Problem die Steuersignale quer über mehrere Ports und verschiedene Pins zu verteilen.
jack wrote: > Wieso steuerst Du nicht das LCD mit einem Schieberegister an? > Im 4-Bit Modus brauchst Du dann fürs LCD 3 Portausgänge. Im 8-Bit Modus auch (74HC164 hat ja 8 Ausgänge). Peter
Eine LCD ist ja nicht so'n Ding. Ein paar Befehle in eine paar Register. Pf
Ja, klar hab's schon verstanden. Schieberegister abschalten, dann hat man ja immer noch Clock und Daten frei.
@jack. >> Wieso steuerst Du nicht das LCD mit einem Schieberegister an? >> Im 4-Bit Modus brauchst Du dann fürs LCD 3 Portausgänge. >Im 8-Bit Modus auch (74HC164 hat ja 8 Ausgänge). >Wie wird dann RS und EN angesteuert? >Ich komm nicht drauf ;-) Ganze einfach. 1 Pin für den Takt am 164er 1 Pin für E am LCD 1 Pin für Daten am LCD UND RS, damit hat man quasi 9 Datenpins ;-) MFG Falk P.S. OK, lesen geht dann nicht, aber wer macht das schon.
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.