Forum: Compiler & IDEs LED Routine bockt an 644P


von Sören T. (stimmy)


Lesenswert?

Hallo Leute,
ich versuche schon den Nachmittag lang an meinem 644P mein 
YM2004A(KS0066 bzw. HD44780) Display zu betreiben. An anderen 
Controllern lief es immer und aus Verzwieflung hatte ich es kurz am 
Arduino Uno, womit es sofort lief.

Die Belegung sieht folgendermaßen aus(Überprüft und mehrmals 
Durchgemessen):
1
D7 PC7
2
D6 PC6
3
D5 PC5
4
D4 PC4
5
E  PC3
6
RS PC2
7
------
8
RW GND

Ich benutze die in dem Tutorial vorgeschlagenen Routinen mit der 
Abänderung:
1
////////////////////////////////////////////////////////////////////////////////
2
// Pinbelegung für das LCD, an verwendete Pins anpassen
3
// Alle LCD Pins müssen an einem Port angeschlossen sein und die 4
4
// Datenleitungen müssen auf aufeinanderfolgenden Pins liegen
5
6
//  LCD DB4-DB7 <-->  PORTD Bit PD0-PD3
7
#define LCD_PORT      PORTC
8
#define LCD_DDR       DDRC
9
#define LCD_DB        PC4
10
11
//  LCD RS      <-->  PORTD Bit PD4     (RS: 1=Data, 0=Command)
12
#define LCD_RS        PC2
13
14
//  LCD EN      <-->  PORTD Bit PD5     (EN: 1-Impuls für Daten)
15
#define LCD_EN        PC3

In meiner Hauptfunktion rufe ich das Dispaly wie folgt auf:
1
  lcd_init();
2
  lcd_string("Test1234");

Es verschwinden aber noch nicht mal die beiden Balken auf dem Dsiplay.

Noch ne andere Frage: Wie kann es sein, dass ich obwohl ich die Datein 
lcd.h und lcd.c zu meinem Projekt als "Existing Item" hinzugefügt habe 
Fehlermeldungen bekomme, wenn ich #include "lcd.h" in die main.c 
einbinde?
Diese aber verschwinden wenn ich #include "lcd.c" schreibe?

Das gleiche habe ich mit meiner UART Lib, welche so auch funktioniert.

Normalerweise reicht dieses hinzufügen doch?!
(Zumindestens wenn man im normalen VS C++ programmiert)

von Stefan E. (sternst)


Lesenswert?

JTAG nicht deaktiviert?

von Sören T. (stimmy)


Lesenswert?

Vielen Dank!!!
Manchmal ist das aber mit den Fehlern auch zu Blöd!

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
Noch kein Account? Hier anmelden.