Обновление
This commit is contained in:
parent
27a37cc0e4
commit
9ccef80876
|
|
@ -4,6 +4,16 @@ ENTRY(Reset_Handler)
|
||||||
|
|
||||||
M_VECTOR_RAM_SIZE = 0x0400;
|
M_VECTOR_RAM_SIZE = 0x0400;
|
||||||
|
|
||||||
|
_MetadataSize = 256;
|
||||||
|
|
||||||
|
_BootloaderSize = 256K;
|
||||||
|
_BootloaderBegin = 0x01000000; /* BANK1 */
|
||||||
|
|
||||||
|
_FirmwareSize = 512K;
|
||||||
|
_FirmwareMainBegin = _BootloaderBegin + _BootloaderSize;
|
||||||
|
|
||||||
|
_FirmwareRecoveryBegin = 0x01010000; /* BANK2 */
|
||||||
|
|
||||||
/* Specify the memory areas */
|
/* Specify the memory areas */
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
|
|
@ -13,7 +23,10 @@ MEMORY
|
||||||
SRAM0 (RW) : ORIGIN = 0x21000000, LENGTH = 0x00010000 /* 64KB */
|
SRAM0 (RW) : ORIGIN = 0x21000000, LENGTH = 0x00010000 /* 64KB */
|
||||||
SRAM1 (RW) : ORIGIN = 0x21010000, LENGTH = 0x00008000 /* 32KB */
|
SRAM1 (RW) : ORIGIN = 0x21010000, LENGTH = 0x00008000 /* 32KB */
|
||||||
|
|
||||||
PFLASH (RW) : ORIGIN = 0x01000000, LENGTH = 0x00200000 /* 2MB */
|
PFLASH_BOOT (RW) : ORIGIN = _BootloaderBegin, LENGTH = _BootloaderSize /* 256K */
|
||||||
|
PFLASH_BOOT_META (RW) : ORIGIN = _BootloaderBegin + _BootloaderSize - _MetadataSize, LENGTH = _MetadataSize
|
||||||
|
PFLASH_MAIN (RW) : ORIGIN = _FirmwareMainBegin, LENGTH = _FirmwareSize /* 512K */
|
||||||
|
PFLASH_RECOVERY (RW) : ORIGIN = _FirmwareRecoveryBegin, LENGTH = _FirmwareSize /* 512K */
|
||||||
|
|
||||||
DFLASH (RW) : ORIGIN = 0x04000000, LENGTH = 0x00020000 /* 128KB */
|
DFLASH (RW) : ORIGIN = 0x04000000, LENGTH = 0x00020000 /* 128KB */
|
||||||
|
|
||||||
|
|
@ -50,7 +63,31 @@ SECTIONS
|
||||||
*(.fini) /* section used in crti.o files */
|
*(.fini) /* section used in crti.o files */
|
||||||
*(.eh_frame) /* section used in crtbegin.o files */
|
*(.eh_frame) /* section used in crtbegin.o files */
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
} > PFLASH
|
} > PFLASH_BOOT
|
||||||
|
|
||||||
|
.meta_boot : SUBALIGN(1)
|
||||||
|
{
|
||||||
|
__ram_boot_meta_start = .;
|
||||||
|
. = ALIGN(256);
|
||||||
|
KEEP(*(.meta_fw_crc))
|
||||||
|
LONG(_FirmwareSize - _MetadataSize) ; /* word with firmware_size */
|
||||||
|
|
||||||
|
KEEP(*(.meta_internal_hw_year))
|
||||||
|
KEEP(*(.meta_internal_hw_month))
|
||||||
|
KEEP(*(.meta_internal_hw_day))
|
||||||
|
KEEP(*(.meta_internal_hw_rev))
|
||||||
|
|
||||||
|
KEEP(*(.meta_internal_sw_year))
|
||||||
|
KEEP(*(.meta_internal_sw_month))
|
||||||
|
KEEP(*(.meta_internal_sw_day))
|
||||||
|
KEEP(*(.meta_internal_sw_rev))
|
||||||
|
|
||||||
|
KEEP(*(.meta_finger_year))
|
||||||
|
KEEP(*(.meta_finger_month))
|
||||||
|
KEEP(*(.meta_finger_day))
|
||||||
|
KEEP(*(.meta_finger_tester_serial))
|
||||||
|
|
||||||
|
} > PFLASH_BOOT_META
|
||||||
|
|
||||||
.data :
|
.data :
|
||||||
{
|
{
|
||||||
|
|
@ -83,7 +120,7 @@ SECTIONS
|
||||||
/* All data end */
|
/* All data end */
|
||||||
__ram_data_end = .;
|
__ram_data_end = .;
|
||||||
|
|
||||||
} > DTCM AT > PFLASH
|
} > DTCM AT > PFLASH_BOOT
|
||||||
|
|
||||||
/* Non-cache RAM section with data initialization */
|
/* Non-cache RAM section with data initialization */
|
||||||
.ncache_data :
|
.ncache_data :
|
||||||
|
|
@ -93,7 +130,7 @@ SECTIONS
|
||||||
*(.nocacheable_data*)
|
*(.nocacheable_data*)
|
||||||
__ram_ncache_data_end = .;
|
__ram_ncache_data_end = .;
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
} > SRAM1 AT > PFLASH
|
} > SRAM1 AT > PFLASH_BOOT
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,10 @@
|
||||||
#include "DeviceStorage.h"
|
#include "DeviceStorage.h"
|
||||||
#include "BootJump.h"
|
#include "BootJump.h"
|
||||||
|
|
||||||
#define BOOT_AREA_LENGTH (256 * 1024)
|
#define BOOT_AREA_LENGTH (256 * 1024) // Размер загрузчика
|
||||||
#define FIRMWARE_MAIN_ADDR (0x01000000 + BOOT_AREA_LENGTH)
|
#define FIRMWARE_MAIN_AREA_LENGTH (512 * 1024) // Размер основной программы
|
||||||
#define FIRMWARE_MAIN_RECOVERY_ADDR (FIRMWARE_MAIN_ADDR + FIRMWARE_MAIN_AREA_LENGTH)
|
#define FIRMWARE_MAIN_ADDR (0x01000000 + BOOT_AREA_LENGTH) // Адрес основной программы
|
||||||
|
#define FIRMWARE_MAIN_RECOVERY_ADDR (FIRMWARE_MAIN_ADDR + FIRMWARE_MAIN_AREA_LENGTH) // Адрес основной программы (восстановление)
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
tLoggerToSerialPort slog;
|
tLoggerToSerialPort slog;
|
||||||
|
|
|
||||||
|
|
@ -19,24 +19,41 @@ SET(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||||
#-- Project config -------------------------------------------------------------
|
#-- Project config -------------------------------------------------------------
|
||||||
PROJECT(HVAC_BOOT_M7) # Project name
|
PROJECT(HVAC_BOOT_M7) # Project name
|
||||||
|
|
||||||
|
SET(INTERNAL_HW_YEAR 0x26)
|
||||||
|
SET(INTERNAL_HW_MONTH 0x01)
|
||||||
|
SET(INTERNAL_HW_DAY 0x01)
|
||||||
|
SET(INTERNAL_HW_REV 0x01)
|
||||||
|
|
||||||
|
SET(INTERNAL_SW_YEAR 0x26)
|
||||||
|
SET(INTERNAL_SW_MONTH 0x02)
|
||||||
|
SET(INTERNAL_SW_DAY 0x02)
|
||||||
|
SET(INTERNAL_SW_REV 0x02)
|
||||||
|
|
||||||
|
SET(FINGER_YEAR 0x26)
|
||||||
|
SET(FINGER_MONTH 0x02)
|
||||||
|
SET(FINGER_DAY 0x24)
|
||||||
|
SET(FINGER_TESTER_SERIAL \"B\")
|
||||||
|
|
||||||
|
|
||||||
SET(HARDWARE_REVISION 1.0.0) #
|
|
||||||
SET(VERSION \"1.0.0_BOOT_HVAC\") #
|
|
||||||
SET(VERSION_INTERFACE \"1.0_BOOT_INTERFACE\") #
|
|
||||||
SET(HARDWARE_USER_NAME "BOOT_HVAC")
|
|
||||||
#SET(VECT_TAB_OFFSET "0x100000")
|
|
||||||
SET(VECT_TAB_OFFSET "0x00000")
|
SET(VECT_TAB_OFFSET "0x00000")
|
||||||
|
|
||||||
SET(HEXT_VALUE "8000000")
|
|
||||||
SET(PLL_NS "125")
|
|
||||||
|
|
||||||
#-- Defines --------------------------------------------------------------------
|
#-- Defines --------------------------------------------------------------------
|
||||||
#ADD_DEFINITIONS(-DSET_ACCESS_PROTECTION) # Выставление защиты доступа к памяти
|
|
||||||
#ADD_DEFINITIONS(-DSET_WDT) # Выставление сторожевого таймера
|
|
||||||
|
|
||||||
ADD_DEFINITIONS(-DFIRMWARE_VERSION=${VERSION})
|
ADD_DEFINITIONS(-DINTERNAL_HW_YEAR=${INTERNAL_HW_YEAR})
|
||||||
ADD_DEFINITIONS(-DHARDWARE_REVISION=\"${HARDWARE_REVISION}\")
|
ADD_DEFINITIONS(-DINTERNAL_HW_MONTH=${INTERNAL_HW_MONTH})
|
||||||
ADD_DEFINITIONS(-DFIRMWARE_INTERFACE_VERSION=${VERSION_INTERFACE})
|
ADD_DEFINITIONS(-DINTERNAL_HW_DAY=${INTERNAL_HW_DAY})
|
||||||
|
ADD_DEFINITIONS(-DINTERNAL_HW_REV=${INTERNAL_HW_REV})
|
||||||
|
|
||||||
|
ADD_DEFINITIONS(-DINTERNAL_SW_YEAR=${INTERNAL_SW_YEAR})
|
||||||
|
ADD_DEFINITIONS(-DINTERNAL_SW_MONTH=${INTERNAL_SW_MONTH})
|
||||||
|
ADD_DEFINITIONS(-DINTERNAL_SW_DAY=${INTERNAL_SW_DAY})
|
||||||
|
ADD_DEFINITIONS(-DINTERNAL_SW_REV=${INTERNAL_SW_REV})
|
||||||
|
|
||||||
|
ADD_DEFINITIONS(-DFINGER_YEAR=${FINGER_YEAR})
|
||||||
|
ADD_DEFINITIONS(-DFINGER_MONTH=${FINGER_MONTH})
|
||||||
|
ADD_DEFINITIONS(-DFINGER_DAY=${FINGER_DAY})
|
||||||
|
ADD_DEFINITIONS(-DFINGER_TESTER_SERIAL=${FINGER_TESTER_SERIAL})
|
||||||
|
|
||||||
ADD_DEFINITIONS(-DUSING_OS_FREERTOS)
|
ADD_DEFINITIONS(-DUSING_OS_FREERTOS)
|
||||||
|
|
||||||
ADD_DEFINITIONS(-DVERSION_SEDANL_Y=25)
|
ADD_DEFINITIONS(-DVERSION_SEDANL_Y=25)
|
||||||
|
|
@ -60,7 +77,6 @@ ADD_DEFINITIONS(-DVERSION_MPV_M=10)
|
||||||
ADD_DEFINITIONS(-DVERSION_MPV_D=29)
|
ADD_DEFINITIONS(-DVERSION_MPV_D=29)
|
||||||
|
|
||||||
ADD_DEFINITIONS(-DVECT_TAB_OFFSET=${VECT_TAB_OFFSET})
|
ADD_DEFINITIONS(-DVECT_TAB_OFFSET=${VECT_TAB_OFFSET})
|
||||||
ADD_DEFINITIONS(-DHEXT_VALUE=${HEXT_VALUE})
|
|
||||||
ADD_DEFINITIONS(-DCMSIS_device_header="interrupt_manager.h")
|
ADD_DEFINITIONS(-DCMSIS_device_header="interrupt_manager.h")
|
||||||
|
|
||||||
ADD_DEFINITIONS(-DFLASH_PAGE_SIZE=2048)
|
ADD_DEFINITIONS(-DFLASH_PAGE_SIZE=2048)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue