Thread 中讨论的其他器件:SYSBIOS
工具/软件:Code Composer Studio
您好!
我不熟悉 Code Composer、Sitara 和 TI-RTOS。 为了了解如何配置 SO 和 Sitara 外设、我希望创建一个基本程序来编写一条消息、发送 ICE v2 AM335x UART。
我以 SYS/BIOS 最小示例作为项目的起点。 ccs6中的项目配置:
从一开始、我就遇到了大量问题、需要将外设驱动程序添加到项目中。 尽管我包含 了 RTOS 指南中提到的头文件、 但由于'Undefined reference to Board_init'错误、我无法编译。
由于 TI-RTOS 和 Sitara 配置没有太多信息、我需要花一些时间来确定、我不得不在.cfg 文件中添加对驱动程序的引用。 不仅限于指南中提到的那些(板和 UART)、还包括 OSAL 和 CSL 封装。 我通过阅读文章找到了这里!! 没有车间或指南提到这一点!!
加载这些软件包后、由于某些 I2C 和 UART 的"未定义引用"、我仍然有编译问题、在某些时候、这些问题已得到解决。 老实说,我不确定如何... 可能是我将软件包添加到.cfg 文件中的顺序??
读取 此帖子的晶圆 我向 MMU 和高速缓存添加了 sport。
那么、现在 mi .cfg 文件看起来像这样:
/*========================= 高速缓存和 MMU 配置=================== *
VAR Cache = xdc.useModule('ti.sysbios.family.arm.a8.Cache');
cache.enableCache = true;
VAR MMU = xdc.useModule('ti.sysbios.family.arm.a8.Mmu');
MM4.enableMMU = true;
/*强制外设部分为不可高速缓存的严格排序存储器*/
VAR 外设 Attrs ={
键入:MMU.FirstLevelDesc_section,//段描述符
TEX:0、
可缓冲:false,//可缓冲
可高速缓存:false,//可高速缓存
可共享:false,//可共享
NoExecute:true,//不可执行
};
/*定义外设所在的1Meg 页的基址。 *
VAR 外设 BaseAddr = 0x44e00400;
/*相应地配置相应的 MMU 页描述符*/
Mmu.setFirstLevelDescMeta(peripheralBaseAddr、
peripheralBaseAddr、
peripheralAttrs);
/*定义外设所在的1Meg 页的基址。 *
VAR 外设 BaseAddr = 0x481a6000;
/*相应地配置相应的 MMU 页描述符*/
Mmu.setFirstLevelDescMeta(peripheralBaseAddr、
peripheralBaseAddr、
peripheralAttrs);
****项目 pdk_Drivers_Test_ICEv2AM3359的配置调试构建****
"C:\\ti\\ccsv6\\utils\\bin\\gmake"-k all
'生成文件:./app.cfg '
'调用:XDCtools '
"C:/ti/xdctools_3_32_01_22_core/xs "--xdcpath="C:/ti/bios_6_46_04_53/packages;C:/ti/pdk_am335x_1_0_6/packages;C:/ti/uia_2_20_00_02/packages;C:/ti/ccsv6/ccs_base;" xdc.tools.configuro -o configPkg -t GNU.targets.arm.A8F -p ti.platforms.evmAM3359 -r release -c "C:/ti/gcc-arm-none-eabi-4_9-2015q3 "..app.cfg
正在制作 package.mak (由于 package.bld)...
正在为软件包 configPkg 生成接口(因为 package/package.xdc.inc 比 package.XDC 旧)...
从 package/cfg/app_pa8fg.cfg 配置 app.xa8fg ...
正在生成自定义 ti.sysbios 库 makefile ...
链接库 ti.board:./lib/icev2AM335x/a8/release/ti.board.aa8fg
链接库 ti.drv.gpio:./lib/a8/release/ti.drv.gpio.profiling.aa8fg
链接库 ti.drv.i2c:./lib/am335x/a8/release/ti.drv.i2c.aa8fg
链接库 ti.drv.UART:./lib/am335x/a8/release/ti.drv.uart.aa8fg
链接库 ti.csl:./lib/am335x/a8/release/ti.csl.aa8fg
链接库 ti.osal:/lib/tirtos/a8/release/ti.osal.aa8fg
正在开始构建库源...
制作 C:/ti/blink_ICE_test/PDK_Drivers_Test_ICEv2AM3359/src/sysbios/sysbios.aa8fg ...
gmake[1]:输入目录`C:/ti/blink_ICE_test/PDK_Drivers_Test_ICEv2AM3359/src/sysbios
asma8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/IntrinsicsSupport_asm_gnu.asm……
asma8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/TaskSupport_asm_gnu.asm……
asma8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/Cache_asm_gnu.sv7A……
asma8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/Mmu_asm_gnu.sv7A……
asma8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/TimestampProvider_asm_gnu.sv7A……
asma8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/timers/dmtimer/Timer_asm_gnu.sv7A……
asma8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/intcps/Hwi_asm_gnu.sv7A……
asma8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/exc/Exception_asm_gnu.asm……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/BIOS.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/IntrinsicsSupport.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/TaskSupport.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/knl/Clock.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/knl/Idle.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/knl/Intrinsics.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/knl/Queue.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/knl/Semaphore.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/knl/Swi.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/knl/Swi_andn.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/knl/Task.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/Cache.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/Mmu.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/TimestampProvider.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/hal/Cache.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/hal/Core.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/hal/CoreNull.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/hal/Hwi.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/hal/Hwi_stack.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/hal/Hwi_startup.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/timers/dmtimer/Timer.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/ti81xx/TimerSupport.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/gates/GateHwi.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/gates/GateMutex.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/a8/intcps/Hwi.c……
cla8fg C:/ti/bios_6_46_04_53/packages/ti/sysbios/family/arm/exc/Exception.c……
ara8fg arm_intrinsicsSupport_asm_ng.o arm_TaskSupport_asm_ng.o A8_cache_asm_ng.o A8_MMU_asmu_gnu.o A8_TimestampProvider_as_asm_rgng.o dmor_gmtask_ge_ngc.o tincru.o tine_ngam.o tinu.o rfu.o rgam_zh_clu.o tinu.o ngu.h inu.h incru.o h ngam_zh_clu.o h inu.o h inu.o h inu.h inu.o h inu.h inu.h
gmake[1]:离开目录`C:/ti/blink_ICE_test/PDK_Drivers_Test_ICEv2AM3359/src/sysbios
已完成库构建。
cla8fg 封装/cfg/app_pa8fg.c……
'完成构建:./app.cfg '
'
1个弓形活体(copiado)。
正在制作./src/sysbios/sysbios.aa8fg ...
gmake[1]:输入目录'C:/ti/blink_ICE_test/PDK_Drivers_Test_ICEv2AM3359/src/sysbios
gmake[1]:没有为"全部"执行任何操作。
gmake[1]:离开目录'C:/ti/blink_ICE_test/PDK_Drivers_Test_ICEv2AM3359/src/sysbios
'生成文件:./main.c'
'调用:GNU 编译器'
"c:/ti/gcc-arm-none-eabi-4_9-2015q3/bin/arm-none-eabi-gcc.exe "-c -mcpu=cortex-A8 -mtun=cortex-A8 -March =armv7-a -marm -mfloat-abi=hard -mcpu=neon -Dam3359 -Dicev2AM335x -DSOC_AM335x -DBUILDCFG_MD_UART -i"c:mf-nex"-mpr-md /ti/gcc-arm-none-eabi-4_9-2015q3/arm-none-eabi/include -md -md -md -md -mc"-mc"-mcr -mcr -md -mpru.g"-md -md -md -md -md -md -md -md -md -md -md -md -md -md -md -m @/ti/pdk_am335x_1_0_6/packages
'完工建筑:./main.c'
'
'构建目标:pdk_Drivers_Test_ICEv2AM3359.OUT'
'调用:GNU 连接器'
"c:/ti/gcc-arm-none-eabi-4_9-2015q3/bin/arm-none-eabi-gcc.exe -mcpu=cortex-A8 -March =armv7-a -marm -mfloat-abi=hard -mfpu=neon -Dam3359 -Dicev2AM335x -DScm_AM335x -DBUILDCFG_MOD_UART -g -gdwarf-3 -gstrict-dwarf-dwl -dwl -dicht -dicht /ti/bios_6_46_04_53/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu -wlm -m-t/cn/semdich-inchinese-t-m.clus-m-m-m-nick-m-m.ldempf-nick-m-m-m-m-m.clus-m-m-m-m-m-m-m.clus-m-m-m-m-m-m.ldempf-nick-m-m-m-m-m-m-m-m.clus-m-m-m-m-m-m-m-m-m-m-m.ldempf-nich-m.ldse-v-m-m.
'完成的构建目标:pdk_Drivers_Test_ICEv2AM3359.OUT"
'
****构建完成****
这是当我在电路板中运行程序时的 ROV 报告:
、emaphoreP_tirtos.c"、第131行:错误{id:0x10000、args:[0x800157a4、0x800157a4]}
xdc.runtime.Error.raise:终止执行
对正在发生什么情况有什么想法???
