LCD auf untesch. Ports aufteilen / SPI Porterweiterung in C

Gast #46434
Lesenswert?
• ▲
▼
Hallo,

Ich würde gerne in dem Thread gleich zwei Fragen stellen:

1. LCD
Ich versuche einen Porterweiterung für meinen AVR zu realisieren.
Daneben möchte ich aber noch einen LCD display anschließen. Das Progamm
zum Ansteuern des LCD stammt von Peter Fleury
(http://www.mysunrise.ch/users/pfleury/avr-software.html#examples).
Leider muss man laut lcd.h alle LCD Leitungen auf einen PORT lassen. In
diesem Fall bleibt mir aber nur noch der PORTB des ATMEGA8 für den LCD
übrig. Nun ist das Problem, dass sich eben auf PORTB der SPI befindet,
welches sich ideal zum Ansteuern der Schieberegister für die
Porterweiterung eignen würde.

Meine Ideen wären:
1. Schiebereigister per Software steuern...
2. ... eleganter wäre aber die LCD-Ports aufzuteilen (keine Ahnung
wie)

Das ist meine Frage: Wie kann ich das Programm von Peter so
modifizieren, dass ich wenigstens die  RS, RW und E Anschlüsse auf

unteschiedliche Ports legen kann?



2. SPI

http://www.mikrocontroller.net/attachment.php/30856/SPI_74HC595.pdf
Hat jemand zufällig eine Codeschnipsel in C, wie man diese Schaltung
über den SPI ansteuert?

Danke und mfg
Zoltan
Gast #46435
Lesenswert?
• ▲
▼
Um meine LCD library möglichst kompakt zu machen, habe ich alle 7 LCD
Signale auf einen Port gelegt.

Meine Library kann aber leicht auf andere Ansteuerungsvarianten, z.B.
SPI, I2C, andere Pin-Belegung angepasst werden, indem die Routinen
lcd_write() und lcd_read() angepasst werden.
Gast #46436
Lesenswert?
• ▲
▼
Hallo Peter,

ich versuche grad Deine Code für mich anzupassen.  Das habe ich schon
gedacht, dass am lcd_write() /read() liegt. Ich habe es versucht
anzupassen, aber es funktioniert (noch) nicht. Ich habe alles mit //ZZZ
markiert, da wo ich Veränderungen vorgenomen habe.
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 23 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.