atmega2560 support

This commit is contained in:
Steven Honson 2021-12-14 11:50:37 +11:00
parent 144dae2ecb
commit fd6842752f

View File

@ -7,6 +7,7 @@
#define MIN_VERS 0x11 #define MIN_VERS 0x11
#define MCU_1284P 0x91 #define MCU_1284P 0x91
#define MCU_2560 0x92
#define MODE_HOST 0x11 #define MODE_HOST 0x11
#define MODE_TNC 0x12 #define MODE_TNC 0x12
@ -14,6 +15,9 @@
#if defined(__AVR_ATmega1284P__) #if defined(__AVR_ATmega1284P__)
#define MCU_VARIANT MCU_1284P #define MCU_VARIANT MCU_1284P
#warning "Firmware is being compiled for atmega1284p based boards" #warning "Firmware is being compiled for atmega1284p based boards"
#elif defined(__AVR_ATmega2560__)
#define MCU_VARIANT MCU_2560
#warning "Firmware is being compiled for atmega2560 based boards"
#else #else
#error "The firmware cannot be compiled for the selected MCU variant" #error "The firmware cannot be compiled for the selected MCU variant"
#endif #endif
@ -43,6 +47,22 @@
#define EEPROM_OFFSET EEPROM_SIZE-EEPROM_RESERVED #define EEPROM_OFFSET EEPROM_SIZE-EEPROM_RESERVED
#endif #endif
#if MCU_VARIANT == MCU_2560
const int pin_cs = 10;
const int pin_reset = 9;
const int pin_dio = 2;
const int pin_led_rx = 12;
const int pin_led_tx = 13;
// TODO: Reset
#define CONFIG_UART_BUFFER_SIZE 2048
#define CONFIG_QUEUE_SIZE 2048
#define CONFIG_QUEUE_MAX_LENGTH 250
#define EEPROM_SIZE 4096
#define EEPROM_OFFSET EEPROM_SIZE-EEPROM_RESERVED
#endif
#define eeprom_addr(a) (a+EEPROM_OFFSET) #define eeprom_addr(a) (a+EEPROM_OFFSET)
// MCU independent configuration parameters // MCU independent configuration parameters
@ -71,13 +91,13 @@
uint8_t op_mode = MODE_HOST; uint8_t op_mode = MODE_HOST;
uint8_t model = 0x00; uint8_t model = 0x00;
uint8_t hwrev = 0x00; uint8_t hwrev = 0x00;
int last_rssi = -292; int last_rssi = -292;
uint8_t last_rssi_raw = 0x00; uint8_t last_rssi_raw = 0x00;
uint8_t last_snr_raw = 0x00; uint8_t last_snr_raw = 0x00;
size_t read_len = 0; size_t read_len = 0;
uint8_t seq = 0xFF; uint8_t seq = 0xFF;
// Incoming packet buffer // Incoming packet buffer
uint8_t pbuf[MTU]; uint8_t pbuf[MTU];
@ -107,4 +127,4 @@
const uint8_t SIG_SYNCED = 0x02; const uint8_t SIG_SYNCED = 0x02;
const uint8_t RX_ONGOING = 0x04; const uint8_t RX_ONGOING = 0x04;
#endif #endif