<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>
    以文本方式查看主題

    -  曙海教育集團(tuán)論壇  (http://www.hufushizhe.com/bbs/index.asp)
    --  VxWorks BSP開發(fā)  (http://www.hufushizhe.com/bbs/list.asp?boardid=37)
    ----  VxWorks實(shí)時(shí)操作系統(tǒng)下BSP  (http://www.hufushizhe.com/bbs/dispbbs.asp?boardid=37&id=1931)

    --  作者:wangxinxin
    --  發(fā)布時(shí)間:2010-12-1 9:30:07
    --  VxWorks實(shí)時(shí)操作系統(tǒng)下BSP
    68 VxWorks實(shí)時(shí)操作系統(tǒng)下BSP
    %A VxWorks實(shí)時(shí)操作系統(tǒng)下BSP
    %A 丁大尉 煙臺(tái)大學(xué) 王金剛 宮霄霖 姜 平 天津大學(xué)
    %A 摘要文中介紹實(shí)時(shí)操作系統(tǒng)V Works中BSP的概念,以及開發(fā)BSP必須要了解的交叉調(diào)試環(huán)境、系統(tǒng)的啟動(dòng)過
    %A 程、V works Image的分類以及BSP文件的組成等內(nèi)容。
    %A 關(guān)鍵詞 VxWorks lISP
    %A The Concept of BSP in VxWorks
    %A DiI1g Dawei Wang Jingang Gong Xiaolin Jiang Ping
    %A Abstract In this paper,the concept of BSP in VxWorks,a real―time operating system are presented. It also described
    %A the cross debug environment,the boot process of the system,the sorts of VxWorks Image and the composition of BSP files.
    %A Keywords VxWorks BSP
    %A 1 BSP
    %A Vxworks操作系統(tǒng)是一種嵌入式實(shí)時(shí)操作系
    %A 統(tǒng)(RTOS),它采用微內(nèi)核的結(jié)構(gòu),可以運(yùn)行于
    %A 目前幾乎所有的CPU 上,包括intel x86、Power
    %A PC、ARM、MIPS等, 但前提是必須有相應(yīng)的
    %A BSP (板極支持包)支持。BSP包含了與硬件相關(guān)
    %A 的功能函數(shù),提供Vxworks與硬件之間的接口,
    %A 但是BSP不等同于硬件驅(qū)動(dòng)。
    %A BSP主要完成硬件初始化,包括系統(tǒng)上電時(shí)
    %A 在特定位置提供人口代碼,初始化存儲(chǔ)器,關(guān)中
    %A 斷,把VxWorks加載到RAM 區(qū)等; 支持Vx―
    %A Works與硬件驅(qū)動(dòng)的通信。有些硬件驅(qū)動(dòng)是需要
    %A 。BSP支持的,例如硬件驅(qū)動(dòng)定義它的中斷服務(wù)例
    %A 程(ISR),由BSP來將此ISR連接到中斷向量表;
    %A 將獨(dú)立與硬件的軟件和與硬件相關(guān)的軟件在Vx―
    %A Works系統(tǒng)中很好地結(jié)合起來。
    %A 2 BSP開發(fā)
    %A 做BSP開發(fā),應(yīng)首先建立Tornado開發(fā)環(huán)境,
    %A 根據(jù)具體情況配置VxWorks組件;接著選擇合適
    %A 的BSP模板,對(duì)相應(yīng)的文件進(jìn)行修改;最后添加
    %A 自己的設(shè)備驅(qū)動(dòng)程序,進(jìn)行仿真和調(diào)試。
    %A Tornado 2.2交叉調(diào)試環(huán)境嵌入式操作系統(tǒng)
    %A 在調(diào)試環(huán)境上與桌面操作系統(tǒng)存在明顯的區(qū)別,它
    %A 又稱為交叉調(diào)試。因?yàn)門ornado開發(fā)環(huán)境是基于
    %A 架構(gòu)的,所以選擇的時(shí)候要根據(jù)自己的處理器內(nèi)核
    %A 選擇合適的版本。因?yàn)槲覀兪褂玫奶幚砥?
    %A S3CA510B采用的是ARM 核, 所以我們選用Tor―
    %A nado2.2 for ARM ,這就保證了使用的開發(fā)環(huán)境里
    %A 包括了需要的開發(fā)工具以及同類的BSP參考模板。
    %A ? /target/eonfig/all/eonfigAl1.h中包含所有
    %A 的VxWorks組件選項(xiàng), 可以在32程中對(duì)這些組件
    %A 進(jìn)行添加或者刪除。
    %A 選擇BSP模板并對(duì)相應(yīng)文件進(jìn)行修改 Vx-
    %A Works的板級(jí)支持包BSP提供了Vxworks同硬件
    %A 環(huán)境的基本接口界面,支持對(duì)硬件驅(qū)動(dòng)的訪問,將
    %A Vxworks中硬件相關(guān)和硬件無關(guān)的軟件集成到一
    %A 體,其功能相當(dāng)于PC機(jī)的BIOS。它包括源文件、
    %A 頭文件、make文件、導(dǎo)出文件和二進(jìn)制的驅(qū)動(dòng)模
    %A 塊。
    %A BSP主要由C源文件和匯編文件組成,BSP
    %A 的開發(fā)可以從WindRiver公司提供的BSP模板開
    %A 始,在此基礎(chǔ)上作相應(yīng)的修改。主要需要做以下幾
    %A 個(gè)方面的修改:
    %A ① eonfig.h
    %A VxWorks的缺省配置由eonfigAl1.h確定, 用
    %A 戶需要按照自己的需要來改寫eonfig.h,如設(shè)置存
    %A 儲(chǔ)區(qū)的大小、增加新的程序模塊、刪除不需要的模
    %A 塊等。
    %A ② makefile
    %A 它控制生成VxWorks的映像文件的類型,另
    %A 外它還包含存儲(chǔ)區(qū)大小的信息。所有新增加的程序
    %A 模塊必須在makefile中使用MACH ―EXTRA 命
    %A 令將其目標(biāo)模塊加入到最終的VxWorks映像文件
    %A 中。
    %A ③ 編制專用接口驅(qū)動(dòng)程序
    %A VxWorks的缺省配置提供了通用接口的驅(qū)動(dòng)
    %A 程序,但是并不一定適合用戶具體的硬件環(huán)境,所
    %A 以用戶需要使用ar-d命令將這些模塊從庫(kù)文件中
    %A 刪除,然后將其源程序復(fù)制到用戶的BSP 目錄中
    %A 進(jìn)行修改,并在makefile中使用MACH―EXTRA
    %A 命令將其目標(biāo)模塊加入到最終的Vxworks映像文
    %A 件中。
    %A 維普資訊圖片點(diǎn)擊可在新窗口打開查看http://www.cqvip.com
    %A 皇 量技術(shù)?2005年第一期 69
    %A VxWorks Image的分類 VxWorks Image可
    %A 以分為三類:ROM-based Image(壓縮或非壓縮);
    %A ROM -Resident Image; Loadable Image
    %A 。
    %A VxWorks Image由Text段、Data段和BSS
    %A 段組成,Text段是可執(zhí)行代碼段,Data是已初始
    %A 化的全局變量和靜態(tài)變量,BSS段是未初始化全局
    %A 變量和靜態(tài)變量。
    %A 對(duì)于不同的Vxworks Image,啟動(dòng)步驟也不
    %A 一樣。但對(duì)于三種Image,第一步是相同的,都是
    %A 處理器跳到某一特定地址, 開始執(zhí)行啟動(dòng)代碼
    %A (BootStrap)。它們都完成相同的功能:關(guān)閉中斷,
    %A 初始化目標(biāo)存儲(chǔ)器,裝載要運(yùn)行的VxWorks Im―
    %A age段到RAM 中。
    %A RoM―Resident Image與ROM-based Image兩
    %A 種Image都是用于產(chǎn)品階段, 即直接燒錄到ROM
    %A 中。在開發(fā)調(diào)試階段, 這兩種Image由于需要頻
    %A 繁的燒寫RoM 所以非常不方便。
    %A Loadable
    %A Image 是位
    %A 于主機(jī)上的
    %A 二進(jìn)制文件,
    %A 由燒錄在目
    %A 標(biāo)板RoM
    %A 中的boot―
    %A RoM Image
    %A LoCAL MEM
    %A LoCAL ADRS
    %A RAM LOW
    %A ADRS
    %A FREE RAM
    %A ADRS
    %A RAM HIGH
    %A ADRS
    %A 將其從主機(jī)
    %A 下載到目標(biāo) 圖1 Loadable Image的下載過程
    %A 板的RAM
    %A 中。實(shí)際上,boot―RoM Image是一個(gè)高度裁減的
    %A 最小Vxworks系統(tǒng),它的唯一作用就是實(shí)現(xiàn)目標(biāo)
    %A 機(jī)與主機(jī)通信,將位于主機(jī)硬盤上的loadable Im―
    %A age下載到目標(biāo)板RAM 中, 執(zhí)行情況如圖1。首
    %A 先執(zhí)行BootStrap,Bo otStrap完成最基本的硬件初
    %A 始化工作, 并將boot―RoM Image拷貝到RAM ―
    %A H IGH
    %A ― ADRS處開始執(zhí)行,把主機(jī)上指定位置的
    %A Loadable Image下載到RAM ―LOW ―ADRS處,
    %A 然后由此Image來接管目標(biāo)板,Bo ot Program 已
    %A 完成使命,它所占用的RAM 區(qū)由系統(tǒng)回收,作為
    %A 系統(tǒng)內(nèi)存池的一部分。另外,boot―RoM Image也
    %A 可以是壓縮的, 在拷貝到RAM ―HIGH ―ADRS
    %A 時(shí)進(jìn)行解壓;也可以駐留在ROM 中執(zhí)行,而只將
    %A 它的Data段和BSS段拷貝到RAM ―HIGH ―
    %A ADRS處。
    %A 系統(tǒng)啟動(dòng)順序 對(duì)于ROM-based Image和
    %A ROM-Resident Image,其啟動(dòng)順序如下:
    %A rom Init () 一rom Start () 一sysInit ()
    %A usrInit () ._+Kernellnit (usrRoot, ? ? )
    %A 各函數(shù)的作用如下:
    %A romInit():關(guān)閉中斷, 做盡量少的硬件初始
    %A 化,使C程序得以運(yùn)行。
    %A romStart(): 將Vxworks Image拷貝到
    %A RAM 中,如果需要?jiǎng)t進(jìn)行解壓縮;如果是ROMResident
    %A Image, 則只拷貝Data段和BSS段。
    %A sysInit():初始化系統(tǒng)中斷, 即把所有寄存
    %A 器置為已知狀態(tài), 并清除所有中斷。
    %A usrInit():在文件usrConfig.c中,完成系統(tǒng)
    %A 內(nèi)核運(yùn)行前需要完成的所有初始化,包括初始化
    %A cache、BsS段清零、初始化中斷向量等。
    %A Kernellnit():初始化并啟動(dòng)多任務(wù)內(nèi)核,開
    %A 中斷,創(chuàng)建一個(gè)根任務(wù)usrRoot。
    %A usrRoot(): 初始化I/O 系統(tǒng),初始化系統(tǒng)時(shí)
    %A 鐘,創(chuàng)建設(shè)備,安裝驅(qū)動(dòng),初始化網(wǎng)絡(luò),調(diào)用用戶
    %A 應(yīng)用程序。
    %A 驅(qū)動(dòng)程序的開發(fā) 與BSP開發(fā)工具包一起發(fā)
    %A 布的軟件中包含了各種類型驅(qū)動(dòng)程序的模板,這些
    %A 模板提供了所有驅(qū)動(dòng)程序共用的邏輯結(jié)構(gòu),設(shè)計(jì)驅(qū)
    %A 動(dòng)程序時(shí)一般應(yīng)該按照從上到下的順序。在完成對(duì)
    %A 驅(qū)動(dòng)程序的計(jì)劃,以及初步形成了由函數(shù)和數(shù)據(jù)結(jié)
    %A 構(gòu)構(gòu)成的骨架之后, 就可以開始準(zhǔn)備執(zhí)行和測(cè)試
    %A 了。這部分工作比較復(fù)雜,主要包括編寫代碼,測(cè)
    %A 試、調(diào)試、重新編譯和性能測(cè)試等幾個(gè)步驟,請(qǐng)讀
    %A 者參見參考資料l_1]。
    %A 參考資料
    %A 1 W ind River Systems, Inc. VxWorks BSP Developer s
    %A Guide,5.5,Edition 1,DOC-14695一ND-00,U & A
    %A 2002.
    %A 2 Wind River Systems, Inc. VxWorks Programmer’s
    %A Guide,5.5,Ed ition 1,1:)O(2-14617一ZD00,U. & A
    %A 2002.
    %A 3 陳翌,田 捷,王金剛.嵌入式軟件開發(fā)技術(shù).北
    %A 京:國(guó)防工業(yè)出版社,2003
    %A 。爭(zhēng)‘奪 爭(zhēng) 奪 奪 奪‘奪 奪 奪‘奪 奪‘奪’奪 奪 奪 奪 奪 奪’奪 奪
    %A .
    %A 矗 侖
    %A 妾 降低數(shù)據(jù)采集的成本 蕁
    %A 立 毒
    %A 羔 通過推出M系列DAQ產(chǎn)品,NI公司不每
    %A 寸斷在擴(kuò)展數(shù)據(jù)采集功能的同時(shí)降低設(shè)備的成jc
    %A 乏本。實(shí)際上,盡管M系列產(chǎn)品增強(qiáng)了I/O的奪
    %A 功能,不過同時(shí)每個(gè)I/0通道的成本也降低jc
    %A 喜了30 9/6。M系列產(chǎn)品采用了以前DAQ產(chǎn)品÷
    %A 寧所不具備的NI-STC 2,NI―MCal和NI―PGIA X
    %A 毒技術(shù),它還能和NI LabVIEW 和NI―DAQmx々
    %A 寧測(cè)量服務(wù)軟件無縫地集成,從而具有更好的性
    %A 毒能、更高的價(jià)值并提供更多的I/0。
    %A . 奪.奪.奪.奪.奪.奪.奪.奪.奪.奪.奪.奪.爭(zhēng).爭(zhēng).奪.奪.奪.奪.爭(zhēng).{-.{-.???啼一.奪t}
    %A 維普資訊圖片點(diǎn)擊可在新窗口打開查看http://www.cqvip.com

    主站蜘蛛池模板: japonensis19一20刚开始的| 高清不卡毛片免费观看| 亚洲成年人电影网站| 午夜性a一级毛片| 国产成人无码精品一区不卡| 国色天香社区高清在线观看| 成人毛片免费视频播放| 晚上睡不着来b站一次看过瘾| 清纯校花被色老头糟蹋| 色av.com| 中文字幕第7页| 久久这里只精品| 亚洲人成在线影院| 人善交VIDE欧美| 国产V亚洲V天堂无码久久久| 国产精品久久久久久| 天堂а√中文最新版地址在线| 91亚洲va在线天线va天堂va国产| mm1313亚洲国产精品无码试看| 久久精品私人影院免费看| 亚洲一级毛片中文字幕| 四虎a456tncom| 国产无套粉嫩白浆在线| 国产精品JIZZ在线观看老狼| 国产精品免费无遮挡无码永久视频| 国产精品欧美亚洲韩国日本 | 久久五月天婷婷| 久久综合精品国产二区无码| 亚洲日产2021三区在线| 人人妻人人澡av天堂香蕉| 四虎影视永久在线yin56xyz| 国产无遮挡无码视频免费软件| 国产精品久久久久久网站| 国产精品久久久久久搜索| 国产精品高清全国免费观看| 在线免费看片a| 国产精品黄页在线播放免费| 国产香港特级一级毛片| 国产精品自产拍在线观看花钱看 | 秋霞午夜在线观看| 国产又粗又长又硬免费视频|