Effiziente ansteuerung HD44780

Gast #6118350
Lesenswert?

Hallo µC Gemeinde,

ich beschäftige mich für ein Projekt mit einem STM32 momentan mit der 
Ansteuerung von LCDs mit HD44780. Wie das Display an sich anzusprechen 
ist weiß ich und ich habe auch funktionierende Software dafür. 
Allerdings bitbangt diese die Pins. Jetzt habe ich mich gefragt ob es 
möglich ist das ganze etwas effizienter zu gestalten, vielleicht indem 
man eine der vielen integrierten Peripherien nutzt am besten noch unter 
Nutzung eines DMA.

Hat jemand so etwas schon einmal gemacht bzw. hat eine Idee wie man so 
etwas realisieren könnte?
Gast #6118354
Lesenswert?

Moin,

effizient, im Sinne von schneller, ist in diesem Zusammenhang wohl eher 
nicht gemeint.

Mit einem PCF8574 oder einem anderen I2C oder SPI Baustein kann man noch 
Leitungen einsparen.

Die Ansteuerung ist dann seriell mit 2 oder ein paar mehr Leitungen 
möglich.

Dann funktioniert auch DMA mit entsprechender Bremse.
Gast #6118445
Lesenswert?

Eigentlich ist das Display ja dazu vorgesehen, direkt am Datenbus der 
CPU zu hängen. Der ist aber nur noch bei sehr wenigen Mikrocontrollern 
herausgeführt und außerdem müsste man sie dazu ziemlich langsam takten 
(ich glaube es war ca. 1 MHz) - wer will das schon?

Das Bitbanging kostet nicht viel zeit, die notwendigen Delays zwischen 
den Kommandos sind eher schmerzhaft. Wenn du nicht willst, dass dein 
Programm bei jedem Display-Zugriff ins stocken gerät, musst du die 
Kommunikation entweder in eine Timer-ISR auslagern oder mit Multitasking 
arbeiten. In beiden Fällen brauchst du einen Puffer im RAM, wo der 
Display-Inhalt zwischengespeichert wird.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren