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 -"); } }
Hi, also bei JTAGEN ist ein Häckchen... wofür ist diese Fuse denn, kann ich die bedenkenlos setzen/nicht setzen ??
Janno S. wrote: > Hi, > > also bei JTAGEN ist ein Häckchen... > wofür ist diese Fuse denn, kann ich die bedenkenlos setzen/nicht setzen > ?? Das sollte im Datenblatt beschrieben sein! Lesen bildet... ...
Warum liest denn bloß keiner das Datenblatt? 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.
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... ;-) ...
@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 ;-)
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 ;)
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... ...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.