【課程背景】 |
課程中會(huì)結(jié)合實(shí)際的單板及代碼講解BSP開(kāi)發(fā)中的流程、實(shí)用技巧以及新的技術(shù),幫助學(xué)員短時(shí)間內(nèi)理解消化和掌握這些高級(jí)技巧,并可以盡快應(yīng)用到工程項(xiàng)目中去。 |
【師資團(tuán)隊(duì)】 |
武漢眾嵌金牌團(tuán)隊(duì):胡歡 彭剛 王貞炎 孔令斌 姚 剛 楊敬 |
【學(xué)習(xí)目標(biāo)】 |
通過(guò)vxworks培訓(xùn)課程的學(xué)習(xí),學(xué)員將可以對(duì)當(dāng)今最主流的高端嵌入式操作系統(tǒng)VxWorks有一個(gè)全面的了解,具備使用VxWorks開(kāi)發(fā)基于VxWorks的驅(qū)動(dòng)程序、BSP和應(yīng)用程序的能力。課程目標(biāo)包括:
1) 熟悉Tornado 2.x/VxWorks5.x-6.x的基本原理和應(yīng)用
2) 熟練掌握Tornado集成開(kāi)發(fā)環(huán)境的使用方法
3) 熟悉并可以配置、裁剪、編譯所需要的VxWorks
4) 能設(shè)計(jì)和開(kāi)發(fā)基于嵌入式操作系統(tǒng)VxWorks的驅(qū)動(dòng)程序
5) 能夠設(shè)計(jì)和開(kāi)發(fā)基于VxWorks的應(yīng)用程序和系統(tǒng)
6) 熟悉基于VxWorks應(yīng)用程序的編譯、下載、調(diào)試和分析
7) 熟悉基于VxWorks BSP的設(shè)計(jì)
本課程注重實(shí)際經(jīng)驗(yàn)的傳授,不會(huì)照本宣科,重點(diǎn)在于讓大家對(duì)實(shí)時(shí)操作系統(tǒng)VxWorks有一個(gè)認(rèn)識(shí),真正會(huì)用VxWorks,拿到目標(biāo)板后清楚如何開(kāi)始VxWorks的使用及開(kāi)發(fā)。 |
【基本要求】 |
學(xué)員學(xué)習(xí)本課程應(yīng)具備下列基礎(chǔ)知識(shí):
◆具備C或者C++語(yǔ)言編程經(jīng)驗(yàn);
◆具備計(jì)算機(jī)使用基礎(chǔ)知識(shí)。 |
【質(zhì)量保證】 |
1、培訓(xùn)過(guò)程中,如有部分內(nèi)容理解不透或消化不好,可免費(fèi)在以后培訓(xùn)班中重聽(tīng);
2、培訓(xùn)結(jié)束后免費(fèi)提供一個(gè)月的技術(shù)支持,充分保證培訓(xùn)后出效果;
3、培訓(xùn)合格學(xué)員可享受免費(fèi)推薦就業(yè)機(jī)會(huì)。 |
【課程教材】 |
◆《華清遠(yuǎn)見(jiàn)-VxWorks應(yīng)用開(kāi)發(fā)培訓(xùn)班講義》 |
【學(xué)費(fèi)】 |
公司2500RMB 個(gè)人2500RMB 學(xué)生2500RMB |
【開(kāi)課情況】 |
上課時(shí)間:周一至周五,上午9:00-12:00(授課),下午14:00-18:00(實(shí)驗(yàn)),晚上18:30-21:00(自習(xí)/輔導(dǎo)),需要補(bǔ)課學(xué)員統(tǒng)一安排周六補(bǔ)課。
|
【課時(shí)安排】 |
時(shí)間 |
課程大綱 |
課程內(nèi)容 |
*天
|
9:00
|
16:30 |
1. 實(shí)時(shí)嵌入式系統(tǒng)、VxWorks和Tornado開(kāi)發(fā)環(huán)境
1.1 實(shí)時(shí)嵌入式系統(tǒng)介紹: 實(shí)時(shí)嵌入式系統(tǒng),實(shí)時(shí)嵌入式操作系統(tǒng),VxWorks概述
1.2 Tornado2.x與VxWorks系統(tǒng)組成:Tornado2.x集成開(kāi)發(fā)環(huán)境,VxWorks系統(tǒng)結(jié)構(gòu),WIND內(nèi)核,BSP,應(yīng)用編程接口,shell,TCP/IP協(xié)議棧,文件系統(tǒng)
2. Tornado工程的創(chuàng)建和使用
2.1 bootable工程:工程創(chuàng)建, BSP選擇,VxWorks裁減,工程編譯/鏈接
2.2 downloadable工程:工程創(chuàng)建,BSP選擇,程序管理,工程編譯/鏈接
2.3 工程調(diào)試:斷點(diǎn)介紹,任務(wù)級(jí)斷點(diǎn)/全局?jǐn)帱c(diǎn)的設(shè)置,程序單步/多步調(diào)試方式
3. 開(kāi)發(fā)和仿真工具介紹
3.1 VxSim仿真工具:VxSim的啟動(dòng),同tagert server的連接, 仿真運(yùn)行用戶(hù)程序
3.2 圖形化的交叉調(diào)試器和工程配置工具(CrossWind、WindConfig)
3.3 目標(biāo)機(jī)工具集:目標(biāo)機(jī)shell,目標(biāo)機(jī)符號(hào)表,顯示VxWorks系統(tǒng)信息的函數(shù)
3.4 Tornado常用輔助工具介紹
|
實(shí)驗(yàn)
1、Tornado和各種工具的操作;指導(dǎo)學(xué)員熟識(shí)Tornado的界面風(fēng)格,了解菜單、命令的作用和功能;
2、創(chuàng)建downloadable工程;指導(dǎo)學(xué)員創(chuàng)建downloadable工程;
3、創(chuàng)建bootable工程;指導(dǎo)學(xué)員使用BSP并創(chuàng)建bootable工程;
4、編寫(xiě)一段小應(yīng)用程序仿真并調(diào)試;通過(guò)實(shí)驗(yàn)掌握仿真工具的使用和斷點(diǎn)的使用;
5、裁剪VxWorks生成目標(biāo)映像;通過(guò)實(shí)驗(yàn)掌握如何裁剪自己需要的VxWorks并生成自己的映像;
6、仿真下載、啟動(dòng)系統(tǒng)映像;通過(guò)此實(shí)驗(yàn)使學(xué)員掌握嵌入式VxWorks系統(tǒng)的開(kāi)發(fā)和使用流程。
|
第二天
|
9:00
|
16:30 |
4. VxWorks多任務(wù)程序設(shè)計(jì)
4.1 VxWorks任務(wù)基礎(chǔ):任務(wù)的狀態(tài),任務(wù)狀態(tài)切換
4.2 多任務(wù)調(diào)度方式:搶占式調(diào)度,輪轉(zhuǎn)式調(diào)度,搶占上鎖,優(yōu)先級(jí)和任務(wù)調(diào)度
4.3 任務(wù)編程:任務(wù)創(chuàng)建/刪除,任務(wù)控制, 任務(wù)相關(guān)函數(shù)介紹, 調(diào)度控制
4.4 多任務(wù)與函數(shù)重入
4.5 VxWorks系統(tǒng)任務(wù)
4.6 VxWorks任務(wù)異常處理:Task錯(cuò)誤狀態(tài),用戶(hù)error擴(kuò)展
5. VxWorks任務(wù)間通信
5.1 共享數(shù)據(jù)結(jié)構(gòu)、共享內(nèi)存
5.2 信號(hào)量:二進(jìn)制信號(hào)量,互斥信號(hào)量,計(jì)數(shù)信號(hào)量,共享內(nèi)存信號(hào)量
5.3 消息隊(duì)列:消息隊(duì)列狀態(tài),消息隊(duì)列建立/刪除,消息隊(duì)列的發(fā)送和接收
5.4 管道
5.5 信號(hào)
6. VxWorks內(nèi)存管理
6.1 VxWorks內(nèi)存空間布局
6.2 動(dòng)態(tài)內(nèi)存分配管理
6.3 虛擬內(nèi)存接口:MMU,虛擬內(nèi)存配置
6.4 VxWorks中的Cache一致性
|
實(shí)驗(yàn)
1、編寫(xiě)一個(gè)用戶(hù)任務(wù);通過(guò)實(shí)驗(yàn)學(xué)員掌握VxWorks下任務(wù)的創(chuàng)建方法,充分認(rèn)識(shí)優(yōu)先級(jí)和搶占式的意義;
2、查看各任務(wù)狀態(tài);通過(guò)實(shí)驗(yàn)學(xué)員熟悉和認(rèn)識(shí)VxWorks下的任務(wù)狀態(tài)和關(guān)系,理解時(shí)間片的意義;
3、編寫(xiě)雙任務(wù)互相通信程序;通過(guò)實(shí)驗(yàn)學(xué)員熟悉任務(wù)間通信的方式,認(rèn)識(shí)死鎖和互斥、同步;
4、修改、編寫(xiě)看門(mén)狗程序:認(rèn)識(shí)和使用看門(mén)狗程序,認(rèn)識(shí)和理解時(shí)間片的意義和VxWorks的調(diào)度機(jī)制;
5、以一個(gè)嵌入式系統(tǒng)實(shí)例為對(duì)象,剖析地址空間分配:認(rèn)識(shí)一個(gè)系統(tǒng)中的地址空間是如何劃分的。
|
第三天
|
9:00
|
16:30 |
7. VxWorks中斷,異常和看門(mén)狗
7.1 VxWorks的中斷和異常
7.2 VxWorks中斷服務(wù):中斷連接、使能、禁止,中斷服務(wù)程序,ISR的特殊限制
7.3 VxWorks 異常服務(wù)
7.4 Watchdog定時(shí)器
8.VxWorks I/O和文件系統(tǒng)
8.1 VxWorks I/O系統(tǒng)概述:I/O系統(tǒng)接口,文件和文件名
8.2 基本I/O:基本I/O接口,標(biāo)準(zhǔn)輸入輸出,ioctl(),等待在多個(gè)fd上的select( )
8.3 有緩沖和格式化的I/O
8.4 本地文件系統(tǒng)
9.VxWorks配置和映像的生成及其啟動(dòng)
9.1 裁剪VxWorks,編譯、鏈接生成映像
9.2 VxWorks啟動(dòng)順序概述
9.3 VxWorks引導(dǎo):romInit(),romStart();sysInit()
9.4 激活內(nèi)核:usrInit();sysHwInit();kernelInit
9.5 根任務(wù):tUsrRoot
10. VxWorks BSP
10.1 BSP介紹
10.2 BSP的組成
10.3 交叉開(kāi)發(fā)、編譯
10.4 bootline 的設(shè)計(jì)
10.5 PCI以及網(wǎng)卡設(shè)備初始化
10.6 設(shè)備驅(qū)動(dòng)開(kāi)發(fā)中注重的問(wèn)題
|
實(shí)驗(yàn)
1、以串口驅(qū)動(dòng)程序?yàn)槔?,剖析中斷機(jī)制、中斷處理和中斷服務(wù)例程:使學(xué)員掌握VxWorks中斷的處理和使用,認(rèn)識(shí)中斷和任務(wù)間的關(guān)系;
2、以一個(gè)嵌入式系統(tǒng)實(shí)例為對(duì)象,分析VxWorks BSP的實(shí)現(xiàn),剖析組成和系統(tǒng)啟動(dòng)流程;
3、裁減、編譯一個(gè)嵌入式系統(tǒng)所需要的bootRom映像;
4、裁減、編譯一個(gè)嵌入式系統(tǒng)所需要的VxWorks映像;
5、創(chuàng)建一個(gè)嵌入系統(tǒng),編譯、裁剪生成一套VxWorks系統(tǒng)。
|
|