基于eCos操作系統的FLASH驅動(dòng)程序分析與移植
3.3 修改eCos硬件抽象層中FLASH和SRAM的配置信息以及FLASH設備驅動(dòng)程序
不同的兩塊開(kāi)發(fā)板所采用的芯片,特別是FLASH芯片有可能是不一樣的。由于為無(wú)人機專(zhuān)門(mén)設計開(kāi)發(fā)的目標板使用的是Inter公司的TE28F320的FLASH芯片,與Arca公司使用的FLASH驅動(dòng)程序不一樣,必須修改FLASH驅動(dòng)及FLASH和SRAM的配置信息。
(1)SRAM布局文件修改如下:本文引用地址:http://dyxdggzs.com/article/152193.htm
(3)FLASH驅動(dòng)程序FLASH_28fxxx.inl文件中的數據定義修改如下:
(4)修改平臺抽象層文件plf_hci.h文件
由于目標開(kāi)發(fā)板上沒(méi)有采用EEPROM和HCI(硬件配置接口)的方式存儲系統硬件信息,而是采用在eCos平臺抽象層中把開(kāi)發(fā)板上的硬件信息靜態(tài)存儲在文件中。在平臺抽象層文件plf_hci.h中修改如下:
4 驅動(dòng)測試
4.1 Redboot簡(jiǎn)介
Redboot是一個(gè)標準的嵌入式系統引導和Debug環(huán)境,是基于eCos的一個(gè)應用程序,使用eCos的硬件抽象層作為它的基礎。內含GDBstub,允許從應用程序調試的GDB宿主機鏈接目標平臺,通過(guò)串口或網(wǎng)口進(jìn)行調試。既可以用在產(chǎn)品的開(kāi)發(fā)階段(調試功能),也可以用在最終的產(chǎn)品上。
4.2 系統測試結果
使用eCos圖形配置工具對修改好的eCos硬件抽象象層和FLASH設備驅動(dòng)程序進(jìn)行裁剪,并用串口進(jìn)行系統測試,通過(guò)minicom顯示Redboot運行的FLASH和SRAM地址結果如圖5所示。
5 結語(yǔ)
本文通過(guò)裁剪和移植FLASH驅動(dòng)程序到目標開(kāi)發(fā)板上,展示上具體的修改硬件抽象層和設備驅動(dòng)程序代碼方法。通過(guò)實(shí)際裁剪,配置一個(gè)具有實(shí)際應用價(jià)值的Redboot,對于嵌入式技術(shù)的學(xué)習和應用具有現實(shí)的意義。本文的難點(diǎn)在于eCos硬件抽象層和設備驅動(dòng)程序源代碼的理解和修改。
評論