Part Number:AM3359Other Parts Discussed in Thread:OMAP-L138,
问:我将使用 Processor SDK RTOS 的 PDK 开发应用。如何为应用创建集成 PDK 组件的 CCS 工程?
Cherry Zhou:
答:本次以面向 AM335x 的 Processor SDK RTOS 6.3 为例进行答复。一般原理也适用于 AM437x、OMAP-L138、K2G 等其他器件。
首先,PDK 中有现成的示例 CCS 工程。这些示例使用一个或多个 PDK 组件,如 UART、I2C、GPIO 等。请参阅此常见问题解答,了解如何通过 PDK 创建示例工程。
其次,如果您要从头开始创建工程,请首先按照此常见问题解答中的说明创建 BIOS 模板 CCS 工程。然后将 PDK 组件添加到该工程中。
为了展示必要的步骤,我们将在这里创建一个在 AM3359 ICE EVM 上运行的闪烁 LED 应用。该应用将使用 PDK 1.0.17,该 PDK 是 Processor SDK RTOS 6.3 的一部分。此处附上了包含预编译可执行 .out 文件的完整工程。AM3359_ICE_blinky_led_BIOS.zip
下面列出了将 BIOS 模板工程扩展到该闪烁 LED 工程的步骤。
1.将 PDK 产品添加到该工程中(假设已将 PDK 安装到 CCS 中)。转到“Project Properties”->“General”->“Product”,然后点击“Add…”,选择“am335x PDK”和版本“1.0.17”。
2.通过添加应用将使用的 PDK 组件来更新 RTSC/XDC 配置文件 app.cfg。在本示例中,我们需要从 PDK 中添加电路板库、UART 驱动程序和 GPIO 驱动程序。请注意,我们还需要添加 UART 使用的 OSAL。
/* Load the OSAL package */
var osType = "tirtos"
var Osal = xdc.useModule('ti.osal.Settings');
Osal.osType = osType;
/*use CSL package*/
var socType = "am335x";
var Csl = xdc.loadPackage('ti.csl');
Csl.Settings.deviceType = socType;
/* Load the gpio package */
var GpioPackage = xdc.loadPackage('ti.drv.gpio');
GpioPackage.Settings.enableProfiling = false;
GpioPackage.Settings.socType = socType;
/* Load the uart package */
var UartPackage = xdc.loadPackage('ti.drv.uart');
UartPackage.Settings.socType = socType;
/* Load the board package */
var Board = xdc.loadPackage('ti.board');
Board.Settings.boardName = "icev2AM335x";
请参阅工程 zip 文件中更新的 app.cfg。
3.请注意,由于这是一个基于 BIOS 的工程,因此在将 PDK 产品添加到该工程并将 PDK 组件添加到 app.cfg 后,会自动解析编译器包含路径和链接器库路径。
4.将 SOC_AM335x 添加到编译器符号中。PDK 头文件需要该符号。
5.将 Board_init() 添加到 main() 中。
6.将 GPIO_init() 添加到 main() 中。这要求应用为 AM3359 ICE 提供 GPIO 配置。我们将使用 PDK 中的示例配置,并将源代码 pdk_am335x_1_0_17\packages\ti\drv\gpio\test\led_blink\src\am335x\GPIO_icev2AM335x_board.c 添加到该工程中。
7.使用 BIOS API 创建一个计时器。将该计时器与用于开关特定 LED 的 ISR 相关联。
8.将一个 while (1) 循环添加到 taskFxn() 中,使其一直运行。
9.可选:将 System_printf 替换为 UART_printf。
10.如果需要,通过 GEL 文件启用和配置计时器。AM3359 ICE EVM 的 CCS GEL 文件 ccs1040\ccs\ccs_base\emulation\boards\ice_am3359\gel\TMDXICE3359.GEL 不启用计时器。使用工程 zip 文件中的 GEL 文件更新 CCS 目标配置。
11.按照上述说明设置 AM3359 ICE EVM。编译工程并将可执行文件加载到 EVM 中。打开 UART 控制台并运行程序。电路板上的以太网 LED D1 应该闪烁,UART 控制台中应该显示 UART_printf 消息。