OMAP-L138_FlashAndBootUtils使用及编译指导
摘要
本文介绍OMAP-L138_FlashAndBootUtils工具包基本框架和串口烧写工具sfh_OMAP-L138.exe工作原理,使用方法,以及针对客户的硬件如何修改代码,搭建编译环境并重新编译,并总结了使用该工具的常见问题。
简介
OMAP-L138支持多种启动模式,包括 SPI,NAND,NOR等。TI为用户提供了两套 flash烧写工具:
(1) 使用 TI 在 PSP 包或 OMAP-L138_FlashAndBootUtils 包中提供的 flash writer 的 CCS工程,通过仿真器连接硬件板,按照提示步骤烧写 flash。
(2) 使用 OMAP-L138_FlashAndBootUtils工具包中的串口烧写工具(如 sfh_OMAP-L138.exe),通过串口连接,进行命令行烧写。
本文接下来将针对第二种方式进行详细介绍。
用户可以从开源网站上下载最新的 OMAP-L138_FlashAndBootUtils版本[1]。最新的版本为 OMAPL138_FlashAndBootUtils_2_40,本文以此版本展开讨论。
OMAP-L138_FlashAndBootUtils_2_40工具包支持 TI公司的多种芯片平台的 flash烧写,包括 OMAPL138,AM1808,C6748等。工具包内的代码是对应 LogicPD的 OMAL138/AM1808 EVM板的。如果用于用户自己的硬件板,可能需要修改工具包中相应代码并重新编译。
该工具包中包括多种 flash工具及代码。主要目录如表 1所示。
表 1 OMAP-L138_FlashAndBootUtils_2_40工具包目录结构
1. 串口烧写工具 sfh_OMAP-L138.exe的工作原理
sfh_OMAP-L138是 OMAP-L138_FlashAndBootUtils包中用于实现串口烧写 flash的应用程序。与UartHost.exe[3]工具不同,UartHost.exe是 UART启动工具,不能烧写 flash。
运行 sfh_OMAP-L138.exe时,通过 UART启动方式下载并运行 OMAPL138/GNU/sft目录下的 AIS格式 bin文件,完成芯片的初始化操作。然后通过 UART与 sfh进行命令交换,实现 flash的擦除和烧写工作。
从 OMAP-L138/GNU/sft/build目录中的 makefile文件可知,编译 sft目录内各 bin文件时需要 sft.c,device.c,uart.c以及针对不同 flash对应的 flash初始化文件。
例如 sft_OMAPL138_SPI_MEM.bin是由 sft.c,device.c,uart.c等文件与 spi.c,spi_mem.c,device_spi.c一起编译,并通过 OMAP-L138/GNU/AISUtils目录下的 HexAIS_OMAP-L138.exe,根据 sft目录下的配置文件sft_hexais.ini内的配置信息,将.out文件转换成 AIS格式的.bin文件。
2. 命令格式介绍
在命令行下输入 sfh_OMAP-L138.exe –help输出命令格式说明如下:
sfh_OMAP-L138 《Command》 [-targetType 《Target》] [-flashType 《FlashType》] [《Options》] [《InputFiles]各参数说明如下表所示,targetType默认为 OMAP-L138,FlashType默认为 SPI_MEM。使用默认选项时相应参数可以不输入。
3. sfh_OMAPL138.exe常用命令的使用
sfh_OMAPL138.exe常用命令如表 2所示。
表 2 sfh_OMAPL138.exe常用命令表
以 SPI flash启动为例,准备如下文件:
l l sfh_OMAPL138.exe,来源于 OMAP-L138_FlashAndBootUtils_2_40工具包。
l l ubl-spi_ais.bin,来源于 OMAP-L138_FlashAndBootUtils_2_40工具包。
l l u-boot.bin,来源于 SDK PSP目录下的 UBoot。
l l u-boot-ais.bin,由 UBoot编译出的 elf格式文件 u-boot,通过 AIS转换工具生成。
首先将 OMAL138/AM1808 EVM板设置为 UART2启动模式,S7开关设置如图 1所示。 用直连串口线连接 PC与EVM板,打开 EVM板电源。在命令行模式下进入目录:OMAP-L138_FlashAndBootUtils_2_40\OMAPL138\GNU。
图 1 S7开关设置
3.1全局擦除 flash命令
sfh_OMAPL138.exe –targetType OMAP-L138 –flashType SPI_MEM –erase
图 2 sfh_OMAPL138.exe –erase命令运行界面
运行结果如图 2所示,如果是先上电,后执行该命令,则需要按下板子上的 reset键输出 "BOOTME"给上位机的sfh。
3.2烧写单个 AIS格式的应用程序
sfh_OMAP-L138.exe –targetType OMAP-L138 –flashType SPI_MEM -flash_noubl u-boot-ais.bin
OMAP-L138的 RBL支持 AIS格式,可以在启动过程中通过 AIS格式文件中的配置信息初始化芯片,如 PLL,DDR等。这样就可以直接将程序加载到片外内存,而不受片上内存大小限制,省略二级 Boot。
编译 UBoot时,在 UBoot根目录下会生成一个 elf格式的 u-boot文件,如图 3所示,在 AISgen.exe工具里添加 PLL,DDR等配置参数,将此文件转换成 AIS格式的 bin文件,可以直接烧写并启动。
- LT3751如何使高压电容器充电变得简单(08-12)
- 三路输出LED驱动器可驱动共阳极LED串(08-17)
- 浪涌抑制器IC简化了危险环境中电子设备的本质安全势垒设计(08-19)
- 严酷的汽车环境要求高性能电源转换(08-17)
- 适用于工业能源采集的技术 (08-10)
- 单片式电池充电器简化太阳能供电设计(08-20)