HILFE LCD Anzeige (Programmierung wie im Tutorial)

Gast #971624
Lesenswert?

HI,
folgendes Problem.
Habe die LCD Anzeige exakt wie im AVRGCC Tutorial beschrieben 
angeschlossen und Programmiert.
Im Tutorial ist die Anzeige am PORTD des µC's angeschlossen. Das 
Funktioniert auch alles wunderbar.

Jetzt wollte ich die Anzeige in einer Schaltung an den PORTC anschließen 
(da ich den PORTD schon verwendet habe)habe die Portanschlüsse exakt wie 
im Tutorial beschrieben verwendet nur anstadt PD0-PD5 habe ich PC0-PC5 
verwendet und die folgenden Zeilen in der lcd-routines.h umgeschrieben

#define LCD_PORT      PORTC
#define LCD_DDR       DDRC
#define LCD_RS        PC4
#define LCD_EN        PC5

doch nun passiert nichts! mann sieht lediglich die beiden schwarzen 
Balken.

Die Schaltung habe ich durchgemessen, Fehlverdratung ist somit 
ausgeschlossen.

Falls das noch von Interesse ist, ich verwende einen ATmega32.

Ich geh mal davon aus das ich irgendwo noch was übersehen oder noch 
nicht richtig verstanden habe(sollte noch dazu erwähnen bin absoluter 
anfänger!!!)

bin für jede Hilfe dankbar


Original lcd-routines.h:

// Ansteuerung eines HD44780 kompatiblen LCD im 4-Bit-Interfacemodus
// http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
//
void lcd_data(unsigned char temp1);
void lcd_string(char *data);
void lcd_command(unsigned char temp1);
void lcd_enable(void);
void lcd_init(void);
void lcd_home(void);
void lcd_clear(void);
void set_cursor(uint8_t x, uint8_t y);

// Hier die verwendete Taktfrequenz in Hz eintragen, wichtig!

#define F_CPU 14745600

// LCD Befehle

#define CLEAR_DISPLAY 0x01
#define CURSOR_HOME   0x02

// Pinbelegung für das LCD, an verwendete Pins anpassen

#define LCD_PORT      PORTD
#define LCD_DDR       DDRD
#define LCD_RS        PD4
#define LCD_EN        PD5
// DB4 bis DB7 des LCD sind mit PD0 bis PD3 des AVR verbunden
Gast #971661
Lesenswert?

HI,
ersteinmal vielen vielen DANK!!!!!!!!!!!!!!!

nachdem ich den JTAG deaktieviert habe funktioniert es einwandfrei!

Allerdings verstehe ich nicht wirklich warum!!!! :-(


ne erklärung währ echt nett!!!

wie gesagt vielen vielen Dank!!!!!!!!!
Gast #971701
Lesenswert?

>Versuchst du deine mangelhaften orthographischen Fähigkeiten
Mein Gott, nimm mal den Stock aus Deinem Hintern, er freut sich halt 
dass es endlich funktioniert.

>durch den exzessiven Einsatz von Ausrufezeichen zu kompensieren?
Gott bist du ein Langweiler, und noch dazu einer mit einem 
einschläfernden Zwang zu Fremdwortern.

Gast:
Erst mal Glückwunsch. JTAG dient dazu um den Controller zu programmieren 
& zu debuggen. Wenn du über ISP programmierst (nehme ich an) brauchst du 
diese Schnittstelle nicht. Standardmäßig (neu) sind die Pins für JTAG an 
PORTD aber auf JTAG gestellt, und die "normale" funktion ist 
unterbrochen. Erst wenn du die Fuse JTAGEN löschst, ist JTAG deaktiviert 
und die Pins funktionieren wie gewollt.

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