mirror of
https://github.com/mariusgreuel/avrdude.git
synced 2025-09-27 14:35:27 +00:00
patch #7165 Add support for bitbanging GPIO lines using the Linux sysf GPIO interface
* doc/avrdude.texi,avrdude.1: added doc for linuxgpio * avrdude.conf.in: added template for linuxgpio programmer * config_gram.y: pin numbers restricted to [PIN_MIN, PIN_MAX] * pindefs.h: added PIN_MIN, PIN_MAX, removed unused LED_ON/OFF * configure.ac: configure option enable-linuxgpio, print of enabled options * linuxgpio.[ch]: new source for linuxgpio programmer * Makefile.am: added linuxgpio to sources list * pgm_type.c: added linuxgpio to programmer types list git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1132 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
@@ -168,6 +168,18 @@ attached to a physical serial port. Connecting to a serial port
|
||||
emulated on top of USB is likely to not work at all, or to work
|
||||
abysmally slow.
|
||||
|
||||
If you happen to have a Linux system with at least 4 hardware GPIOs
|
||||
available (like almost all embedded Linux boards) you can do without
|
||||
any additional hardware - just connect them to the MOSI, MISO, RESET
|
||||
and SCK pins on the AVR and use the linuxgpio programmer type. It bitbangs
|
||||
the lines using the Linux sysfs GPIO interface. Of course, care should
|
||||
be taken about voltage level compatibility. Also, although not strictrly
|
||||
required, it is strongly advisable to protect the GPIO pins from
|
||||
overcurrent situations in some way. The simplest would be to just put
|
||||
some resistors in series or better yet use a 3-state buffer driver like
|
||||
the 74HC244. Have a look at http://kolev.info/avrdude-linuxgpio for a more
|
||||
detailed tutorial about using this programmer type.
|
||||
|
||||
The STK500, JTAG ICE, avr910, and avr109/butterfly use the serial port to communicate with the PC.
|
||||
The STK600, JTAG ICE mkII, AVRISP mkII, USBasp, avrftdi (and derivitives), and USBtinyISP
|
||||
programmers communicate through the USB, using @code{libusb} as a
|
||||
|
Reference in New Issue
Block a user