- 相關推薦
BSP 系統(tǒng)的設計與實現(xiàn)分析論文
1 BSP 系統(tǒng)設計的意義
前置機通信板使用ARM 微處理器,通過兩路以太網(wǎng)口利用安全通信協(xié)議實現(xiàn)與聯(lián)鎖機的通信,通過兩路CAN 總線實現(xiàn)與電子執(zhí)行單元的通信,提供8 個LED 燈位來實時顯示各種工作狀態(tài),利用上電初始化時讀取背板地址來動態(tài)設置兩通道的IP 地址,并能夠以主備方式工作。
2 系統(tǒng)的設計與實現(xiàn)
2.1 VxWorks 系統(tǒng)的主要性能特點
VxWorks 系統(tǒng)所需要的存儲空間最小要8KB(ROM),具有極好的可伸縮性;支持中斷驅(qū)動的優(yōu)先級搶占式調(diào)度和時間片輪轉(zhuǎn)調(diào)度,并具有確定的、快速的上下文切換能力;支持信號燈、消息隊列、管道、信號和套接字等進程間通信和互斥手段;支持諸如Ring、buffer、linklist 等共享內(nèi)存技術;確定的微秒級的中斷響應時間;支持使用于多種物理介質(zhì)的TCP/IP 協(xié)議簇和幾乎所有常用的基于TCP/IP 的應用層協(xié)議;快速靈活的I/O 系統(tǒng);支持多種文件系統(tǒng)。
2.2 BSP 開發(fā)流程
BSP 的開發(fā)需要一個與目標板硬件環(huán)境相近的參考BSP 和相關代碼模板,從而本文中的目標板是在公司已有的聯(lián)鎖機三取二主板的BSP 基礎上,進行的二次開發(fā)。開發(fā)環(huán)境的建立,主要是以目標板BSP 文件為模版在Tornado 安裝的target config 目錄下創(chuàng)建用戶BSP 目錄bspname,把Tornado target config 下文件和BSP模版文件拷貝到該目錄下。根據(jù)目標板的不同功能對配置文件、寄存器和引腳、內(nèi)存地址映射、makefile 文件和相關驅(qū)動程序等進行配置和修改。根據(jù)具體需要在命令行環(huán)境下利用Makefile 創(chuàng)建各種鏡像,也可以在Tornado 集成環(huán)境下Build 菜單中選擇Build Boot Rom來創(chuàng)建各種類型的Boot Rom 鏡像。
3 鏡像和驅(qū)動程序調(diào)試
初級階段,主要指bootrom 的調(diào)試。bootrom 的開發(fā)是VxWorks BSP 開發(fā)的起點,目標機沒有提供任何服務,使用ADS 中的AXD 工具,通過JTAG 口將編譯好的bootrom 文件加載到目標機中。在串口初始化后可以使用串口向電腦打印相關信息,觀察bootrom 的運行狀態(tài)。高級階段,主要是指最小系統(tǒng)調(diào)試完畢后。這時串口驅(qū)動完成,在程序中調(diào)試相關函數(shù)可以輕松實現(xiàn)控制臺串口的信息答應,并且串口可以作為開發(fā)主機與目標機之間的WDB 通道通信,WDB 連接上后就可以使用Tornado開發(fā)環(huán)境中提供的工具進行調(diào)試。
3.1 調(diào)試環(huán)境
開發(fā)主機操作系統(tǒng)為Windows XP,BSP 應用編程基于VxWorks 嵌入式實時操作系統(tǒng),并在Tornado 集成開發(fā)環(huán)境下開發(fā)調(diào)試。開發(fā)主機與目標板之間通過ARMmulti-ICE 仿真器連接,開發(fā)主機利用該仿真器調(diào)試用于目標板的bootrom_uncmp 鏡像和VxWorks 鏡像。為了更好的調(diào)試,需要查看目標板BSP 的運行過程等信息,然而本目標板不具備VGA 接口,只能通過其自帶的串口來輸出調(diào)試信息。目標板通過自帶的串口接9 針串口線與工控機(本設計中的開發(fā)主機只帶有1 個串口)的COM1 相連,在工控機上利用超級終端來輸出打印信息。在串口調(diào)試成功后,開始調(diào)試網(wǎng)口,目標板利用網(wǎng)口來啟動VxWorks,這時目標板需要從開發(fā)主機上的TFTP來下載VxWorks。目標板鏡像bootrom_uncmp 和VxWorks調(diào)試成功后,便可去掉開發(fā)主機與目標板之間的ARMmulti-ICE 仿真器,接上J-link 燒寫工具,開發(fā)主機利用該工具把bootrom_uncmp.bin 燒寫到目標板的ROM中。
3.2 target server 的配置以及J-link 燒寫工具為了能夠?qū)崿F(xiàn)正常連接,需要對target server 作相應的配置。并用J-link 把bootrom_cmp.bin 鏡像燒到ROM 中。
3.3 超級終端
由于目標板硬件上沒有VGA 接口,為了便于調(diào)試BSP 鏡像和相關硬件驅(qū)動程序,用USART 下的Debug 口來輸出調(diào)試信息。
3.4 其它調(diào)試
通過網(wǎng)絡設備來啟動VxWorks 系統(tǒng)時,需要通過TFTP 來下載bootrom_cmp 鏡像和VxWorks鏡像。在DebugMode 下,用串口、網(wǎng)口、TrueFFS 均能成功啟動VxWorks后,便可改動啟動模式為內(nèi)部啟動,即在BOOT Mode 下編譯BSP,并重新生成boot image 鏡像和VxWorks 鏡像。
3.5 驅(qū)動程序的調(diào)試
Debug Mode 和Boot Mode 都能正常啟動后,說明鏡像是正確的。這時需要調(diào)試CAN 控制器SJA1000 的發(fā)送、接收功能,LED 燈光的設置和顯示,動態(tài)電路的切換,背板地址的讀取,網(wǎng)絡地址的自動判定,模式開關的讀取。
4 結(jié)論
在本次設計,本人參閱了大量的文獻資料,了解了VxWorks 實時嵌入式操作系統(tǒng)中板卡支持包BSP 的概念和作用,熟悉了ARM CPU 結(jié)構,掌握了基于ARM 平臺的VxWorks 操作系統(tǒng)BSP 開發(fā)的技術難點和重點,完成了VxWorks 操作系統(tǒng)在ARM9 芯片AT91RM9200 上的BSP 設計與調(diào)試,實現(xiàn)了CAN 控制器SJA1000 的驅(qū)動、0~9檔的模式開關選擇、LED 狀態(tài)燈的讀取和控制、主備切換的動態(tài)電路以及板卡背板地址和網(wǎng)絡地址的讀取。
參考文獻
[1] 李勇.基于ARM9 的VxWorks BSP 的設計與實現(xiàn)[D].湖南:湖南大學,2009.
【BSP 系統(tǒng)的設計與實現(xiàn)分析論文】相關文章:
解析科技競賽賽務系統(tǒng)的設計與實現(xiàn)論文04-19
旅游網(wǎng)站的設計與實現(xiàn)畢業(yè)論文11-14
電影院售票系統(tǒng)的設計與實現(xiàn)開題報告12-01
FPGA數(shù)據(jù)采集與回放系統(tǒng)設計論文04-24
網(wǎng)頁設計教學中的應用分析論文07-12
基于系統(tǒng)設計的科研管理論文09-22
平面設計教學中的字體設計分析論文06-23