36 lines
871 B
C
Executable file
36 lines
871 B
C
Executable file
#pragma once
|
|
|
|
|
|
#define BL_CMD_NOOP 0x00 // Noop
|
|
#define BL_CMD_ERASE_FLASH 0x10 // Applikationsflash löschen
|
|
#define BL_CMD_WRITE_FLASH 0x11 // Daten in Flash schreiben
|
|
#define BL_CMD_SET_FLASH_PTR 0x12 // Setze den Schreibpointer für Flashvorgänge (impliziert BL_CMD_FLUSH)
|
|
#define BL_CMD_FLUSH 0x13 // Flash Schreibvorgang abschliessen (übrige Daten im Buffer schreiben)
|
|
|
|
#define BL_CMD_GET_FLASH_PARA 0x18 // Frage nach Daten des FLASH
|
|
|
|
#define BL_CMD_REPLY 0x40
|
|
|
|
struct bl_cmd
|
|
{
|
|
uint8_t cmd;
|
|
uint8_t len;
|
|
uint8_t chk;
|
|
char buffer[32];
|
|
};
|
|
|
|
uint8_t bl_send(FILE *stream,struct bl_cmd *cmd);
|
|
uint8_t bl_recv(FILE *stream,struct bl_cmd *cmd);
|
|
|
|
void bl_boot_application(void);
|
|
uint8_t bootloader(FILE *stream);
|
|
|
|
|
|
#define BL_MCU_AT90USB1286 0x20
|
|
#define BL_MCU_AT90CAN128 0x21
|
|
#define BL_MCU_ATMEGA1284 0x22
|
|
#define BL_MCU_ATMEGA32U4 0x23
|
|
|
|
|
|
|