You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
1.3 KiB
81 lines
1.3 KiB
#ifndef CONFIG_H_
|
|
#define CONFIG_H_
|
|
|
|
#include <inttypes.h>
|
|
#include <avr/io.h>
|
|
|
|
//Consfigure project
|
|
|
|
//#define _NO_BOOTLOADER_
|
|
#define _DEBUG_
|
|
|
|
//Choose one
|
|
//#define _SLAVE_MODULE_
|
|
#define _SLAVE_EXT_
|
|
//#define _CUSTOM_TYPE_
|
|
|
|
//After this see idibus_hw.h to change PIN definition
|
|
|
|
//Done!
|
|
|
|
|
|
//For 328pb
|
|
#ifdef __ATmega328PB__
|
|
|
|
#define PAGE_SIZE 128UL
|
|
#define PAGE_SIZE_BIT 7
|
|
|
|
//DONT FORGET TO CHANGE LINKER OPTIONS!!!!
|
|
#define locationInBoot (0x3FE8UL) //CAREFUL ONLY 48 byte in size for data
|
|
#define locationInApp (0x37C0UL)
|
|
|
|
#define SRAM_size 2048UL
|
|
|
|
#endif
|
|
|
|
//For 2560
|
|
#ifdef __ATmega2560__
|
|
|
|
#define _LONG_ADDR_SPACE_
|
|
#define _FAT_CRC_
|
|
|
|
#define PAGE_SIZE 256ULL
|
|
#define PAGE_SIZE_BIT 8
|
|
|
|
//Settings in the linker
|
|
#define locationInBoot (0x1FF80ULL)
|
|
#define locationInApp (0x1EF80ULL)
|
|
|
|
#define SRAM_size 8192UL
|
|
|
|
#endif
|
|
|
|
//For 1280
|
|
#ifdef __ATmega1280__
|
|
|
|
#define _LONG_ADDR_SPACE_
|
|
#define _FAT_CRC_
|
|
|
|
#define PAGE_SIZE 256ULL
|
|
#define PAGE_SIZE_BIT 8
|
|
|
|
//Settings in the linker
|
|
#define locationInBoot (0x0FF80ULL)
|
|
#define locationInApp (0x0EF80ULL)
|
|
|
|
|
|
#define SRAM_size 8192UL
|
|
|
|
#endif
|
|
//COMMON Define
|
|
#define PAGE_COUNT (((locationInApp<<1)/PAGE_SIZE)+1)
|
|
|
|
#ifdef _LONG_ADDR_SPACE_
|
|
#define FLASH_ADDR_T uint_farptr_t
|
|
#else
|
|
#define FLASH_ADDR_T uint16_t
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* CONFIG_H_ */ |