TI中文支持网
TI专业的中文技术问题搜集分享网站

IWR1642: IWR1642 SBL

Part Number:IWR1642

你好,我有看到lab0012_can_sbl里面有一个1843的CAN BOOTLOADER例程,我要如何才能将它改成1642能用的CAN bootloader例程呢?

Shine:

可以尝试把sbl_xwr18xx.c文件用sbl_xwr16xx.c文件替代,再重新编译。

,

user4861090:

谢谢,其实是主要我不知道如何把1843的工程环境环境改成1642的工程环境~~只替换C文件,无法编译通过。

以下是我的尝试步骤:

1.将sbl_xwr18xx.c文件用sbl_xwr16xx.c文件替代,编译后提示一些1642的宏定义没有,如SOC_XWR16XX_MSS_EXT_FLASH_BASE_ADDRESS。

2.我将properties->predefined中SOC_XWR18XX改成了SOC_XWR16XX,properties->general->variant 中的1843改成了1642,

在将transport.c中1843的关于CAN的引脚初始化先注释掉。再编译提示以下错误,我就不知道该怎么修改了。

"../xwr1642_r4f.cmd", line 18: error #10263: VECTORS memory range has already been specified"../xwr1642_r4f.cmd", line 18: error #10264: VECTORS memory range overlaps existing memory range VECTORS"../xwr1642_r4f.cmd", line 19: error #10263: PROG_RAM memory range has already been specified"../xwr1642_r4f.cmd", line 19: error #10264: PROG_RAM memory range overlaps existing memory range PROG_RAM"../xwr1642_r4f.cmd", line 20: error #10263: DATA_RAM memory range has already been specified"../xwr1642_r4f.cmd", line 20: error #10264: DATA_RAM memory range overlaps existing memory range DATA_RAMwarning #10278-D: LOAD placement specified for section ".text:decompress:none:__TI_decompress_none:rtsv7R4_T_le_v3D16_eabi.lib<copy_decompress_none.c.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY").warning #10278-D: LOAD placement specified for section ".text:rtsv7R4_T_le_v3D16_eabi.lib<memcpy_t2.asm.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY").warning #10278-D: LOAD placement specified for section ".text:decompress:ZI:__TI_zero_init_nomemset:__TI_zero_init_nomemset:rtsv7R4_T_le_v3D16_eabi.lib<copy_zero_init.c.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY").warning #10278-D: LOAD placement specified for section ".text:decompress:ZI:__TI_zero_init:rtsv7R4_T_le_v3D16_eabi.lib<copy_zero_init.c.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY").warning #10278-D: LOAD placement specified for section ".text:rtsv7R4_T_le_v3D16_eabi.lib<memset_t2.asm.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY").warning #10278-D: LOAD placement specified for section ".text:decompress:lzss:__TI_decompress_lzss:rtsv7R4_T_le_v3D16_eabi.lib<copy_decompress_lzss.c.obj>". This section contains decompression routines required for linker generated copy tables and C/C++ auto-initialization. Must ensure that this section is copied to run address before the C/C++ boot code is executed or is placed with single allocation specifier (ex. "> MEMORY").warning #10247-D: creating output section "systemHeap" without a SECTIONS specification undefined first referenced symbol in file ——— —————- _appVecs ./sbl.obj error #10234-D: unresolved symbols remainerror #10010: errors encountered during linking; "can_sbl18xx_mss.xer4f" not built >> Compilation failuremakefile:170: recipe for target 'can_sbl18xx_mss.xer4f' failedgmake[2]: *** [can_sbl18xx_mss.xer4f] Error 1makefile:166: recipe for target 'main-build' failedgmake[1]: *** [main-build] Error 2makefile:161: recipe for target 'all' failedgmake: *** [all] Error 2

**** Build Finished ****

,

Shine:

1. transport.c里的管脚配置用下面的代码代替

/* Setup the PINMUX to bring out the XWR16xx CAN pins */Pinmux_Set_OverrideCtrl(SOC_XWR16XX_PINE14_PADAE, PINMUX_OUTEN_RETAIN_HW_CTRL, PINMUX_INPEN_RETAIN_HW_CTRL);Pinmux_Set_FuncSel(SOC_XWR16XX_PINE14_PADAE, SOC_XWR16XX_PINE14_PADAE_CANFD_TX);

Pinmux_Set_OverrideCtrl(SOC_XWR16XX_PIND13_PADAD, PINMUX_OUTEN_RETAIN_HW_CTRL, PINMUX_INPEN_RETAIN_HW_CTRL);Pinmux_Set_FuncSel(SOC_XWR16XX_PIND13_PADAD, SOC_XWR16XX_PIND13_PADAD_CANFD_RX);2. 用\labs\lab0012_can_sbl\src\ mss_can_sbl_linker.cmd文件代替xwr1642_r4f.cmd

,

user4861090:

可以了,谢谢

赞(0)
未经允许不得转载:TI中文支持网 » IWR1642: IWR1642 SBL
分享到: 更多 (0)