Other Parts Discussed in Thread: AM263P4, UNIFLASH, SYSCONFIG
器件型号: AM263P4
Thread 中讨论的其他器件: UNIFLASH、 SYSCONFIG
您好、TI 专家。
AM263P4 开发工作的第一阶段在 HS-P4 FS 状态下即将完成。
在客户现场进行产品测试之前、我尝试将电路板更改为安全模式。
(1) 我为 HS-SE 器件制作了一个定制电路板。
(2) 我为 HS-SE 器件制作了 HSMRt 固件。
(3) 我从下面的原始文件修改了 devconfig.mak
Device_type?=HS
kd_salt={another}/ kd_salt.txt
CUST_MPK={PARAMER}/mcub_custMpk.pem
CUST_MEK={PARAMER}/ mcu_custMek.key
ENC_ENABLED?=是
(3) 我使用修改后的 devconfig.mak 和 HSMRt 固件再次为 HS-SE 器件构建了 SBL_UART_UNIFLASH 和 SBL_OSPI。
(4) 我使用修改后的 devconfig.mak 再次为 HS-SE 器件构建了我的应用程序。
然后、我在 OSPI 引导模式下引导结果、但进度在 SBL_OSPI 程序中停止。
在检查了 SBL_OSPI 编程进度后、我找到了下面的停止点。
我没有使用应用程序、而是在相同的过程中测试了空的系统工程、并成功地运行了程序。
在更改和修改项目文件后、我得出结论:如果 R5FSS0-1 的 TCMB 在中使用 HS-SE STATE、SBL OSPI 停止 bootloader_parseAndLoadMultiCoreELF 测量输出。
- SBL FS 程序在 HS-OSPI 状态下没有问题。
- 只有 R5FSS0-1 TCMB 在 SBL OSPI 引导中出现问题。
- 当我删除 R5FSS0-1 TCMB 中的初始化变量和可执行代码时、SBL OSPI 没有问题。
我附上了空系统工程的 R5FSS0-1 的简单测试代码。
empty.c (修改后的文件)
#include <stdio.h>
#include "ti_drivers_config.h"
#include "ti_drivers_open_close.h"
#include "ti_board_open_close.h"
volatile float temp_data;
// case 1 : initialized data in TCMB
float data_preset __attribute__((section(".data.TCMB"))) = {0};
// case 2 : place code in TCMB
void __attribute__((section(".text.TCMB"))) background_variable(void)
{
// make this function size not too small in order not to make this function optimized
temp_data = data_preset; temp_data = data_preset+1; temp_data = data_preset+2;
temp_data = data_preset+3; temp_data = data_preset+4; temp_data = data_preset+5;
temp_data = data_preset+6; temp_data = data_preset+7; temp_data = data_preset+8;
temp_data = data_preset+9; temp_data = data_preset+10;
}
void empty_main(void *args)
{
Drivers_open();
Board_driversOpen();
while(1)
{
background_variable();
}
Board_driversClose();
Drivers_close();
}
user.cmd (附加文件)
SECTIONS
{
.data.TCMA : {} > R5F_TCMA, palign(8)
.data.TCMB : {} > R5F_TCMB, palign(8)
.data.OCRAM : {} > OCRAM, palign(8)
.text.TCMA : {} > R5F_TCMA, palign(8)
.text.TCMB : {} > R5F_TCMB, palign(8)
.text.OCRAM : {} > OCRAM, palign(8)
}
MEMORY
{
}
案例 1 或案例 2 在 TCMB 中使用存储器。
(TCMB 中定义的未初始化数据不会产生问题。)
由于 TCMB 存储器的大小和执行速度限制、我的应用程序必须使用该存储器。
我是否可以尽快获得此问题的解决方案?
请注意、
Jeuk Chang