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