PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Atmega 8 wird nicht vernünftig beschrieben



Wombatz
26.08.2011, 12:38
Hallo zusammen,

nachdem ich das Buch von Roland Walter bestellt, das Board zusammengelötet und nun geschafft habe über Bassom den ISP MKII zu integrieren, habe ich ein erneutet komisches Problem.
Die Fusebits würden auf Ext Crystal/Resonator High Freq.;Start-up time; 16K CK +4ms eingestellt, da ich einen Ext Crystal benutze.
Der MKII wird nun vom AVR STudio und BASCOM erkannt...soweit so gut.

Nun versuche ich ein Programm auf den Chip über Bascom zu bannen (3LED sollen leuchten).
Das Programm erkennt die Chip ID,und den AVRISP MK2.
Der Chip wird "erased" und anschließend mit 128bytes des Flashes beschrieben.

ABER:
Die Ports die als Ausgang fungieren sollten bleiben auf niedrigster Spannung...das heißt beim messen
ergibt es einen Wert von 0,13V!!!

An dem Code sollte es auch nicht liegen!
$regfile = "m8def.dat"
$crystal = 3686400
Ddrd = $b11100000
Portd = $b11111111
Do
Loop
End

Ich verstehe nicht, dass der Controller die angelegte Spannung nicht sauber durchschleift.
Ist es vielleicht eine falsche Einstellung der Kommunikation zw. MK2 und Controller???

Kampi
26.08.2011, 13:38
Wenn der Programmer den Controller erkennt usw. dann ist das Problem nicht der Programmer ;). Wenn der Chip erkannt wird dann stimmt die Kommunikation zwischen Chip und PC.
Was ich in deinem Programm jetzt sehe ist das du nur PinD.6 und PinD.7 als Ausgang deffiniert hast (Ddrd = $b11100000). Hast du mal diese Pins gemessen?

Wombatz
26.08.2011, 13:42
Ja habe ich ca. 0,24-0,3V... das ist ja das komische!!!!
Für mich ist das nicht erklärbar. da hier 5V anliegen sollten

Wombatz
26.08.2011, 13:50
Kann das daran liegen,dass der die EEP-Datei nicht findet??? Wenn ich auf flasch klicke, erscheint im log viewer unten:
Started
Elektor/MKII compatible programmer set
C:\Programme\....(der Pfad)\Beispiel1.BIN loaded 126 bytes into FLASH buffer
C:\Programme\....\Beispiel1.EEP not found
Was ist denn die EEP Datei???

Kampi
26.08.2011, 13:54
Das ist eine Datei die er beim kompilieren des Programmes erstellt soweit ich weiß.

Hubert.G
26.08.2011, 14:03
[An dem Code sollte es auch nicht liegen!
$regfile = "m8def.dat"
$crystal = 3686400
Ddrd = $b11100000
Portd = $b11111111
Do
Loop
End

[/QUOTE]
Ich kenne mich im BASCOM nicht gut aus, aber in den Beispielen steht immer:
Ddrd = &b11100000
Portd = &b11111111

Das *.eep-File wird ins EEPROM geschrieben.

Wombatz
26.08.2011, 14:03
OK jetzt wirds noch komischer

$regfile = "m8def.dat"
$crystal = 3686400


Ddrc = $b00000011
Portc = $b11111111

Do
Loop
End

Ich habe einfach mal die Ports getauscht.... an Port C.0 liegt 4,1V an
An Port C.1 liegt 0,1V an....
Das kann doch nicht sein

Wombatz
26.08.2011, 14:05
OK dann scheint Bascom nicht richtig zu compilieren, das die Datei in den EEPROM geschrieben werden sollte!!! Ist das richtig???

PicNick
26.08.2011, 14:17
Bitte schreib bei den Bit-Konstanten ein &
du hast überall "$" stehen.

Wombatz
26.08.2011, 16:06
Oh man....ihr seid die besten!!!

Vielen Dank!!!