AVR-ctrl Demoprogramm fehler?

OP #1044248
Lesenswert?

Hallo!

Ich habe mir bei "http://www.mikrocontroller.com/de/avr-ctrl.php"; eine 
"AVR-Ctrl"-Platine bestellt, diese bestückt und da ich keine
Ahnung von der ganzen Materie habe, im Downloadbereich das Demo Programm 
"Demo1b" runtergeladen.
(Controller: Atmega32)
Weiters habe ich mir die neueste Version von WinAVR installiert, sowie 
PonyProg.

Als erstes habe ich natürlich versucht das Programm auf den Controller 
zu übertragen, und da ist auch schon mein Problem:

Überspiele ich die "AVRmain.hex" läuft alles einwandfrei.
Überspiele ich aber die "main.hex" flimmern nur ein Paar Buchstaben im 
Dislay, die vermuten lassen dass es ungefähr so was bedeuten sollte wie 
bei "AVRmain.hex".

Das wäre ja auch noch nicht so schlimm da ich ja nun weiß dass alles 
funktioniert, aber wenn ich das Programm umschreiben möchte

steht mir scheinbar nur die main-datei zur verfügung und selbst wenn ich 
nur text ändere passiert immer das was ich oben

beschrieben habe, flimmern!

wundert mich auch nicht denn wenn die Ursprungsdatei main.hex schon 
nicht funktioniert, warum sollte dann etwas anderes.

Hier jetzt meine Bitte:

kann das jemand nachvollziehen bzw. ausprobieren und mir dann bescheid 
geben.

Habe auch schon versucht mit einem kleinen Programm einfach alle PINs 
auf high zu setzten, und zwar so:

#include <avr/io.h>

int main (void)
{
 {
  DDRA = 0xff;
    PORTA = 0b11111111;

  DDRB = 0xff;
    PORTB = 0b11111111;

  DDRC = 0xff;
    PORTC = 0b11111111;

  DDRD = 0xff;
    PORTD = 0b11111111;
 }
}

Ich kanns einwandfrei copilieren und überspielen, aber passiert ist noch 
nichts, kein leuchten oder so?
mache ich einen sehr großen Fehler, oder wie müsste der Programmcode 
aussehen?
sollte ich überhaupt aufhören mit mikrocontrolllern zu experimentieren?
bitte bitte helft mir!!!

Georg
Gast #1044270
Lesenswert?

>steht mir scheinbar nur die main-datei zur verfügung und selbst wenn ich
>nur text ändere passiert immer das was ich oben
>beschrieben habe, flimmern!

So ein Display flimmert gerne wenn man sowas macht:

 while(1)
  {
    Lösche Display
    Schreibe Text
  }

Der Text ist gerade geschrieben und dann wird er
sofort wieder gelöscht und neu geschrieben, und wieder
gelöscht......
OP #1044311
Lesenswert?

@Holger:  es ist nicht so ein Flimmern wie du denkst, es schreibt statt 
"holger Buss menue Demo" abwechselnd alle buchstben auf einem Zeichen 
manchal auch auf zwei oder mehr oder überhaupt nur irgendwelche wirren 
zeichen wie Fragezeichen, pfeile und punkte.

@Sir alan Teplotaxl: bin dabei dauert aber noch kurz
Gast #1044339
Lesenswert?

>@Holger:  es ist nicht so ein Flimmern wie du denkst, es schreibt statt
>"holger Buss menue Demo" abwechselnd alle buchstben auf einem Zeichen
>manchal auch auf zwei oder mehr oder überhaupt nur irgendwelche wirren
>zeichen wie Fragezeichen, pfeile und punkte.

Das ist auch kein Wunder wenn ich mir den Quellcode ansehe ;)
Der ist von 2005. Delays mit for() Schleifen in lcd.c. Herzlichen
Glückwunsch. Das klappt bei einem optimierenden Compiler nie.

Gleich zurückschicken das Teil und Geld zurück verlangen.
OP #1044637
Lesenswert?

Guten Morgen!

JA also Pullup is dran und gegen Masse habe ich auch gemessen.

Also vielleicht mach ich bei der Programmierung einen Fehler:

Programmers Notepad (PN) -> Programm schreiben
Mfile -> Makefile erstellen mit den Parametern:
 - main file name - main
 - MCU-type - Atmega32
 - Pogrammer - dt006
 - Port - Lpt1
PN -> Main compilieren
Mikrocontroller an Pc anschließen und die Stromversorgung einschalten
Ponyprog - Hex-file auf controller schreiben
ISP Kabel abstecken und eventuell den controller nochmal aus und 
einschalten (wohl eher nur aus hoffnung hatte noch keinen erfolg damit)

Der Fehler muss doch irgendwo bei der Programmierung liegen, sonst würde 
doch das Demoprogramm auch nicht funktionieren oder?
OP #1045214
Lesenswert?

Hallo alle Zusammen!

nach langem Studieren der Schaltung und einem Geistesblitz habe ich das 
LED Array umgedreht und siehe da kaum ist es nicht in Sperrichtung 
eingebaut funktioniert alles so wie es sollte!! zumindest alle Ausgänge 
auf 1 oder 0 setzen.

Danke für eure Hilfe und einen schönen Abend
wünscht euch Georg

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