avrdude-dev
[Top][All Lists]
Advanced

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

Re: [avrdude-dev] Documentation for libavrdude?


From: Jason von Nieda
Subject: Re: [avrdude-dev] Documentation for libavrdude?
Date: Mon, 25 Jan 2010 09:46:31 -0800

Thanks Doug, that's very helpful info. I'll put together some notes
once I've finished my conversion and perhaps we can combine our work
into a basic set of docs for this.

Thanks,
Jason


On Mon, Jan 25, 2010 at 2:13 AM, Doug Brown <address@hidden> wrote:
> Hi Jason,
>
> Funny you should ask; I asked the same thing a few weeks back. The
> answer was that there is no developer documentation (above the
> developers' corner), but that I am - or anyone else is - welcome to
> write notes. This is totally premature, but you're welcome to have a
> look at the notes I've taken so far (please note that they're _very_
> _very_ rough - not meant for anyone's eyes bar mine; I'll try to fix
> them up sometime soon).
>
> https://docs.google.com/fileview?id=0B-SPNJUFjfPrYmNkNjJmNDItNDBhNi00OWQyLTliYjgtZWI0Mjg1MGQyZDBl&hl=en
>
> 2010/1/25 Jason von Nieda <address@hidden>:
>> Hi all,
>>
>> I am the author of AVRFuses ( http://www.vonnieda.org/AVRFuses ) which
>> is currently a Mac GUI frontend to command line avrdude. I am in the
>> process of converting my program to work directly with libavrdude.
>>
>> I'm wondering if there's any documentation for the public interface of
>> libavrdude? I've spent some time searching and reading quite a bit of
>> the source but I am confused about some aspects.
>>
>> Ideally, I would like to know the sequence of calls for the following
>> kind of behavior:
>>
>> connect to programmer
>>  set device type
>>  enable programming
>>  disable programming
>>  optionally loop to set device type with different device
>> close programmer
>>
>> It's not clear to me if this kind of behavior is defined. I'm also not
>> clear on what certain generic functions are intended to do. For
>> instance, I notice that in main.c pgm->enable() is called before the
>> part is initialized. Does this indicate that pgm-enable() is intended
>> to enable something about the programmer and not specifically enable
>> programming mode?
>>
>> I have found that calling functions in the following order allow me to
>> do what I want to do on my AVRISP-mkII but I don't know if this would
>> be true on other programmers:
>> pgm->open()
>> pgm->enable()
>>  pgm->initialize()
>>  pgm->disable();
>>  optionally loop to pgm->initialize() with a different part
>> pgm->powerdown()
>> pgm->disable()
>> pgm->close()
>>
>> But that seems somewhat out of order to me.
>>
>> So, I guess to sum up, if there's any documentation that would be
>> great or if not, if someone could define for me what the intent of the
>> following functions is that would be awesome:
>> pgm->open
>> pgm->enable
>> pgm->initialize
>> pgm->disable
>> pgm->powerup
>> pgm->powerdown
>> pgm->close
>> pgm->setup
>> pgm->teardown
>> pgm->program_enable
>>
>> Finally, if the idea of being connected to the programmer while
>> changing the target device is flawed, I'd love to hear that too :)
>>
>> Thanks,
>> Jason von Nieda
>>
>>
>> _______________________________________________
>> avrdude-dev mailing list
>> address@hidden
>> http://lists.nongnu.org/mailman/listinfo/avrdude-dev
>>
>




reply via email to

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