X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/3705330dd32f54cf15842511b7657d2f321c11ad..24f730fce3f2022762011d795c3feada5ef874b3:/Projects/AVRISP/Lib/PDITarget.h?ds=sidebyside diff --git a/Projects/AVRISP/Lib/PDITarget.h b/Projects/AVRISP/Lib/PDITarget.h index 41cc1fbd7..3758489a7 100644 --- a/Projects/AVRISP/Lib/PDITarget.h +++ b/Projects/AVRISP/Lib/PDITarget.h @@ -44,8 +44,8 @@ #include /* Preprocessor Checks: */ - #if (BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1) - #undef ENABLE_ISP_PROTOCOL + #if ((BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1)) + #undef ENABLE_ISP_PROTOCOL #if !defined(ENABLE_PDI_PROTOCOL) #define ENABLE_PDI_PROTOCOL @@ -53,7 +53,7 @@ #endif /* Defines: */ - #if BOARD == BOARD_XPLAIN + #if ((BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1)) #define PDI_VIA_HARDWARE_USART #else #define BITBANG_PDIDATA_PORT PORTB @@ -69,6 +69,8 @@ #define BITS_IN_FRAME 12 + #define PDI_NVM_TIMEOUT_MS 200 + #define PDI_CMD_LDS 0x00 #define PDI_CMD_LD 0x20 #define PDI_CMD_STS 0x40 @@ -95,42 +97,13 @@ #define PDI_POINTER_INDIRECT 0 #define PDI_POINTER_INDIRECT_PI 1 #define PDI_POINTER_DIRECT 2 - - #define FLASH_BASE 0x00800000 - #define EPPROM_BASE 0x008C0000 - #define FUSE_BASE 0x008F0020 - #define DATAMEM_BASE 0x01000000 - #define PROD_SIGNATURE_BASE 0x008E0200 - #define USER_SIGNATURE_BASE 0x008E0400 - - #define DATAMEM_NVM_BASE 0x01C0 - #define DATAMEM_NVM_ADDR0 (DATAMEM_NVM_BASE | 0x00) - #define DATAMEM_NVM_ADDR1 (DATAMEM_NVM_BASE | 0x01) - #define DATAMEM_NVM_ADDR2 (DATAMEM_NVM_BASE | 0x02) - #define DATAMEM_NVM_DAT0 (DATAMEM_NVM_BASE | 0x04) - #define DATAMEM_NVM_DAT1 (DATAMEM_NVM_BASE | 0x05) - #define DATAMEM_NVM_DAT2 (DATAMEM_NVM_BASE | 0x06) - #define DATAMEM_NVM_CMD (DATAMEM_NVM_BASE | 0x0A) - #define DATAMEM_NVM_CTRLA (DATAMEM_NVM_BASE | 0x0B) - #define DATAMEM_NVM_CTRLB (DATAMEM_NVM_BASE | 0x0C) - #define DATAMEM_NVM_INTCTRL (DATAMEM_NVM_BASE | 0x0D) - #define DATAMEM_NVM_STATUS (DATAMEM_NVM_BASE | 0x0F) - #define DATAMEM_NVM_LOCKBITS (DATAMEM_NVM_BASE | 0x10) - - #define NVM_CMD_APPCRC 0x38 - #define NVM_CMD_BOOTCRC 0x39 - #define NVM_CMD_FLASHCRC 0x78 - #define NVM_CMD_READUSERSIG 0x03 /* Function Prototypes: */ void PDITarget_EnableTargetPDI(void); void PDITarget_DisableTargetPDI(void); - void PDITarget_SendByte(uint8_t Byte); + void PDITarget_SendByte(const uint8_t Byte); uint8_t PDITarget_ReceiveByte(void); void PDITarget_SendBreak(void); - - void PDITarget_SendAddress(uint32_t Address); bool PDITarget_WaitWhileNVMBusBusy(void); - void PDITarget_WaitWhileNVMControllerBusy(void); #endif