<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > OMAP-L138_FlashAndBootUtils使用及編譯指導(dǎo)

          OMAP-L138_FlashAndBootUtils使用及編譯指導(dǎo)

          作者: 時(shí)間:2013-06-06 來(lái)源:網(wǎng)絡(luò) 收藏

          摘要

          本文引用地址:http://www.ex-cimer.com/article/148019.htm

          本文介紹OMAP-L138_FlashAndBootUtils工具包基本框架和串口燒寫工具sfh_OMAP-L138.exe工作原理,使用方法,以及針對(duì)客戶的硬件如何修改代碼,搭建編譯環(huán)境并重新編譯,并總結(jié)了使用該工具的常見問(wèn)題。

          關(guān)鍵字:,,

          簡(jiǎn)介

          OMAP-L138支持多種啟動(dòng)模式,包括 SPI,NAND,NOR等。TI為用戶提供了兩套 flash燒寫工具:

          (1) 使用 TI 在 PSP 包或 OMAP-L138_FlashAndBootUtils 包中提供的 flash writer 的 CCS工程,通過(guò)仿真器連接硬件板,按照提示步驟燒寫 flash。

          (2) 使用 OMAP-L138_FlashAndBootUtils工具包中的串口燒寫工具(如 sfh_OMAP-L138.exe),通過(guò)串口連接,進(jìn)行命令行燒寫。

          本文接下來(lái)將針對(duì)第二種方式進(jìn)行詳細(xì)介紹。

          用戶可以從開源網(wǎng)站上下載最新的 OMAP-L138_FlashAndBootUtils版本[1]。最新的版本為 _FlashAndBootUtils_2_40,本文以此版本展開討論。

          OMAP-L138_FlashAndBootUtils_2_40工具包支持 TI公司的多種芯片平臺(tái)的 flash燒寫,包括 ,AM1808,C6748等。工具包內(nèi)的代碼是對(duì)應(yīng) LogicPD的 OMAL138/AM1808 EVM板的。如果用于用戶自己的硬件板,可能需要修改工具包中相應(yīng)代碼并重新編譯。

          該工具包中包括多種 flash工具及代碼。主要目錄如表 1所示。

          表 1 OMAP-L138_FlashAndBootUtils_2_40工具包目錄結(jié)構(gòu)

          QQ截圖20130606133513.jpg

          1.工具 sfh_OMAP-L138.exe的工作原理

          sfh_OMAP-L138是 OMAP-L138_FlashAndBootUtils包中用于實(shí)現(xiàn)串口燒寫 flash的應(yīng)用程序。與UartHost.exe[3]工具不同,UartHost.exe是 UART啟動(dòng)工具,不能燒寫 flash。

          運(yùn)行 sfh_OMAP-L138.exe時(shí),通過(guò) UART啟動(dòng)方式下載并運(yùn)行 OMAPL138/GNU/sft目錄下的 AIS格式 bin文件,完成芯片的初始化操作。然后通過(guò) UART與 sfh進(jìn)行命令交換,實(shí)現(xiàn) flash的擦除和燒寫工作。

          從 OMAP-L138/GNU/sft/build目錄中的 makefile文件可知,編譯 sft目錄內(nèi)各 bin文件時(shí)需要 sft.c,device.c,uart.c以及針對(duì)不同 flash對(duì)應(yīng)的 flash初始化文件。

          例如 sft_OMAPL138_SPI_MEM.bin是由 sft.c,device.c,uart.c等文件與 spi.c,spi_mem.c,device_spi.c一起編譯,并通過(guò) OMAP-L138/GNU/AISUtils目錄下的 HexAIS_OMAP-L138.exe,根據(jù) sft目錄下的配置文件sft_hexais.ini內(nèi)的配置信息,將.out文件轉(zhuǎn)換成 AIS格式的.bin文件。

          2. 命令格式介紹

          在命令行下輸入 sfh_OMAP-L138.exe –help輸出命令格式說(shuō)明如下:

          sfh_OMAP-L138 [-targetType ] [-flashType ] [] [

          QQ截圖20130606133623.jpg

          3. sfh_OMAPL138.exe常用命令的使用

          sfh_OMAPL138.exe常用命令如表 2所示。

          表 2 sfh_OMAPL138.exe常用命令表

          QQ截圖20130606133745.jpg

          以 SPI flash啟動(dòng)為例,準(zhǔn)備如下文件:

          sfh_OMAPL138.exe,來(lái)源于 OMAP-L138_FlashAndBootUtils_2_40工具包。

          ubl-spi_ais.bin,來(lái)源于 OMAP-L138_FlashAndBootUtils_2_40工具包。

          u-boot.bin,來(lái)源于 SDK PSP目錄下的 UBoot。

          u-boot-ais.bin,由 UBoot編譯出的 elf格式文件 u-boot,通過(guò) AIS轉(zhuǎn)換工具生成。

          首先將 OMAL138/AM1808 EVM板設(shè)置為 UART2啟動(dòng)模式,S7開關(guān)設(shè)置如圖 1所示。 用直連串口線連接 PC與EVM板,打開 EVM板電源。在命令行模式下進(jìn)入目錄:OMAP-L138_FlashAndBootUtils_2_40OMAPL138GNU。

          QQ截圖20130606133910.jpg

          3.1全局擦除 flash命令

          sfh_OMAPL138.exe –targetType OMAP-L138 –flashType SPI_MEM –erase

          QQ截圖20130606134033.jpg

          運(yùn)行結(jié)果如圖 2所示,如果是先上電,后執(zhí)行該命令,則需要按下板子上的 reset鍵輸出 “BOOTME”給上位機(jī)的sfh。

          3.2燒寫單個(gè) AIS格式的應(yīng)用程序

          sfh_OMAP-L138.exe –targetType OMAP-L138 –flashType SPI_MEM -flash_noubl u-boot-ais.bin

          OMAP-L138的 RBL支持 AIS格式,可以在啟動(dòng)過(guò)程中通過(guò) AIS格式文件中的配置信息初始化芯片,如 PLL,DDR等。這樣就可以直接將程序加載到片外內(nèi)存,而不受片上內(nèi)存大小限制,省略二級(jí) Boot。

          編譯 UBoot時(shí),在 UBoot根目錄下會(huì)生成一個(gè) elf格式的 u-boot文件,如圖 3所示,在 AISgen.exe工具里添加 PLL,DDR等配置參數(shù),將此文件轉(zhuǎn)換成 AIS格式的 bin文件,可以直接燒寫并啟動(dòng)。

          QQ截圖20130606134737.jpg

          圖 3 AISgen 配置界面

          該命令將 AIS格式的 UBoot文件寫到 flash的起始地址。命令執(zhí)行顯示結(jié)果如圖 4所示:重新上電,從圖 5啟動(dòng)信息可見沒有 的運(yùn)行信息,是直接從 UBoot運(yùn)行的。


          上一頁(yè) 1 2 3 4 下一頁(yè)

          關(guān)鍵詞: OMAPL138 串口燒寫 UBL

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();