komischer Displaydefekt

Gast #515208
Lesenswert?

Hallo zusammen,
ich versuche ein Display (2x27 Zeichen) an PortC meines Atmega 16
zu betreiben.
An PortA, PortB und PortD läuft es astrein, nur an Port C will es nicht 
klappen, obwohl ich alles genauso angeklemmt habe.
Ich verwende die LCD-Treiber von Fleury und muss ja lediglich in der 
display.h folgendes ändern:
#define LCD_PORT         PORTC        /**< port for the LCD lines   */

dabei wird durch PORTA Port A ausgewählt.....
A,B,D gehen, aber C nicht und Port C verwende ich auch sonst nirgends im 
Programm....
Hier der Code:

#include <avr/signal.h>
#include <avr/io.h>
#include <stdint.h>
#include <stdlib.h>
#include "lcd.h"
#include <util/delay.h>


disp_init()
{
  lcd_init(LCD_DISP_ON);
  lcd_clrscr();
  lcd_gotoxy(0,1);
  lcd_puts("Ready");

  lcd_gotoxy(0,0);
}

void main(void)
{
  disp_init();

  while(1)
  {
    lcd_gotoxy(0,1);
    lcd_puts("- Joju Test -");
  }
}
#515223
Lesenswert?

jack wrote:
> Warum liest denn bloß keiner das Datenblatt?

Weil die Erfahrung lehrt, dass sich immer wieder Jemand findet, das das 
übernimmt und als mundgerechten Happen serviert... ;-)

> Wenn das Häkchen gesetzt ist, d.h. die Fuse programmiert ist, wird
> die JTAG Schnittstelle aktiviert. Der Port ist dann nicht in voller
> Breite
> nutzbar.

Petze...

Duck&wech... ;-)

...
Gast #515229
Lesenswert?

Nein nein nein,
nicht weil sich schon jemand findet, sondern weil ihr die profis hier 
seid. Wenn ich hätte selber danach suchen müssen, dann hätt das 
warscheinlich ne halbe ewigkeit gedauert, bis ich den fehler gefunden 
hätte. Ich wär ja niemals auf die Idee gekommen, den Fehler bei den 
Fuses zu suchen, geschweige denn im DB unter Portspezifikationen....
Ihr wusstet direkt, wo der Fehler zu suchen war !!


Aber habt vielen Dank, denn nun funktioniert es endlich !

Superspitzenklasse ;)
#515231
Lesenswert?

jack wrote:
> @Hannes
>
>>Weil die Erfahrung lehrt, dass sich immer wieder Jemand findet...
>
> Ich weiß, ich habs sogar selber mal geschrieben. Ich glaub ich bin zu
> müde ;-)

Sieh' es einfach als Scherz... (so war es auch gemeint)

Zurück zum Thema:

@Janno:

Falls Du Angst vor den Fuses hast (oder noch keine Ahnung) und 
(verständlicherweise) nicht unnötig daran herumspielen willst, man kann 
JTAG auch im Programmcode deaktivieren. Dazu muss man das Bit JTD in 
einem Steuerregister (dessen Name mir gerade entfallen ist) setzen. Da 
ist allerdings ein kleiner Trick dabei, der (wie könnte es anders sein) 
im Datenblatt genauestens beschrieben ist.

So, nun bin ich auch 'ne Petze...

...

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