CCS:pre-build steps&post-build steps&生成bin文件

1.新建工程,生成lib库还是生成out?

生成lib库,其他工程可以链接linked

生成out文件,可以直接烧写,也可以进一步转为hex或bin文件(一般为app工程)

2.pre-build steps&post-build steps

编译前添加一些文件

编译后out转hex或bin,把一些文件copy到其他文件夹,便于其他工程进行链接

{CCS_INSTALL_ROOT} 表示CCS安装路径

{CG_TOOL_ROOT}表示cgTool安装路径

{PROJECT_LOC}表示工程路径

此截图中,out2rprc.exe放在工程文件夹下的tools/out2bin中!

3.out2rprc工具

C6748 StarterWare Booting And Flashing

The StarterWare Bootloader

The StarterWare bootloader is a platform-specific helper application that makes it easy to transition from running a StarterWare application in a debug context (i.e. in Code Composer Studio with a GEL file) to a production context (i.e. running the application automatically when the board is powered on). The bootloader acts as an intermediary between the ROM bootloader (RBL) and the application. During boot, the StarterWare bootloader takes the following actions:

  1. Applies common PLL and DDR/EMIF settings
  2. Copies application program and data sections from flash memory to DDR
  3. Jumps to application entrypoint

If the bootloader encounters an error during boot, it prints diagnostic messages to the UART console.

The StarterWare bootloader comes pre-built with the standard installation and typically does not need to be modified or rebuilt unless you want to port it to a custom hardware platform. The prebuilt binary can be found in the following location:

<StarterWare Installation Path>/binary/armv5/<toolchain>/c6748/evmC6748/bootloader/Release/boot.out

Booting a StarterWare Application

Binary Image Generation

Booting a StarterWare application requires two binary images:

  1. An AIS file containing the StarterWare bootloader
  2. A binary file containing the application

These images are generated using two separate tools, both of which are included in the tools folder of the standard StarterWare installation.

Using AISgen to Create the Bootloader AIS File

The AISgen GUI can be used to generate the StarterWare bootloader AIS file. All of the critical settings are located on the General tab of the AISgen GUI:

  • Boot Mode - Set to SPI0 Flash
  • Application File - Set to bootloader .out file
  • AIS Output File - Desired AIS file name/path

The AISgen tool has many options to configure the device at boot time, but these are generally not necessary since the StarterWare bootloader will boot very quickly and apply its own configuration immediately. The following screenshot shows the typical settings that should be specified to generate the bootloader AIS file. Simply click the Generate AIS button to create the AIS file.

StarterWare AISgen.png

NOTE 
You will typically need to generate the bootloader AIS file only once. That same AIS file can be used with any number of different applications.

Using out2rprc to Create the Application Binary

The out2rprc command line utility is used to generate the application binary image. This tool strips out the initialized sections from the executable file (i.e. *.out) and places them in a compact format that the StarterWare bootloader can understand. Generating this binary file is very simple:

$> out2rprc.exe [application].out [application].bin

The output (bin) file is typically much smaller than the original executable (out) file.

Flashing the Application

Once you have generated both binary images (i.e. the AIS and bin files described above), you are ready to flash these images to the EVM's SPI flash memory. This can be done using the standard serial flasher utility that's included in the tools folder of the standard StarterWare installation:

  1. Set the boot switches for UART2 boot (5:8 = 0011 on EVM)
  2. Run SFH from the command line:
    • $> sfh_OMAP-L138.exe -flash -targetType C6748 [bootloader].ais [application].bin
  3. Power on or reset the EVM

The SFH tool may take several minutes to complete depending on the size of the application. When SFH completes successfully, your application is ready to boot.

NOTE 
The SFH tool automatically adds simple header information to the application binary file. This header tells the bootloader basic information about the application contents, including its total size in bytes.

Booting the Application

After the binary images have been flashed to the EVM, the application is ready to boot. This is as simple as setting the boot switches for SPI0 flash boot (5:8 = 0000 on the EVM) and powering on or resetting the board.

During boot, control passes from the ROM bootloader to the StarterWare bootloader, which configures the system and loads the application. Finally, the bootloader jumps to the application entrypoint. The overall process is summarized in the following diagram.

StarterWare Boot Flow.png

out2rprc命令行实用程序用于生成应用程序二进制映像。这个工具从可执行文件(即*.out)中去掉初始化的部分,并将它们以StarterWare引导加载程序可以理解的紧凑格式放置。

out文件生成bin文件,并且把没用的部分去掉,只留有用数据

4.编译生成bin文件

CCS编译生成二进制文件方法

"${CCS_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/ofd6x" "${CG_TOOL_ROOT}/bin/hex6x" "${CCS_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

其中:ofd6x, hex6x在安装目录下, mkbex4bin在utils目录下(见最后一幅图,ccs 默认安装路劲是c:/ti/...)


如下实例:
"c:/ti/ccsv6/utils/tiobj2bin/tiobj2bin" "hello_DM8148_C67XX.out" "hello_DM8148_C67XX.bin" "c:/ti/ccsv6/tools/compiler/c6000_7.4.8/bin/ofd6x" "c:/ti/ccsv6/tools/compiler/c6000_7.4.8/bin/hex6x" "c:/ti/ccsv6/utils/tiobj2bin/mkhex4bin"
 

  • 3
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值