104 lines
4.4 KiB
C
104 lines
4.4 KiB
C
//**** ATMEL AVR - A P P L I C A T I O N N O T E ************************
|
|
//*
|
|
//* Title: AVR061 - STK500 Communication Protocol
|
|
//* Filename: command.h
|
|
//* Version: 1.0
|
|
//* Last updated: 09.09.2002
|
|
//*
|
|
//* Support E-mail: avr@atmel.com
|
|
//*
|
|
//**************************************************************************
|
|
|
|
// *****************[ STK Message constants ]***************************
|
|
|
|
#define STK_SIGN_ON_MESSAGE "AVR STK" // Sign on string for Cmnd_STK_GET_SIGN_ON
|
|
|
|
// *****************[ STK Response constants ]***************************
|
|
|
|
#define Resp_STK_OK 0x10 // ' '
|
|
#define Resp_STK_FAILED 0x11 // ' '
|
|
#define Resp_STK_UNKNOWN 0x12 // ' '
|
|
#define Resp_STK_NODEVICE 0x13 // ' '
|
|
#define Resp_STK_INSYNC 0x14 // ' '
|
|
#define Resp_STK_NOSYNC 0x15 // ' '
|
|
|
|
#define Resp_ADC_CHANNEL_ERROR 0x16 // ' '
|
|
#define Resp_ADC_MEASURE_OK 0x17 // ' '
|
|
#define Resp_PWM_CHANNEL_ERROR 0x18 // ' '
|
|
#define Resp_PWM_ADJUST_OK 0x19 // ' '
|
|
|
|
// *****************[ STK Special constants ]***************************
|
|
|
|
#define Sync_CRC_EOP 0x20 // 'SPACE'
|
|
|
|
// *****************[ STK Command constants ]***************************
|
|
|
|
#define Cmnd_STK_GET_SYNC 0x30 // ' '
|
|
#define Cmnd_STK_GET_SIGN_ON 0x31 // ' '
|
|
|
|
#define Cmnd_STK_SET_PARAMETER 0x40 // ' '
|
|
#define Cmnd_STK_GET_PARAMETER 0x41 // ' '
|
|
#define Cmnd_STK_SET_DEVICE 0x42 // ' '
|
|
#define Cmnd_STK_SET_DEVICE_EXT 0x45 // ' '
|
|
|
|
#define Cmnd_STK_ENTER_PROGMODE 0x50 // ' '
|
|
#define Cmnd_STK_LEAVE_PROGMODE 0x51 // ' '
|
|
#define Cmnd_STK_CHIP_ERASE 0x52 // ' '
|
|
#define Cmnd_STK_CHECK_AUTOINC 0x53 // ' '
|
|
#define Cmnd_STK_LOAD_ADDRESS 0x55 // ' '
|
|
#define Cmnd_STK_UNIVERSAL 0x56 // ' '
|
|
#define Cmnd_STK_UNIVERSAL_MULTI 0x57 // ' '
|
|
|
|
#define Cmnd_STK_PROG_FLASH 0x60 // ' '
|
|
#define Cmnd_STK_PROG_DATA 0x61 // ' '
|
|
#define Cmnd_STK_PROG_FUSE 0x62 // ' '
|
|
#define Cmnd_STK_PROG_LOCK 0x63 // ' '
|
|
#define Cmnd_STK_PROG_PAGE 0x64 // ' '
|
|
#define Cmnd_STK_PROG_FUSE_EXT 0x65 // ' '
|
|
|
|
#define Cmnd_STK_READ_FLASH 0x70 // ' '
|
|
#define Cmnd_STK_READ_DATA 0x71 // ' '
|
|
#define Cmnd_STK_READ_FUSE 0x72 // ' '
|
|
#define Cmnd_STK_READ_LOCK 0x73 // ' '
|
|
#define Cmnd_STK_READ_PAGE 0x74 // ' '
|
|
#define Cmnd_STK_READ_SIGN 0x75 // ' '
|
|
#define Cmnd_STK_READ_OSCCAL 0x76 // ' '
|
|
#define Cmnd_STK_READ_FUSE_EXT 0x77 // ' '
|
|
#define Cmnd_STK_READ_OSCCAL_EXT 0x78 // ' '
|
|
|
|
// *****************[ STK Parameter constants ]***************************
|
|
|
|
#define Parm_STK_HW_VER 0x80 // ' ' - R
|
|
#define Parm_STK_SW_MAJOR 0x81 // ' ' - R
|
|
#define Parm_STK_SW_MINOR 0x82 // ' ' - R
|
|
#define Parm_STK_LEDS 0x83 // ' ' - R/W
|
|
#define Parm_STK_VTARGET 0x84 // ' ' - R/W
|
|
#define Parm_STK_VADJUST 0x85 // ' ' - R/W
|
|
#define Parm_STK_OSC_PSCALE 0x86 // ' ' - R/W
|
|
#define Parm_STK_OSC_CMATCH 0x87 // ' ' - R/W
|
|
#define Parm_STK_RESET_DURATION 0x88 // ' ' - R/W
|
|
#define Parm_STK_SCK_DURATION 0x89 // ' ' - R/W
|
|
|
|
#define Parm_STK_BUFSIZEL 0x90 // ' ' - R/W, Range {0..255}
|
|
#define Parm_STK_BUFSIZEH 0x91 // ' ' - R/W, Range {0..255}
|
|
#define Parm_STK_DEVICE 0x92 // ' ' - R/W, Range {0..255}
|
|
#define Parm_STK_PROGMODE 0x93 // ' ' - 'P' or 'S'
|
|
#define Parm_STK_PARAMODE 0x94 // ' ' - TRUE or FALSE
|
|
#define Parm_STK_POLLING 0x95 // ' ' - TRUE or FALSE
|
|
#define Parm_STK_SELFTIMED 0x96 // ' ' - TRUE or FALSE
|
|
#define Param_STK500_TOPCARD_DETECT 0x98 // ' ' - Detect top-card attached
|
|
|
|
// *****************[ STK status bit definitions ]***************************
|
|
|
|
#define Stat_STK_INSYNC 0x01 // INSYNC status bit, '1' - INSYNC
|
|
#define Stat_STK_PROGMODE 0x02 // Programming mode, '1' - PROGMODE
|
|
#define Stat_STK_STANDALONE 0x04 // Standalone mode, '1' - SM mode
|
|
#define Stat_STK_RESET 0x08 // RESET button, '1' - Pushed
|
|
#define Stat_STK_PROGRAM 0x10 // Program button, ' 1' - Pushed
|
|
#define Stat_STK_LEDG 0x20 // Green LED status, '1' - Lit
|
|
#define Stat_STK_LEDR 0x40 // Red LED status, '1' - Lit
|
|
#define Stat_STK_LEDBLINK 0x80 // LED blink ON/OFF, '1' - Blink
|
|
|
|
|
|
// *****************************[ End Of COMMAND.H ]**************************
|