Gast
#182497
Hi Leute
sorry das ich nun schon wieder mit dem lcd anfange, aber ich bekomm es
einfach nicht hin.
Ausgangssituation:
ATMEL STK 500
AT MEGA 32
44780 Kompatiebles LCD
Pinbelegung:
PortB stk500 44780 LCD Controller
PB4 ------------- PIN4 (RS)
PB6 ------------- PIN5 (R/W)
PB5 ------------- PIN6 (E)
NC ------------- PIN7 (DB0)
NC ------------- PIN8 (DB1)
NC ------------- PIN9 (DB2)
NC ------------- PIN10 (DB3)
PB0 ------------- PIN11 (DB4)
PB1 ------------- PIN12 (DB5)
PB2 ------------- PIN13 (DB6)
PB3 ------------- PIN14 (DB6)
das LCD soll im 4 Bit Modus betrieben werden
der Compiler compiliert alles schön keine Probleme wenn ich auf
programm gehe, flackert das lcd kurz auf, aber sonst passiert nix.
ich habe in der lcd.h den atmega 32 folgender maßen ergänzt:
#elif defined(_AVR_AT90S4414_) || defined(_AVR_AT90S8515_) ||
defined(_AVR_ATmega64_) || \
defined(_AVR_ATmega8515_)|| defined(_AVR_ATmega103_) ||
defined(_AVR_ATmega128_) || \
defined(_AVR_ATmega161_) || defined(_AVR_ATmega162_) ||
defined(_AVR_ATmega32_)
das ist doch inordnung oder ?
mein PIN Definitionen in der lcd.h sehen so aus:
#define LCD_PORT PORTB /**< port for the LCD lines */
#define LCD_DATA0_PORT LCD_PORT /**< port for 4bit data bit 0 */
#define LCD_DATA1_PORT LCD_PORT /**< port for 4bit data bit 1 */
#define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */
#define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */
#define LCD_DATA0_PIN 4 /**< pin for 4bit data bit 0 */
#define LCD_DATA1_PIN 5 /**< pin for 4bit data bit 1 */
#define LCD_DATA2_PIN 6 /**< pin for 4bit data bit 2 */
#define LCD_DATA3_PIN 7 /**< pin for 4bit data bit 3 */
#define LCD_RS_PORT LCD_PORT /**< port for RS line */
#define LCD_RS_PIN 0 /**< pin for RS line */
#define LCD_RW_PORT LCD_PORT /**< port for RW line */
#define LCD_RW_PIN 1 /**< pin for RW line */
#define LCD_E_PORT LCD_PORT /**< port for Enable line */
#define LCD_E_PIN 2 /**< pin for Enable line */
ist das richtig ?
was habe ich falsch gemacht ?
habe mehr mals Beispiele aus dem Forum ausprobiert und weiß absolut
nicht mehr weiter.