主题中讨论的其他部件:HALCOGEN
您好,
我一直在与RM44L520PZ合作进行一个项目,我注意到没有可用于包含FreeRTOS的处理器的项目类型。 为了解决这个问题,我从另一个项目中提取了FreeRTOS文件,并将它们添加到项目中,Halcogen创建 了RM44L520PZ设备配置文件。 当我尝试创建一个任务以测试它是否有效时,我收到了以下错误:
warning #10247-D: creating output section ".kernelTEXT" without a SECTIONS specification warning #10247-D: creating output section ".kernelHEAP" without a SECTIONS specification warning #10247-D: creating output section ".kernelBSS" without a SECTIONS specification
以下是生成的sys_link内存映射和部分配置:
/*----------------------------------------------------------------------------*/
/* Memory Map */
MEMORY
{
VECTORS (X) : origin=0x00000000 length=0x00000020
FLASH0 (RX) : origin=0x00000020 length=0x000BFFE0
STACKS (RW) : origin=0x08000000 length=0x00001500
RAM (RW) : origin=0x08001500 length=0x0001EB00
/* USER CODE BEGIN (2) */
/* USER CODE END */
}
/* USER CODE BEGIN (3) */
/* USER CODE END */
/*----------------------------------------------------------------------------*/
/* Section Configuration */
SECTIONS
{
.intvecs : {} > VECTORS
.text : {} > FLASH0
.const : {} > FLASH0
.cinit : {} > FLASH0
.pinit : {} > FLASH0
.bss : {} > RAM
.data : {} > RAM
.sysmem : {} > RAM
由于Halcogen没有生成FreeRTOS所需的内存映射和分区配置,我在 halcogen中创建了一个新项目,使用RM44L520PGE_FreeRTOS模板,我 从生成的sys_link文件中获得了以下内存映射和分区配置:
/*----------------------------------------------------------------------------*/
/* Memory Map */
MEMORY
{
VECTORS (X) : origin=0x00000000 length=0x00000020
KERNEL (RX) : origin=0x00000020 length=0x00008000
FLASH0 (RX) : origin=0x00008020 length=0x000B7FE0
STACKS (RW) : origin=0x08000000 length=0x00000800
KRAM (RW) : origin=0x08000800 length=0x00000800
RAM (RW) : origin=(0x08000800+0x00000800) length=(0x0001EB00 - 0x00000800)
/* USER CODE BEGIN (2) */
/* USER CODE END */
}
/* USER CODE BEGIN (3) */
/* USER CODE END */
/*----------------------------------------------------------------------------*/
/* Section Configuration */
SECTIONS
{
.intvecs : {} > VECTORS
/* FreeRTOS Kernel in protected region of Flash */
.kernelTEXT : {} > KERNEL
.cinit : {} > KERNEL
.pinit : {} > KERNEL
/* Rest of code to user mode flash region */
.text : {} > FLASH0
.const : {} > FLASH0
/* FreeRTOS Kernel data in protected region of RAM */
.kernelBSS : {} > KRAM
.kernelHEAP : {} > RAM
.bss : {} > RAM
.data : {} > RAM
我将这些文件复制到原始项目的sys_link文件中,以前的错误已经消失,但项目无法在我的板上正常运行。 使用RTOS时,此处理器的100针版本是否需要与144针版本不同的内存映射,或者是否缺少其他问题?