DEM 16217 mit ATmega16 4bit

OP #4173345
Lesenswert?

Hallo zusammen,


ich benötige eure Hilfe, da ich hier nicht weiter komme.

Folgende Aufgabe:

Ich möchte ein DEM 16217 2x16 an einen ATmaga 16 anschließen und mit in 
beiden Zeilen Statusdaten ausgeben.
Ich habe mir jetzt mal die lcd-routines.c und die lcd-routinges.h 
nachprogrammiert (siehe 
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung)

Alle Pins des Displays sind an PortA


Hier auf der Homepage gibt es ja den code
1
#include <avr/io.h>
2

3
#include "lcd-routines.h"
4

5
int main(void)
6
{
7
  // Initialisierung des LCD
8
  // Nach der Initialisierung müssen auf dem LCD vorhandene schwarze Balken
9
  // verschwunden sein
10
  lcd_init();
11
  
12
  // Text in einzelnen Zeichen ausgeben
13
  lcd_data( 'T' );
14
  lcd_data( 'e' );
15
  lcd_data( 's' );
16
  lcd_data( 't' );
17
  
18
  // Die Ausgabemarke in die 2te Zeile setzen
19
  lcd_setcursor( 0, 2 );
20
  
21
  // erneut Text ausgeben, aber diesmal komfortabler als String
22
  lcd_string("Hello World!");
23
  
24
  while(1)
25
  {
26
  }
27
  
28
  return 0;
29
}

nun zu meinem Problem:

das Display zeigt mir gar nichts an. Muss ich am Code noch was 
verändern, damit des Display DEM16217 die Daten ausgibt? Ich verwende 
das AVR Studio 6.

Danke

Gruß
#4173389
Lesenswert?

Hi,

ich glaub es wäre sinnvoll alle pins von port a auf ausgang zu setzen, 
sprich:
DDRA = 0xff;

Ich hab bisher noch kein lcd programmiert von daher weiß ich nicht ob 
das schon in der funktion lcd_init dabei ist.
ich hab die frage grad nur gesehen und dachte ich schau mir das mal an.

Viele Grüße
Leo
OP #4173396
Lesenswert?

Ja die obere Zeile zeigt 16 Kästchen. Ich habe ein Poti an pin 3, damit 
ich den Kontrast auch verändern kann. ich habe das Display auch schon 
mit einer anderen Code programmiert. Da hat es super funktioniert. Bin 
jetzt etwas verwundet warum es hier nicht geht.


Hab es vorhin jetzt auch mal mit 8 Datenbits versucht, da zeigt das 
Display aber auch nicht an.

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