主题中讨论的其他部件: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针版本不同的内存映射,或者是否缺少其他问题?