avrdude-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avrdude-dev] Win 32 port


From: Martin Thomas
Subject: Re: [avrdude-dev] Win 32 port
Date: Thu, 12 Feb 2004 18:27:23 +0100

> On Thursday 12 February 2004 15:51, Daniel Williamson wrote:
> > Hi Martin,
> >
> > I have eventually got back to processors and played with the native
> > win 32 port from the link you gave me.  I no longer get negative
> > times showing up but I still get errors.
> > A verify with the cygwin build also showed up errors and the board
> > wasn't working with known good software.
> 
> Would you please post the times needed for write and verify. This way 
> we can probably tell if Win2k behaves differently from WinXP.
> 
> > Here are a list of errors that I saw.  Note that I got multiples of
> > these errors and most of the time the mismatch was at 0x0200. 
> > Funny that it is always on a page boundary?
> 
> If writing of a page fails, than it is likely that verify fails on a 
> page boundary. However, I would like to analyse the error pattern in 
> greater detail. Would you please send the original .hex-file
> and the read-back contents of flash to my email-address (not to the 
> list).
> 
> Please use a large file for this.
> 
> > Occurence 1
> > avrdude: verifying ...
> > avrdude: verification error, first mismatch at byte 0x0000
> >          0x0c != 0x00
> > avrdude: verification error; content mismatch
> 
> This one is weird. I would have expected a 0xff ;-)
> 
> > Hope this helps.
> 
> We are getting close ;-)

Daniel,

Did you test the latest ("0.4") version of the W32 port? It still
needs testing but worked with my pony-stk200 PPI (W2k, 
P2/400, mega16, 14KB hex). There has been a problem with 
the delays. 
I don't know much about the correct timing with PPI interfaces 
but the problems is kind of solved by "defing": 
#define usleep(us) Sleep(us/1000*3)

I could not find a uSec resolution delay in the WIN32-API.
W32-Sleep gets the parameter in Milliseconds. But it seems to be
"too fast" doubeling was not enough, multiply by 3 worked
(flash and verify). I know: this is still no "clean" solution and
may slow down things where it's not needed.
In the "cywin-dll" code there is a workaround for
the missing usleep but I've disabled this the WIN32 port.
The "cygwin-dll" workaround also included a minimum delay
value which is not used in the W32-port. It might be just one
delay that is to short but I could not find the right one so
far.

A cleaner solution might be a delay-calibration on startup.
This might be a "nice" feature in the Linux/Unix version too.

If you havn't tried V0.4 please get it from:
http://www.siwawi.arubi.uni-kl.de/avr_projects/index.html#avrdudew32
and give it a try. Thanks

Martin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]