Ik heb vorige week een AVR Microcontroller Programmer aangeschaft
Dit is de "AvrUsb500 SMD programmer USB, stk500 V2 compatible".

http://shop.tuxgraphics.org/electronic/microcontroller.html?id=210e85#…

Het werkt, ik kan er mee flashen onder AVR STUDIO, ondanks dat krijg ik een "Warning"

Dit komt van het "command output" scherm:

Reading FLASH input file.. OK
Entering programming mode.. OK!
Erasing device.. OK!
Programming FLASH .. OK!
Reading FLASH .. OK!
WARNING: FLASH byte address 0x0000 is 0xFF (should be 0x08).. FAILED!
Leaving programming mode.. OK!

Ik heb HELP doorgespit maar kan niets vinden waardoor deze melding wordt veroorzaakt.

Wie kan mij hierbij helpen......

Dit is mijn broncode, zit hier de fout ?


.include "m8def.inc"	;Atmega8 definitie bestand

.def LedBits		= r16	;Register r16 - r19
.def W1			= r17
.def W2			= r18
.def Wachtlussen	= r19

.org 0x0000             ;Code laad adres 0x0000

	rjmp	Init		;Maak een Relatieve sprong naar Init Label

wachten:
	ldi	W1,0
	ldi	W2,0			
	ldi	Wachtlussen,100
wacht_lus:
;	dec	W1
;	brne	wacht_lus
	dec	W2
	brne	wacht_lus
	dec	Wachtlussen
	brne	wacht_lus
	ret

Init:
	ldi	r16,low(RAMEND)	;Init STACK
	out	SPL,r16
	ldi	r16,high(RAMEND)
	out	SPH,r16

	ldi	r16,0b11111111
	out	DDRD,r16	;(PORTD Data direction Register)

	ldi	LedBits,0b00000001

Start:                   
	out	PORTD,LedBits
	rcall	wachten
	rol	LedBits
	rjmp	Start

Dit eerste projectje van mij werkt verder prima, het is een looplicht met 8 ledjes.

groeten Siekmanski

Heeft niet met de code te maken, het programma is niet goed in het flashgeheugen geschreven. Normaalgesproken wordt het flash eerst gewist (erase) en geschreven (program) en dan nog een keer gelezen en vergeleken met de data die je wilde schrijven. De waarschuwing zegt dat deze vergelijking mislukt is. Blijft de foutmelding komen als je het nog eens probeert? Alles goed vastgemaakt /gesoldeerd?

De programmer heb ik kant en klaar aangeschaft, moet dus wel goed zijn....
Ik krijg de melding telkens weer ook als ik het 2 keer achter elkaar naar het flashgeheugen heb geschreven.

Even goed de kabeltjes controleren, hij krijgt non-stop 1'en of 0'en terug door een aansluitfoutje.

gewoon een keer zelf de erase, program, verify achter elkaar klikken.. vaak is dat het probleem..

Opgelost ! denk ik ?

Wanneer pin 7 (VCC) en 8 (GND) zijn aangesloten is alles O.K.

I.P.V. "WARNING: FLASH byte address 0x0000 is 0xFF (should be 0x08).. FAILED!"
krijg ik nu: "FLASH contents is equal to file.. OK"

Ik dacht dat er geen spanning op hoefde te staan tijdens het flashen.

Zonder spanning werkt het flashen wel alleen wel met een warning dus....
Laat ik de spanning op de ATMEGA8 staan krijg ik dus geen warning.

Is dit allemaal wel correct ?

Ja de AVR heeft wel spanning nodig om geprogrammeerd te worden. De programmer zorgt hier niet voor, zoals de meeste in circuit programmers is deze gemaakt om de te programmeren wanneer deze al in de schakeling zit.

Wel vaag trouwens dat erase en program wel als OK komen, dat wordt dus blijbkaar totaal niet gecontroleerd of dat wel lukt (door de programmer).

[Bericht gewijzigd door madwizard op ]

Reading FLASH .. OK!

En dit is magic!

Ik heb deze opzet gebruikt en i.p.v. PC5 heb ik PD0-7 gebruikt voor de 8 leds

http://members.home.nl/siekmanski/avr_basis.gif

Verklaart dit misschien dat het flashen wel gaat zonder dat ik de spanning heb aangesloten
op pin 7 en 8 ?

Madwizard, ben ik jou wel eens tegen gekomen op het MASM forum ?

Op 20 april 2007 18:09:46 schreef Siekmanski:
Verklaart dit misschien dat het flashen wel gaat zonder dat ik de spanning heb aangesloten
op pin 7 en 8 ?

Misschien dat de programmer gewoon altijd een OK status aan AVR Studio doorgeeft of het nou gelukt is of niet. Of dat de AVR gedeeltelijk gevoed wordt via de programmeerpinnen, lezen kost aanzienlijk minder stroom dan flash schrijven. In ieder geval altijd een voeding aansluiten, voeden via I/O pinnen kan zelfs schadelijk zijn.

Madwizard, ben ik jou wel eens tegen gekomen op het MASM forum ?

Dat kan heel goed, ben daar al een aardige tijd niet meer actief maar ben nog moderator geweest in het begin (tenminste op asmcommunity, niet Hutch's masm forum). M'n nickname is Thomas.

Hallo Henry S.

Here is the MAGIC....

http://members.home.nl/siekmanski/AVR_warning.jpg

Wat is uw ISP frequentie? dat is heel belangrijk!!!

MvG

Robin

Hallo Robin

De ISP frequentie is 230.4 KHz

Ik denk dat het nu wel opgelost is.
Met de spanning erop werkt alles goed.
Ik kan nu ook de fuses instellen.
Ik dacht dat ik al 2 atmega's naar de eeuwige jachtvelden
had gestuurd maar ze werken nu weer.

Bedankt voor de ondersteuning.

Groeten Siekmanski

Op 20 april 2007 19:16:51 schreef robint91:
Wat is uw ISP frequentie? dat is heel belangrijk!!!

Huh?! Ik wist niet eens dat je zoiets kon instellen...

Op 20 april 2007 18:42:51 schreef Siekmanski:
Hallo Henry S.

Here is the MAGIC....

[afbeelding]

De magic is dat iets gelezen wordt zonder voedingsspanning ;)

Het programma denkt het te lezen, 0x0000 is op zich geldig, en dat wordt het programma wakker...

WARNING: FLASH byte address 0x0000 is 0xFF (should be 0x08).. FAILED!

Op 20 april 2007 19:37:28 schreef pros:
[...]
Huh?! Ik wist niet eens dat je zoiets kon instellen...

Jawel, dat ding is intelbaar. Voor een AVR op 32Khz kan je bv geen 230.4 KHz gebruiken.FISP moet 1/4 zijn van de "avr clock".

Robin