This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS:CCS、PDK、GPIO、RTOS、裸机、 evmK2G

Guru**** 2035740 points
Other Parts Discussed in Thread: SYSBIOS
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/572715/ccs-ccs-pdk-gpio-rtos-bare-metal-evmk2g

主题中讨论的其他器件:EVMK2GSYSBIOS

工具/软件:Code Composer Studio

您好!

在新安装 CSS 6.1.3后、为的 evmK2G 和测试用例生成安装了新的 PDK

GPIO_LedBlink_evmK2G_armTestProject

我遇到2个错误:

RTOS 模式中的第一个错误:

在不修改任何代码的情况下、XDS2xx USB 调试附带:

CortexA15:读取长度0x4的第0页上0x8000000处的存储块时出现问题:(错误-1205 @ 0x8000000)设备存储器总线有错误、可能挂起。 验证内存地址是否在有效内存中。 如果错误仍然存在、请确认配置、对电路板进行下电上电和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真包6.0.504.4)

CortexA15:文件加载程序:验证失败:目标读取0x8000000失败

CortexA15:GEL:文件:C:\ti\pdk_k2g_1_0_4\packages\MyExampleProjects\GPIO_LedBlink_evmK2G_armTestProject\Debug\GPIO_LedBlink_evmK2G_armTestProject.out:加载失败。

CortexA15:无法终止内存下载:0x3aa4处的缓冲区指针为空

按照此处的定义设置 pdk_raW_boot 后、我会收到相同的错误:

http://processors.wiki.ti.com/index.php/Processor_SDK_RTOS_DIAG#Running_or_debugging_on_CCS

 

裸机模式下的第二个错误:

设置后

#define Bare_METAL 0x1

在 main_led_blink.c 的开头、我得到以下错误:

 

****项目 GPIO_LedBlink_evmK2G_armTestProject 的配置调试构建****

 

"C:\\ti\\ccsv6\\utils\\bin\\gmake"-k all

'生成文件:C:/ti/pdk_k2g_1_0_4/packages/ti/drv/gpio/test/led_blink/src/main_led_blink.c '

'调用:GNU 编译器'

"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_9-2015q3/bin/arm-none-eabi-gcc.exe /ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_9-2015q3/arm-none-eabi/include "-c -mcpu=cortex-a15 -mtune =cortex-a15 -marm -mfloat-abi=hard -dk2g02 -darm0 -dSOC_K2G -demm_k2g -i"C:/ti/pdk_k2g_1_0_4/packages/ti/drv/gpio @/ti/pdk_k2g_1_0_4/packages/ti/drv/gpio/test/led_blink/src/main_led_blink.c -i"C:/ti/pdk_k2g_1_0_4/packages -i"/packages"-i="C:dwarrand"-dmf-bind_md -md -gmd -blink -md -gmd -gmd -gmd -bind"-gmd -gmd -md -md -fb -gmd -gmd -md -bind"-gmd -gmd -gmd -compild"-t"-t"-t"-gmf-bind"-gmf-

C:/ti/pdk_k2g_1_0_4/packages/ti/drv/gpio/test/led_blink/src/main_led_blink.c:158:6:警告:'main'的返回类型不是'int'[-Wmain]

void main()

    ^μ A

C:/ti/pdk_k2g_1_0_4/packages/ti/drv/gpio/test/led_blink/src/main_led_blink.c:在函数'main'中:

C:/ti/pdk_k2g_1_0_4/packages/ti/drv/gpio/test/led_blink/src/main_led_blink.c:212:5:警告:函数'Task_exit'的隐式声明[-Wimplicit-function-declaration]

    Task_exit();

    ^μ A

'完成的建筑:C:/ti/pdk_k2g_1_0_4/packages/ti/drv/gpio/test/led_blink/src/main_led_blink.c '

'

'构建目标:GPIO_LedBlink_evmK2G_armTestProject.Out'

'调用:GNU 连接器'

"c:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_9-2015q3/bin/arm-none-eabi-gcc.exe -mfloat-abi=hard -dk2g02 -darm0 -dscc_k2G -DEVM_K2G -g -gdwarf-3 -gstrict-dwarf -Wall -cmd、-map、"gpio_ledBlink_evmke_armTestProject.map"-node-gr、-lwl、-ram_ram_ram_cl-status-l-rwl、-rwl、-rwl /ti/bios_6_46_01_38/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu、-rgpf-nem-rwl /packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu、-rwl、-rwl、-rwl、-rwl、-ldem-rwl、-rwl、-rgpf-ngpl、-rwl、-rwl、-rwl、-rwl、-ldem-rm、-rwl、-rwl、-rwl、-ldem-rwl、-rwl、-ldem-rwl、-rwl、-rgpf-ngpf-ngpf-

Makefile:146:目标'GPIO_LedBlink_evmK2G_armTestProject.out'的配方失败

C:\ti\pdk_k2g_1_0_4\packages/MyExampleProjects\GPIO_LedBlink_evmK2G_armTestProject\Debug\configPkg\packages\cfg\GPIO_ARM_pa15fg.oa15fg:(.data.ti_SYSBIOS_KNL_Task_Object_Table_____GET_v_test `0x28)未定义:

collect2.exe:错误:LD 返回1退出状态

Gmake:***[GPIO_LedBlink_evmK2G_armTestProject.out]错误1.

gmake:目标"全部"不会由于错误而重新生成。

 

****构建完成****

 

 

请尝试提供帮助。 谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、MotorControl、

    我已将此内容转发给软件专家。 他们的反馈应发布在此处。

    BR
    Tsvetolin Shulev
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    下面是我对第一个错误的回答。 报告错误的存储器位置是指此器件上的外部存储器或 DDR3地址空间。 它向我指示您的 DDR 可能未初始化。 n`t 连接到平台时、是否有可能运行 GEL 初始化脚本?

    下面介绍了使用 CCS 连接到 EVM 硬件的过程:

    请务必将 EVM 设置为无引导模式(检查 LCD 屏幕以进行确认)、并在目标配置中选择目标作为 EVMK2G。 当您连接到内核时、您将在 IO 窗口中看到时钟被初始化、并且 DDR EMIF 配置和时钟被配置为允许外部存储器使用。

    n`t 第二个问题、即 GPIO 驱动程序随附的示例、通过定义宏、这些示例不能简单地以裸机形式运行。 这是因为、该示例默认包含一个.cfg 文件、该文件指定一些 TI RTOS/SYSBIOS 设置。 若要以裸机形式编译示例、需要在编译器中添加"Bare_metal"宏、并删除 Project Properties 下的"use_BIOS"宏、如下所示:

    然后、您需要注释掉 以下代码行、这些代码行将 GPIO_test 定义为 TI RTOS 的操作系统任务:

    /*========================= 任务配置=================== */*var
    task0Params =新建 Task.Params();
    task0Params.instance.name ="ECHO";
    task0Params.STACKSIZE = 0x1000;
    Program.global.echo = Task.create ("&GPIO_test"、task0Params);*/ 

    您现在可以编译并运行该示例、而无需将其作为 TI RTOS 任务运行。

    请注意、这些作为 LLD 驱动程序一部分包含的示例主要构建为作为 TI RTOS 示例而不是裸机示例运行。 对于裸机 LLD 驱动程序的使用、您需要参阅路径 pdk_k2g_1_0_4\packages/ti\board\diag 下的诊断示例

    请告诉我们这是否可以解决您在使用软件时看到的问题。

    此致、

    Rahul