X-Git-Url: http://git.linex4red.de/pub/lufa.git/blobdiff_plain/e331b531c6e6d93eb0eee42b9002074e8090ad18..071e02c6b6b4837fa9cf0b6d4c749994e02638d7:/Projects/AVRISP-MKII/AVRISP.txt diff --git a/Projects/AVRISP-MKII/AVRISP.txt b/Projects/AVRISP-MKII/AVRISP.txt index 034df6717..6483cbd03 100644 --- a/Projects/AVRISP-MKII/AVRISP.txt +++ b/Projects/AVRISP-MKII/AVRISP.txt @@ -1,269 +1,269 @@ -/** \file - * - * This file contains special DoxyGen information for the generation of the main page and other special - * documentation pages. It is not a project source file. - */ - -/** \mainpage AVRISP MKII Programmer Project - * - * \section SSec_Compat Project Compatibility: - * - * The following list indicates what microcontrollers are compatible with this project. - * - * - Series 7 USB AVRs - * - Series 6 USB AVRs - * - Series 4 USB AVRs - * - Series 2 USB AVRs (8KB versions with reduced features only) - * - * \section SSec_Info USB Information: - * - * The following table gives a rundown of the USB utilization of this project. - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
USB Mode:Device
USB Class:Vendor Specific Class
USB Subclass:N/A
Relevant Standards:Atmel AVRISP MKII Protocol Specification
Usable Speeds:Full Speed Mode
- * - * \section SSec_Description Project Description: - * - * Firmware for an AVRStudio compatible AVRISP-MKII clone programmer. This project will enable the USB AVR series of - * microcontrollers to act as a clone of the official Atmel AVRISP-MKII programmer, usable within AVRStudio. In its - * most basic form, it allows for the programming of 5V AVRs from within AVRStudio with no special hardware other than - * the USB AVR and the parts needed for the USB interface. If the user desires, more advanced circuits incorporating - * level conversion can be made to allow for the programming of 3.3V AVR designs. - * - * This device spoofs Atmel's official AVRISP-MKII device PID so that it remains compatible with Atmel's AVRISP-MKII - * drivers. When prompted, direct your OS to install Atmel's AVRISP-MKII drivers provided with AVRStudio. - * - * Note that this design currently has the following limitations: - * - Minimum ISP target clock speed of 500KHz due to hardware SPI module prescaler limitations - * - No reversed/shorted target connector detection and notification - * - A seperate header is required for each of the ISP, PDI and TPI programming protocols that the user wishes to use - * - * On AVR models with an ADC converter, AVCC should be tied to 5V (e.g. VBUS) and the VTARGET_ADC_CHANNEL token should be - * set to an appropriate ADC channel number in the project makefile for VTARGET detection to operate correctly. On models - * without an ADC converter, VTARGET will report a fixed 5V level at all times. - * - * While this application can be compiled for USB AVRs with as little as 8KB of FLASH, for full functionality 16KB or more - * of FLASH is required. On 8KB devices, ISP or PDI/TPI programming support can be disabled to reduce program size. - * - * \section Sec_ISP ISP Connections - * Connections to the device for SPI programming (when enabled): - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
Programmer Pin:Target Device Pin:ISP 6 Pin Layout:
MISOPDO1
ADCx 1VTARGET2
SCLKSCLK3
MOSIPDI4
PORTx.y 2/RESET5
GNDGND6
- * - * In addition, the AVR's XCK pin will generate a .5MHz clock when SPI programming is used, to act as an external - * device clock if the fuses have been mis-set. To use the recovery clock, connect XCK to the target AVR's XTAL1 - * pin, and set the ISP programming speed to 125KHz or below. - * - * 1 Optional, see \ref SSec_Options section - for USB AVRs with ADC modules only \n - * 2 See AUX line related tokens in the \ref SSec_Options section - * - * \section Sec_PDI PDI Connections - * Connections to the device for PDI programming1 (when enabled): - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
Programmer Pin:Target Device Pin:PDI 6 Pin Layout:
Tx/Rx 2DATA1
ADCx 1VTARGET2
N/AN/A3
N/AN/A4
XCLKCLOCK5
GNDGND6
- * - * 1 Optional, see \ref SSec_Options section - for USB AVRs with ADC modules only \n - * 2 The AVR's Tx and Rx become the DATA line when connected together via a pair of 220 ohm resistors \n - * - * \section Sec_TPI TPI Connections - * Connections to the device for TPI programming1 (when enabled): - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
Programmer Pin:Target Device Pin:TPI 6 Pin Layout:
Tx/Rx 2DATA1
ADCx 1VTARGET2
XCLK 2CLOCK3
N/AN/A4
PORTx.y 3/RESET5
GNDGND6
- * - * 1 Optional, see \ref SSec_Options section - for USB AVRs with ADC modules only \n - * 2 The AVR's Tx and Rx become the DATA line when connected together via a pair of 220 ohm resistors \n - * 3 See AUX line related tokens in the \ref SSec_Options section - * - * \section SSec_Options Project Options - * - * The following defines can be found in this project, which can control the project behaviour when defined, or changed in value. - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
Define Name:Location:Description:
AUX_LINE_PORTMakefile CDEFSPORT register for the programmer's AUX target line. The use of this line varies between the programming protocols, - * but is generally used for the target's /RESET line. Ignored when compiled for the XPLAIN board.
AUX_LINE_PINMakefile CDEFSPIN register for the programmer's AUX target line. The use of this line varies between the programming protocols, - * but is generally used for the target's /RESET line. Ignored when compiled for the XPLAIN board.
AUX_LINE_DDRMakefile CDEFSDDR register for the programmer's AUX target line. The use of this line varies between the programming protocols, - * but is generally used for the target's /RESET line. Ignored when compiled for the XPLAIN board.
AUX_LINE_MASKMakefile CDEFSMask for the programmer's AUX target line. The use of this line varies between the programming protocols, - * but is generally used for the target's /RESET line. Must not be the AVR's /SS pin. Ignored when - * compiled for the XPLAIN board.
VTARGET_ADC_CHANNELMakefile CDEFSADC channel number (on supported AVRs) to use for VTARGET level detection, if NO_VTARGET_DETECT is not defined.
ENABLE_ISP_PROTOCOLMakefile CDEFSDefine to enable SPI programming protocol support. Ignored when compiled for the XPLAIN board.
ENABLE_XPROG_PROTOCOLMakefile CDEFSDefine to enable PDI and TPI programming protocol support. Ignored when compiled for the XPLAIN board.
NO_VTARGET_DETECTMakefile CDEFSDefine to disable VTARGET sampling and reporting on AVR models with an ADC converter. This will cause the programmer - * to report a fixed 5V target voltage to the host regardless of the real target voltage.
LIBUSB_FILTERDRV_COMPATMakefile CDEFSDefine to switch to a non-standard endpoint scheme, breaking compatibility with AVRStudio under Windows but making - * the code compatible with Windows builds of avrdude using the libUSB driver. Linux platforms are not affected by this - * option. - *
- */ +/** \file + * + * This file contains special DoxyGen information for the generation of the main page and other special + * documentation pages. It is not a project source file. + */ + +/** \mainpage AVRISP MKII Programmer Project + * + * \section SSec_Compat Project Compatibility: + * + * The following list indicates what microcontrollers are compatible with this project. + * + * - Series 7 USB AVRs + * - Series 6 USB AVRs + * - Series 4 USB AVRs + * - Series 2 USB AVRs (8KB versions with reduced features only) + * + * \section SSec_Info USB Information: + * + * The following table gives a rundown of the USB utilization of this project. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
USB Mode:Device
USB Class:Vendor Specific Class
USB Subclass:N/A
Relevant Standards:Atmel AVRISP MKII Protocol Specification
Usable Speeds:Full Speed Mode
+ * + * \section SSec_Description Project Description: + * + * Firmware for an AVRStudio compatible AVRISP-MKII clone programmer. This project will enable the USB AVR series of + * microcontrollers to act as a clone of the official Atmel AVRISP-MKII programmer, usable within AVRStudio. In its + * most basic form, it allows for the programming of 5V AVRs from within AVRStudio with no special hardware other than + * the USB AVR and the parts needed for the USB interface. If the user desires, more advanced circuits incorporating + * level conversion can be made to allow for the programming of 3.3V AVR designs. + * + * This device spoofs Atmel's official AVRISP-MKII device PID so that it remains compatible with Atmel's AVRISP-MKII + * drivers. When prompted, direct your OS to install Atmel's AVRISP-MKII drivers provided with AVRStudio. + * + * Note that this design currently has the following limitations: + * - Minimum ISP target clock speed of 500KHz due to hardware SPI module prescaler limitations + * - No reversed/shorted target connector detection and notification + * - A seperate header is required for each of the ISP, PDI and TPI programming protocols that the user wishes to use + * + * On AVR models with an ADC converter, AVCC should be tied to 5V (e.g. VBUS) and the VTARGET_ADC_CHANNEL token should be + * set to an appropriate ADC channel number in the project makefile for VTARGET detection to operate correctly. On models + * without an ADC converter, VTARGET will report a fixed 5V level at all times. + * + * While this application can be compiled for USB AVRs with as little as 8KB of FLASH, for full functionality 16KB or more + * of FLASH is required. On 8KB devices, ISP or PDI/TPI programming support can be disabled to reduce program size. + * + * \section Sec_ISP ISP Connections + * Connections to the device for SPI programming (when enabled): + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Programmer Pin:Target Device Pin:ISP 6 Pin Layout:
MISOPDO1
ADCx 1VTARGET2
SCLKSCLK3
MOSIPDI4
PORTx.y 2/RESET5
GNDGND6
+ * + * In addition, the AVR's XCK pin will generate a .5MHz clock when SPI programming is used, to act as an external + * device clock if the fuses have been mis-set. To use the recovery clock, connect XCK to the target AVR's XTAL1 + * pin, and set the ISP programming speed to 125KHz or below. + * + * 1 Optional, see \ref SSec_Options section - for USB AVRs with ADC modules only \n + * 2 See AUX line related tokens in the \ref SSec_Options section + * + * \section Sec_PDI PDI Connections + * Connections to the device for PDI programming1 (when enabled): + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Programmer Pin:Target Device Pin:PDI 6 Pin Layout:
Tx/Rx 2DATA1
ADCx 1VTARGET2
N/AN/A3
N/AN/A4
XCLKCLOCK5
GNDGND6
+ * + * 1 Optional, see \ref SSec_Options section - for USB AVRs with ADC modules only \n + * 2 The AVR's Tx and Rx become the DATA line when connected together via a pair of 220 ohm resistors \n + * + * \section Sec_TPI TPI Connections + * Connections to the device for TPI programming1 (when enabled): + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Programmer Pin:Target Device Pin:TPI 6 Pin Layout:
Tx/Rx 2DATA1
ADCx 1VTARGET2
XCLK 2CLOCK3
N/AN/A4
PORTx.y 3/RESET5
GNDGND6
+ * + * 1 Optional, see \ref SSec_Options section - for USB AVRs with ADC modules only \n + * 2 The AVR's Tx and Rx become the DATA line when connected together via a pair of 220 ohm resistors \n + * 3 See AUX line related tokens in the \ref SSec_Options section + * + * \section SSec_Options Project Options + * + * The following defines can be found in this project, which can control the project behaviour when defined, or changed in value. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Define Name:Location:Description:
AUX_LINE_PORTMakefile CDEFSPORT register for the programmer's AUX target line. The use of this line varies between the programming protocols, + * but is generally used for the target's /RESET line. Ignored when compiled for the XPLAIN board.
AUX_LINE_PINMakefile CDEFSPIN register for the programmer's AUX target line. The use of this line varies between the programming protocols, + * but is generally used for the target's /RESET line. Ignored when compiled for the XPLAIN board.
AUX_LINE_DDRMakefile CDEFSDDR register for the programmer's AUX target line. The use of this line varies between the programming protocols, + * but is generally used for the target's /RESET line. Ignored when compiled for the XPLAIN board.
AUX_LINE_MASKMakefile CDEFSMask for the programmer's AUX target line. The use of this line varies between the programming protocols, + * but is generally used for the target's /RESET line. Must not be the AVR's /SS pin. Ignored when + * compiled for the XPLAIN board.
VTARGET_ADC_CHANNELMakefile CDEFSADC channel number (on supported AVRs) to use for VTARGET level detection, if NO_VTARGET_DETECT is not defined.
ENABLE_ISP_PROTOCOLMakefile CDEFSDefine to enable SPI programming protocol support. Ignored when compiled for the XPLAIN board.
ENABLE_XPROG_PROTOCOLMakefile CDEFSDefine to enable PDI and TPI programming protocol support. Ignored when compiled for the XPLAIN board.
NO_VTARGET_DETECTMakefile CDEFSDefine to disable VTARGET sampling and reporting on AVR models with an ADC converter. This will cause the programmer + * to report a fixed 5V target voltage to the host regardless of the real target voltage.
LIBUSB_FILTERDRV_COMPATMakefile CDEFSDefine to switch to a non-standard endpoint scheme, breaking compatibility with AVRStudio under Windows but making + * the code compatible with Windows builds of avrdude using the libUSB driver. Linux platforms are not affected by this + * option. + *
+ */