📄 avrdude.conf
字号:
# $Id: avrdude.conf.in,v 1.105 2006/09/19 22:27:30 joerg_wunsch Exp $## AVRDUDE Configuration File## This file contains configuration data used by AVRDUDE which describes# the programming hardware pinouts and also provides part definitions.# AVRDUDE's "-C" command line option specifies the location of the# configuration file. The "-c" option names the programmer configuration# which must match one of the entry's "id" parameter. The "-p" option# identifies which part AVRDUDE is going to be programming and must match# one of the parts' "id" parameter.## Possible entry formats are:## programmer# id = <id1> [, <id2> [, <id3>] ...] ; # <idN> are quoted strings# desc = <description> ; # quoted string# type = par | stk500 | stk500v2 | stk500pp | stk500hvsp | stk500generic |# avr910 | butterfly | usbasp |# jtagmki | jtagmkii | jtagmkii_isp; # programmer type# baudrate = <num> ; # baudrate for avr910-programmer# vcc = <num1> [, <num2> ... ] ; # pin number(s)# reset = <num> ; # pin number# sck = <num> ; # pin number# mosi = <num> ; # pin number# miso = <num> ; # pin number# errled = <num> ; # pin number# rdyled = <num> ; # pin number# pgmled = <num> ; # pin number# vfyled = <num> ; # pin number# ;## part# id = <id> ; # quoted string# desc = <description> ; # quoted string# has_jtag = <yes/no> ; # part has JTAG i/f# devicecode = <num> ; # deprecated, use stk500_devcode# stk500_devcode = <num> ; # numeric# avr910_devcode = <num> ; # numeric# signature = <num> <num> <num> ; # signature bytes# chip_erase_delay = <num> ; # micro-seconds# reset = dedicated | io;# retry_pulse = reset | sck;# pgm_enable = <instruction format> ;# chip_erase = <instruction format> ;# chip_erase_delay = <num> ; # chip erase delay (us)# # STK500 parameters (parallel programming IO lines)# pagel = <num> ; # pin name in hex, i.e., 0xD7# bs2 = <num> ; # pin name in hex, i.e., 0xA0# serial = <yes/no> ; # can use serial downloading# parallel = <yes/no/pseudo>; # can use par. programming# # STK500v2 parameters, to be taken from Atmel's XML files# timeout = <num> ;# stabdelay = <num> ;# cmdexedelay = <num> ;# synchloops = <num> ;# bytedelay = <num> ;# pollvalue = <num> ;# pollindex = <num> ;# predelay = <num> ;# postdelay = <num> ;# pollmethod = <num> ;# mode = <num> ;# delay = <num> ;# blocksize = <num> ;# readsize = <num> ;# hvspcmdexedelay = <num> ;# # STK500v2 HV programming parameters, from XML# pp_controlstack = <num>, <num>, ...; # PP only# hvsp_controlstack = <num>, <num>, ...; # HVSP only# hventerstabdelay = <num>;# progmodedelay = <num>; # PP only# latchcycles = <num>;# togglevtg = <num>;# poweroffdelay = <num>;# resetdelayms = <num>;# resetdelayus = <num>;# hvleavestabdelay = <num>;# resetdelay = <num>;# synchcycles = <num>; # HVSP only# chiperasepulsewidth = <num>; # PP only# chiperasepolltimeout = <num>;# chiperasetime = <num>; # HVSP only# programfusepulsewidth = <num>; # PP only# programfusepolltimeout = <num>;# programlockpulsewidth = <num>; # PP only# programlockpolltimeout = <num>;# # JTAG ICE mkII parameters, also from XML files# allowfullpagebitstream = <yes/no> ;# enablepageprogramming = <yes/no> ;# idr = <num> ; # IO addr of IDR (OCD) reg.# rampz = <num> ; # IO addr of RAMPZ reg.# spmcr = <num> ; # mem addr of SPMC[S]R reg.# eecr = <num> ; # mem addr of EECR reg.# # (only when != 0x3c)## memory <memtype># paged = <yes/no> ; # yes / no# size = <num> ; # bytes# page_size = <num> ; # bytes# num_pages = <num> ; # numeric# min_write_delay = <num> ; # micro-seconds# max_write_delay = <num> ; # micro-seconds# readback_p1 = <num> ; # byte value# readback_p2 = <num> ; # byte value# pwroff_after_write = <yes/no> ; # yes / no# read = <instruction format> ;# write = <instruction format> ;# read_lo = <instruction format> ;# read_hi = <instruction format> ;# write_lo = <instruction format> ;# write_hi = <instruction format> ;# loadpage_lo = <instruction format> ;# loadpage_hi = <instruction format> ;# writepage = <instruction format> ;# ;# ;## If any of the above parameters are not specified, the default value# of 0 is used for numerics or the empty string ("") for string# values. If a required parameter is left empty, AVRDUDE will# complain.## NOTES:# * 'devicecode' is the device code used by the STK500 (see codes # listed below)# * Not all memory types will implement all instructions.# * AVR Fuse bits and Lock bits are implemented as a type of memory.# * Example memory types are:# "flash", "eeprom", "fuse", "lfuse" (low fuse), "hfuse" (high# fuse), "signature", "calibration", "lock"# * The memory type specified on the avrdude command line must match# one of the memory types defined for the specified chip.# * The pwroff_after_write flag causes avrdude to attempt to# power the device off and back on after an unsuccessful write to# the affected memory area if VCC programmer pins are defined. If# VCC pins are not defined for the programmer, a message# indicating that the device needs a power-cycle is printed out.# This flag was added to work around a problem with the# at90s4433/2333's; see the at90s4433 errata at:## http://www.atmel.com/atmel/acrobat/doc1280.pdf## INSTRUCTION FORMATS## Instruction formats are specified as a comma seperated list of# string values containing information (bit specifiers) about each# of the 32 bits of the instruction. Bit specifiers may be one of# the following formats:## '1' = the bit is always set on input as well as output## '0' = the bit is always clear on input as well as output## 'x' = the bit is ignored on input and output## 'a' = the bit is an address bit, the bit-number matches this bit# specifier's position within the current instruction byte## 'aN' = the bit is the Nth address bit, bit-number = N, i.e., a12# is address bit 12 on input, a0 is address bit 0.## 'i' = the bit is an input data bit## 'o' = the bit is an output data bit## Each instruction must be composed of 32 bit specifiers. The# instruction specification closely follows the instruction data# provided in Atmel's data sheets for their parts.## See below for some examples.### The following are STK500 part device codes to use for the# "devicecode" field of the part. These came from Atmel's software# section avr061.zip which accompanies the application note# AVR061 available from:## http://www.atmel.com/atmel/acrobat/doc2525.pdf##define ATTINY10 0x10#define ATTINY11 0x11#define ATTINY12 0x12#define ATTINY15 0x13#define ATTINY13 0x14#define ATTINY22 0x20#define ATTINY26 0x21#define ATTINY28 0x22#define ATTINY2313 0x23#define AT90S1200 0x33#define AT90S2313 0x40#define AT90S2323 0x41#define AT90S2333 0x42#define AT90S2343 0x43#define AT90S4414 0x50#define AT90S4433 0x51#define AT90S4434 0x52#define ATMEGA48 0x59#define AT90S8515 0x60#define AT90S8535 0x61#define AT90C8534 0x62#define ATMEGA8515 0x63#define ATMEGA8535 0x64#define ATMEGA8 0x70#define ATMEGA88 0x73#define ATMEGA168 0x86#define ATMEGA161 0x80#define ATMEGA163 0x81#define ATMEGA16 0x82#define ATMEGA162 0x83#define ATMEGA169 0x84#define ATMEGA323 0x90#define ATMEGA32 0x91#define ATMEGA64 0xA0#define ATMEGA103 0xB1#define ATMEGA128 0xB2#define AT90CAN128 0xB3#define AT86RF401 0xD0#define AT89START 0xE0#define AT89S51 0xE0#define AT89S52 0xE1# The following table lists the devices in the original AVR910# appnote:# |Device |Signature | Code |# +-------+----------+------+# |tiny12 | 1E 90 05 | 0x55 |# |tiny15 | 1E 90 06 | 0x56 |# | | | |# | S1200 | 1E 90 01 | 0x13 |# | | | |# | S2313 | 1E 91 01 | 0x20 |# | S2323 | 1E 91 02 | 0x48 |# | S2333 | 1E 91 05 | 0x34 |# | S2343 | 1E 91 03 | 0x4C |# | | | |# | S4414 | 1E 92 01 | 0x28 |# | S4433 | 1E 92 03 | 0x30 |# | S4434 | 1E 92 02 | 0x6C |# | | | |# | S8515 | 1E 93 01 | 0x38 |# | S8535 | 1E 93 03 | 0x68 |# | | | |# |mega32 | 1E 95 01 | 0x72 |# |mega83 | 1E 93 05 | 0x65 |# |mega103| 1E 97 01 | 0x41 |# |mega161| 1E 94 01 | 0x60 |# |mega163| 1E 94 02 | 0x64 |# Appnote AVR109 also has a table of AVR910 device codes, which# lists:# dev avr910 signature# ATmega8 0x77 0x1E 0x93 0x07# ATmega8515 0x3B 0x1E 0x93 0x06# ATmega8535 0x6A 0x1E 0x93 0x08# ATmega16 0x75 0x1E 0x94 0x03# ATmega162 0x63 0x1E 0x94 0x04# ATmega163 0x66 0x1E 0x94 0x02# ATmega169 0x79 0x1E 0x94 0x05# ATmega32 0x7F 0x1E 0x95 0x02# ATmega323 0x73 0x1E 0x95 0x01# ATmega64 0x46 0x1E 0x96 0x02# ATmega128 0x44 0x1E 0x97 0x02# Note that both lists contradict for the ATmega32 and the ATmega163.# We go with the original AVR910 in these cases. As AVR910 still has# the originally name ATmega83 for the ATmega8535, we use the AVR109# code here.## Overall avrdude defaults#default_parallel = "lpt1";default_serial = "com1";## PROGRAMMER DEFINITIONS#programmer id = "avrisp"; desc = "Atmel AVR ISP"; type = stk500;;programmer id = "avrispv2"; desc = "Atmel AVR ISP V2"; type = stk500v2;;programmer id = "avrispmkII"; desc = "Atmel AVR ISP mkII"; type = stk500v2;;programmer id = "avrisp2"; desc = "Atmel AVR ISP mkII"; type = stk500v2;;# This is supposed to be the "default" STK500 entry.# Attempts to select the correct firmware version# by probing for it. Better use one of the entries# below instead.programmer id = "stk500"; desc = "Atmel STK500"; type = stk500generic;;programmer id = "stk500v1"; desc = "Atmel STK500 Version 1.x firmware"; type = stk500;;programmer id = "stk500v2"; desc = "Atmel STK500 Version 2.x firmware"; type = stk500v2;;programmer id = "stk500pp"; desc = "Atmel STK500 V2 in parallel programming mode"; type = stk500pp;;programmer id = "stk500hvsp"; desc = "Atmel STK500 V2 in high-voltage serial programming mode"; type = stk500hvsp;;programmer id = "avr910"; desc = "Atmel Low Cost Serial Programmer"; type = avr910;;programmer id = "usbasp"; desc = "USBasp, http://www.fischl.de/usbasp/"; type = usbasp;;programmer id = "butterfly"; desc = "Atmel Butterfly Development Board"; type = butterfly;;programmer id = "avr109"; desc = "Atmel AppNote AVR109 Boot Loader"; type = butterfly;;programmer id = "avr911"; desc = "Atmel AppNote AVR911 AVROSP"; type = butterfly;;programmer id = "jtagmkI"; desc = "Atmel JTAG ICE (mkI)"; baudrate = 115200; # default is 115200 type = jtagmki;;# easier to typeprogrammer id = "jtag1"; desc = "Atmel JTAG ICE (mkI)"; baudrate = 115200; # default is 115200 type = jtagmki;;# easier to typeprogrammer id = "jtag1slow"; desc = "Atmel JTAG ICE (mkI)"; baudrate = 19200; type = jtagmki;;programmer id = "jtagmkII"; desc = "Atmel JTAG ICE mkII"; baudrate = 19200; # default is 19200 type = jtagmkii;;# easier to typeprogrammer id = "jtag2slow"; desc = "Atmel JTAG ICE mkII"; baudrate = 19200; # default is 19200 type = jtagmkii;;# JTAG ICE mkII @ 115200 Bdprogrammer id = "jtag2fast";
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -