avrdude-dev
[Top][All Lists]
Advanced

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

[avrdude-dev] Documentation for libavrdude?


From: Jason von Nieda
Subject: [avrdude-dev] Documentation for libavrdude?
Date: Mon, 25 Jan 2010 01:36:14 -0800

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




reply via email to

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