DOGM132-5 Programmfehler?

OP #3364767
Hallo,

ich versuche gerade ein DOGM132-5 Grafikdisplay zu betreiben.
Da ich nicht ganz mit der Headerdatei erstellen klar gekommen bin habe 
ich nach einen vorhandenen Code gesucht.
Da habe ich diesen Thread gefunden:
Beitrag "Dogm-132-5 Probleme"

Jetzt habe ich diesen Code einmal eingegeben und versucht zu Compilieren 
und da kommt für mich eine Ziemlich unverständliche Fehlermeldung.
1
MacKinky:firmware xxxxxxxxxxxxx$ make
2
avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=atmega8 -c main.c -o main.o
3
main.c:8:1: warning: "F_CPU" redefined
4
<command line>:1:1: warning: this is the location of the previous definition
5
main.c: In function 'dogm132_spi_init':
6
main.c:62: warning: implicit declaration of function '_delay_us'
7
main.c: In function 'main':
8
main.c:117: error: 'DDRA' undeclared (first use in this function)
9
main.c:117: error: (Each undeclared identifier is reported only once
10
main.c:117: error: for each function it appears in.)
11
main.c:121: warning: implicit declaration of function 'dogm_home'
12
main.c:124: warning: implicit declaration of function '_delay_ms'
13
main.c:165:2: warning: no newline at end of file
14
make: *** [main.o] Error 1

Kann mir einer sagen was ich falsch mache?

Gruß
Der Error kommt durch die fehlende Inkludierung des AVR-IO-Headers 
zustande. Es fehlt auf jeden Fall noch:
1
#include <avr/io.h>

Warum das im verlinkten Beitrag fehlt ist mir nicht ganz klar, aber der 
Code ist imho eh nicht zur Nachahmung empfohlen.
OP
Ja da hast du recht, allerdings ist eine eigene Initialisierung zu 
schreiben für mich noch Neuland und hab es noch nicht wirklich hin 
bekommen. Darum hab ich ja gehofft, dass dieser Code funktioniert.

Habe gestern versucht eine Headerfile zu schreiben und mich dabei an dem 
Header des LC-Displays TC1602E von der Seite 
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung 
angelehnt. Ich habe dabei das Datenblatt 
https://www.sparkfun.com/datasheets/LCD/HD44780.pdf mit dem Header 
verglichen und fand es auch recht simple.
Aber bei dem versuch etwas eigenes für das DOGM132 zu schreiben bin ich 
wie gesagt bisher gescheitert.
OP
Ja die Initialisierungstabellen hab ich gesehen falls du die meinst?!
Aber der Robert Jähne aus dem anderen Thread hat mehr Definitionen 
getätigt, als dort offensichtlich stehen.
Das ist leider mein erstes mal, dass ich einer Initialisierung selber 
schreibe und ich weiß einfach nicht auf was ich da achten muss und was 
wichtig bzw. wie etwas geschrieben wird.

Ich werde nochmal versuchen das zu schreiben. Vielleicht funktioniert es 
ja iwie?!
Schreib dir eine ordentliche Ansteuerung des SPI und dann lass einfach 
die Sequenz aus dem Datenblatt drüber laufen, die ist schon richtig so.

Und vor allem, ignoriere den von dir verlinkten Code! Bei den wild 
verstreuten Delays und den sinnbefreiten Schleifen sieht man schon, dass 
da jemand ohne Plan wild drauf los geschrieben hat.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 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.