版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、北京航空航天大學(xué) 清華大學(xué)出版社2 依依審定的教材大綱編寫。審定的教材大綱編寫。 主編人:高金源主編人:高金源 夏潔夏潔 出版發(fā)行:清華大學(xué)出版社出版發(fā)行:清華大學(xué)出版社北京航空航天大學(xué) 清華大學(xué)出版社38.1 嵌入式系統(tǒng)嵌入式系統(tǒng)8.1.1 概述概述8.1.2 軟硬件協(xié)同設(shè)計(jì)技術(shù)軟硬件協(xié)同設(shè)計(jì)技術(shù)8.1.3 實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)操作系統(tǒng) 8.1.4 嵌入式系統(tǒng)的開發(fā)嵌入式系統(tǒng)的開發(fā)8.1.5 嵌入式控制系統(tǒng)設(shè)計(jì)實(shí)例嵌入式控制系統(tǒng)設(shè)計(jì)實(shí)例8.2 可編程控制器(可編程控制器(PLC)8.2.1 PLC概述概述 8.2.2 PLC結(jié)構(gòu)和工作原理結(jié)構(gòu)和工作原理8.2.3 PLC常用編程語言常用編程語言8
2、.2.4 PLC應(yīng)用實(shí)例應(yīng)用實(shí)例8.2.5 PLC網(wǎng)絡(luò)系統(tǒng)網(wǎng)絡(luò)系統(tǒng)北京航空航天大學(xué) 清華大學(xué)出版社4北京航空航天大學(xué) 清華大學(xué)出版社51. 嵌入式系統(tǒng)定義和分類嵌入式系統(tǒng)定義和分類電氣工程師協(xié)會(huì)(電氣工程師協(xié)會(huì)(IEEE)定義)定義 :“嵌入式系統(tǒng)是控制、監(jiān)視或輔助設(shè)備、機(jī)嵌入式系統(tǒng)是控制、監(jiān)視或輔助設(shè)備、機(jī)器甚至工廠操作的裝置。器甚至工廠操作的裝置?!币话愣x:一般定義:“以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟軟件硬件可裁剪件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的性、成本、體積、功耗嚴(yán)格要求的專用專用計(jì)算計(jì)
3、算機(jī)系統(tǒng)。機(jī)系統(tǒng)?!北本┖娇蘸教齑髮W(xué) 清華大學(xué)出版社6小型系統(tǒng)內(nèi)核;小型系統(tǒng)內(nèi)核;專用性較強(qiáng);專用性較強(qiáng);系統(tǒng)精簡,以減少控制系統(tǒng)成本,利于實(shí)現(xiàn)系統(tǒng)系統(tǒng)精簡,以減少控制系統(tǒng)成本,利于實(shí)現(xiàn)系統(tǒng)安全;安全;采用高實(shí)時(shí)性的操作系統(tǒng),且軟件要固化存儲(chǔ);采用高實(shí)時(shí)性的操作系統(tǒng),且軟件要固化存儲(chǔ);使用多任務(wù)的操作系統(tǒng),使軟件開發(fā)標(biāo)準(zhǔn)化;使用多任務(wù)的操作系統(tǒng),使軟件開發(fā)標(biāo)準(zhǔn)化;嵌入式系統(tǒng)開發(fā)需要專門的工具和環(huán)境。嵌入式系統(tǒng)開發(fā)需要專門的工具和環(huán)境。 北京航空航天大學(xué) 清華大學(xué)出版社7 硬件方面:硬件方面: 芯片級(jí)嵌入(含程序或算法的處理器)芯片級(jí)嵌入(含程序或算法的處理器) 模塊級(jí)嵌入(系統(tǒng)中的某個(gè)核心模塊
4、)模塊級(jí)嵌入(系統(tǒng)中的某個(gè)核心模塊) 系統(tǒng)級(jí)嵌入系統(tǒng)級(jí)嵌入 軟件方面(根據(jù)實(shí)時(shí)性要求):軟件方面(根據(jù)實(shí)時(shí)性要求): 非實(shí)時(shí)系統(tǒng)(例如非實(shí)時(shí)系統(tǒng)(例如PDA等)等) 實(shí)時(shí)系統(tǒng)實(shí)時(shí)系統(tǒng) 硬實(shí)時(shí)系統(tǒng)硬實(shí)時(shí)系統(tǒng)若系統(tǒng)在指定的時(shí)間內(nèi)未能實(shí)現(xiàn)某個(gè)確定的任若系統(tǒng)在指定的時(shí)間內(nèi)未能實(shí)現(xiàn)某個(gè)確定的任務(wù),就會(huì)引起系統(tǒng)崩潰或?qū)е轮旅e(cuò)誤(如導(dǎo)彈飛行姿態(tài)控制務(wù),就會(huì)引起系統(tǒng)崩潰或?qū)е轮旅e(cuò)誤(如導(dǎo)彈飛行姿態(tài)控制系統(tǒng))。系統(tǒng))。 軟實(shí)時(shí)系統(tǒng)軟實(shí)時(shí)系統(tǒng)在該類系統(tǒng)中雖然響應(yīng)時(shí)間同樣重要,但是超在該類系統(tǒng)中雖然響應(yīng)時(shí)間同樣重要,但是超時(shí)卻不會(huì)導(dǎo)致致命錯(cuò)誤,這也意味著偶爾超過時(shí)間限制是可以時(shí)卻不會(huì)導(dǎo)致致命錯(cuò)誤,這也意味著偶爾
5、超過時(shí)間限制是可以容忍的(如消費(fèi)類產(chǎn)品)容忍的(如消費(fèi)類產(chǎn)品) 。 北京航空航天大學(xué) 清華大學(xué)出版社8(1) 嵌入式微控制器嵌入式微控制器(Mico Controller Unit, MCU) 典型代表是單片機(jī)。單片機(jī)芯片內(nèi)部集成典型代表是單片機(jī)。單片機(jī)芯片內(nèi)部集成ROM、RAM、總線、總線、定時(shí)器定時(shí)器/計(jì)時(shí)器、計(jì)時(shí)器、I/O、串行口、串行口、A/D、D/A等各種必要的功能等各種必要的功能和外設(shè),在工作溫度、抗電磁干擾、可靠性等方面一般都做了各和外設(shè),在工作溫度、抗電磁干擾、可靠性等方面一般都做了各種增強(qiáng),且體積小、功耗成本低,比較適合控制。種增強(qiáng),且體積小、功耗成本低,比較適合控制。 (2
6、) 嵌入式微處理器嵌入式微處理器(Embedded Micro Processor Unit, EMPU) 基礎(chǔ)是通用計(jì)算機(jī)中的基礎(chǔ)是通用計(jì)算機(jī)中的CPU。只保留與嵌入式應(yīng)用密切相關(guān)的功。只保留與嵌入式應(yīng)用密切相關(guān)的功能硬件,去掉其他冗余的功能部分。目前的主要類型有能硬件,去掉其他冗余的功能部分。目前的主要類型有ARM 、 PowerPC系列等。系列等。 (3) 數(shù)字信號(hào)處理器數(shù)字信號(hào)處理器(Digital Signal Processor, DSP) 專用于信號(hào)處理方面的處理器,其可進(jìn)行向量運(yùn)算、指針線性尋專用于信號(hào)處理方面的處理器,其可進(jìn)行向量運(yùn)算、指針線性尋址等運(yùn)算量很大的數(shù)據(jù)處理,具有
7、很高編譯效率和指令執(zhí)行速度址等運(yùn)算量很大的數(shù)據(jù)處理,具有很高編譯效率和指令執(zhí)行速度(4)嵌入式片上系統(tǒng)嵌入式片上系統(tǒng)(System On Chip, SOC) 在一個(gè)硅片上實(shí)現(xiàn)一個(gè)復(fù)雜的系統(tǒng),其最大的特點(diǎn)是實(shí)現(xiàn)了軟硬在一個(gè)硅片上實(shí)現(xiàn)一個(gè)復(fù)雜的系統(tǒng),其最大的特點(diǎn)是實(shí)現(xiàn)了軟硬件的無縫結(jié)合,直接在處理器內(nèi)嵌入操作系統(tǒng)的代碼模塊。件的無縫結(jié)合,直接在處理器內(nèi)嵌入操作系統(tǒng)的代碼模塊。 北京航空航天大學(xué) 清華大學(xué)出版社9 硬件設(shè)計(jì)工具硬件設(shè)計(jì)工具 系統(tǒng)級(jí)設(shè)計(jì)方面采用的硬件設(shè)計(jì)工具有系統(tǒng)級(jí)設(shè)計(jì)方面采用的硬件設(shè)計(jì)工具有Cadence的的SPW和和System View。 模擬電路系統(tǒng)采用的仿真工具有模擬電路系
8、統(tǒng)采用的仿真工具有Pspice和和EWB。 印刷電路設(shè)計(jì)方面的設(shè)計(jì)工具有印刷電路設(shè)計(jì)方面的設(shè)計(jì)工具有Protel、PADs 的的Power PCB & Tool Kit和和Mentor的的Expedition & Tool Kit。 可編程邏輯器件設(shè)計(jì)工具還有可編程邏輯器件設(shè)計(jì)工具還有Mentor FPGA Advantage & ModelSim、Xilinx Foundation ISE & Tool Kit以及各種綜合和仿真工具等等。以及各種綜合和仿真工具等等。北京航空航天大學(xué) 清華大學(xué)出版社10 軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái) 高級(jí)語言編譯器(高級(jí)語言編譯器(
9、Compiler Tools)。)。 實(shí)時(shí)在線仿真系統(tǒng)實(shí)時(shí)在線仿真系統(tǒng)ICE(In Circuit Emulator)。)。 源程序模擬器(源程序模擬器(Simulator)。)。 實(shí)時(shí)多任務(wù)操作系統(tǒng)(實(shí)時(shí)多任務(wù)操作系統(tǒng)(Real Time multi-tasking Operation System,RTOS)。)。 商用型商用型RTOS的功能穩(wěn)定可靠,具有比較完善的技術(shù)支持和售的功能穩(wěn)定可靠,具有比較完善的技術(shù)支持和售后服務(wù),但價(jià)格昂貴而且都針對(duì)特定的硬件平臺(tái)。如后服務(wù),但價(jià)格昂貴而且都針對(duì)特定的硬件平臺(tái)。如WindRiver公司的公司的VxWorks、Palm Computing掌上電掌
10、上電腦公司的腦公司的Palm OS等。等。 免費(fèi)的免費(fèi)的RTOS主要有主要有Linux和和C/OS等。盡管這些資源帶有等。盡管這些資源帶有源碼,但理解、消化并運(yùn)用在某應(yīng)用系統(tǒng)上也是一項(xiàng)艱苦的工源碼,但理解、消化并運(yùn)用在某應(yīng)用系統(tǒng)上也是一項(xiàng)艱苦的工作,相應(yīng)的調(diào)試工具是沒有免費(fèi)的。作,相應(yīng)的調(diào)試工具是沒有免費(fèi)的。北京航空航天大學(xué) 清華大學(xué)出版社11北京航空航天大學(xué) 清華大學(xué)出版社12 芯片方面芯片方面 是可編程片上系統(tǒng)。是可編程片上系統(tǒng)。 宏觀方面宏觀方面 使嵌入式系統(tǒng)更經(jīng)濟(jì)、小型、可靠、快速、智能化、使嵌入式系統(tǒng)更經(jīng)濟(jì)、小型、可靠、快速、智能化、網(wǎng)絡(luò)化。網(wǎng)絡(luò)化。 經(jīng)濟(jì)性經(jīng)濟(jì)性 很便宜,讓更多的人
11、能買得起。很便宜,讓更多的人能買得起。 小型化(筆記本、小型化(筆記本、PDA) 人們攜帶方便。人們攜帶方便。 可靠性(汽車可靠性(汽車VCD跳動(dòng)問題)跳動(dòng)問題) 能夠在一般環(huán)境條件下或者是苛刻的環(huán)境條件下運(yùn)行。能夠在一般環(huán)境條件下或者是苛刻的環(huán)境條件下運(yùn)行。 高速度(飛機(jī)剎車系統(tǒng))高速度(飛機(jī)剎車系統(tǒng))能夠迅速地完成數(shù)據(jù)計(jì)算或數(shù)據(jù)傳輸。能夠迅速地完成數(shù)據(jù)計(jì)算或數(shù)據(jù)傳輸。 智能性(知識(shí)推理、模糊查詢、識(shí)別、感知運(yùn)動(dòng))智能性(知識(shí)推理、模糊查詢、識(shí)別、感知運(yùn)動(dòng)) 使人們用起來更習(xí)慣,對(duì)人們更有使價(jià)值。使人們用起來更習(xí)慣,對(duì)人們更有使價(jià)值。北京航空航天大學(xué) 清華大學(xué)出版社131硬件體系結(jié)構(gòu)硬件體系
12、結(jié)構(gòu)圖圖8-2 嵌入式系統(tǒng)硬件體系結(jié)構(gòu)的功能部件嵌入式系統(tǒng)硬件體系結(jié)構(gòu)的功能部件北京航空航天大學(xué) 清華大學(xué)出版社14設(shè)計(jì)過程的基本特征是:系統(tǒng)在一開始就被劃分為軟件和硬件兩設(shè)計(jì)過程的基本特征是:系統(tǒng)在一開始就被劃分為軟件和硬件兩大部分,軟件和硬件是獨(dú)立地進(jìn)行開發(fā)設(shè)計(jì),通常采用的是大部分,軟件和硬件是獨(dú)立地進(jìn)行開發(fā)設(shè)計(jì),通常采用的是“硬硬件先行件先行”的設(shè)計(jì)方法。的設(shè)計(jì)方法。 問題:問題:(1)軟硬件之間的交互受到很大限軟硬件之間的交互受到很大限制,造成系統(tǒng)集成相對(duì)滯后,因此制,造成系統(tǒng)集成相對(duì)滯后,因此傳統(tǒng)嵌入式系統(tǒng)設(shè)計(jì)的結(jié)果往往是傳統(tǒng)嵌入式系統(tǒng)設(shè)計(jì)的結(jié)果往往是設(shè)計(jì)質(zhì)量差設(shè)計(jì)質(zhì)量差、設(shè)計(jì)修改難
13、設(shè)計(jì)修改難,同時(shí),同時(shí)研研制周期不能制周期不能得到得到有效保障有效保障。(2) 隨著設(shè)計(jì)復(fù)雜程度的提高,隨著設(shè)計(jì)復(fù)雜程度的提高,軟硬件設(shè)計(jì)中的一些錯(cuò)誤將會(huì)使開軟硬件設(shè)計(jì)中的一些錯(cuò)誤將會(huì)使開發(fā)過程付出昂貴的代價(jià)。發(fā)過程付出昂貴的代價(jià)。(3)“硬件先行硬件先行”的做法常常需要的做法常常需要由軟件來補(bǔ)償由于硬件選擇的不適由軟件來補(bǔ)償由于硬件選擇的不適合造成系統(tǒng)的缺陷,從而增加軟件合造成系統(tǒng)的缺陷,從而增加軟件的代價(jià)。的代價(jià)。 圖圖8-3 傳統(tǒng)的嵌入式系統(tǒng)的設(shè)計(jì)方法傳統(tǒng)的嵌入式系統(tǒng)的設(shè)計(jì)方法北京航空航天大學(xué) 清華大學(xué)出版社15(1) 軟硬件協(xié)同設(shè)計(jì)定義:軟硬件協(xié)同設(shè)計(jì)定義:在硬件和軟件設(shè)計(jì)中,通過并發(fā)
14、和交互設(shè)計(jì)來滿足系統(tǒng)級(jí)的目標(biāo)要求。在硬件和軟件設(shè)計(jì)中,通過并發(fā)和交互設(shè)計(jì)來滿足系統(tǒng)級(jí)的目標(biāo)要求。(2) 軟硬件協(xié)同設(shè)計(jì)基本需求:軟硬件協(xié)同設(shè)計(jì)基本需求: 采用統(tǒng)一的軟硬件描述方式采用統(tǒng)一的軟硬件描述方式軟硬件支持統(tǒng)一的設(shè)計(jì)和分析工軟硬件支持統(tǒng)一的設(shè)計(jì)和分析工具或技術(shù),允許在一個(gè)集成環(huán)境中仿真及評(píng)估系統(tǒng)的軟硬件設(shè)計(jì),具或技術(shù),允許在一個(gè)集成環(huán)境中仿真及評(píng)估系統(tǒng)的軟硬件設(shè)計(jì),支持系統(tǒng)任務(wù)在軟件和硬件設(shè)計(jì)之間的相互移植;支持系統(tǒng)任務(wù)在軟件和硬件設(shè)計(jì)之間的相互移植; 采用交互式軟硬件劃分技術(shù)采用交互式軟硬件劃分技術(shù)允許進(jìn)行多個(gè)不同的軟硬件劃分允許進(jìn)行多個(gè)不同的軟硬件劃分設(shè)計(jì)仿真和比較,劃分應(yīng)用可以最大
15、滿足設(shè)計(jì)標(biāo)準(zhǔn)設(shè)計(jì)仿真和比較,劃分應(yīng)用可以最大滿足設(shè)計(jì)標(biāo)準(zhǔn)(功能和性能(功能和性能目標(biāo))目標(biāo))要求;要求; 具有完整的軟硬件模型基礎(chǔ)具有完整的軟硬件模型基礎(chǔ)可可以支持設(shè)計(jì)過程中各階段的評(píng)估,以支持設(shè)計(jì)過程中各階段的評(píng)估,支持逐步開發(fā)以及對(duì)硬件和軟件的支持逐步開發(fā)以及對(duì)硬件和軟件的綜合;綜合; 驗(yàn)證方法必須正確,以確保系統(tǒng)設(shè)驗(yàn)證方法必須正確,以確保系統(tǒng)設(shè)計(jì)達(dá)到目標(biāo)要求。計(jì)達(dá)到目標(biāo)要求。優(yōu)勢:協(xié)同設(shè)計(jì)要優(yōu)勢:協(xié)同設(shè)計(jì)要貫穿整個(gè)設(shè)計(jì)周期貫穿整個(gè)設(shè)計(jì)周期,且且使設(shè)計(jì)修改容易,研制周期可以得到有使設(shè)計(jì)修改容易,研制周期可以得到有效保障效保障;軟硬件交互設(shè)計(jì)變得簡單。;軟硬件交互設(shè)計(jì)變得簡單。圖圖8-4 嵌
16、入式系統(tǒng)的軟硬件協(xié)同設(shè)計(jì)流程嵌入式系統(tǒng)的軟硬件協(xié)同設(shè)計(jì)流程北京航空航天大學(xué) 清華大學(xué)出版社16 描述描述將系統(tǒng)行為的功能進(jìn)行明確、提取并列表;將系統(tǒng)行為的功能進(jìn)行明確、提取并列表; 劃分劃分即對(duì)硬件即對(duì)硬件/軟件的功能進(jìn)行分配;軟件的功能進(jìn)行分配; 評(píng)估評(píng)估進(jìn)行性能評(píng)估或?qū)C合后系統(tǒng)依據(jù)指令級(jí)評(píng)價(jià)進(jìn)行性能評(píng)估或?qū)C合后系統(tǒng)依據(jù)指令級(jí)評(píng)價(jià)參數(shù)做出評(píng)估,若不滿足要求,則需要回到;參數(shù)做出評(píng)估,若不滿足要求,則需要回到; 驗(yàn)證驗(yàn)證是為保證系統(tǒng)可以按照設(shè)計(jì)要求正常工作,而是為保證系統(tǒng)可以按照設(shè)計(jì)要求正常工作,而達(dá)到合理置信度的過程。根據(jù)應(yīng)用領(lǐng)域的不同可能采取不達(dá)到合理置信度的過程。根據(jù)應(yīng)用領(lǐng)域的不同可
17、能采取不同的驗(yàn)證方法,但都必須經(jīng)過性能與功能的協(xié)同仿真。同的驗(yàn)證方法,但都必須經(jīng)過性能與功能的協(xié)同仿真。 實(shí)現(xiàn)實(shí)現(xiàn)通過綜合后的硬件的物理實(shí)現(xiàn)和通過編譯后的通過綜合后的硬件的物理實(shí)現(xiàn)和通過編譯后的軟件執(zhí)行。軟件執(zhí)行。北京航空航天大學(xué) 清華大學(xué)出版社171實(shí)時(shí)操作系統(tǒng)定義及特點(diǎn)實(shí)時(shí)操作系統(tǒng)定義及特點(diǎn) 實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)操作系統(tǒng)RTOS是指能支持實(shí)時(shí)控制系統(tǒng)工作的操作系統(tǒng),是指能支持實(shí)時(shí)控制系統(tǒng)工作的操作系統(tǒng),它可以在固定的時(shí)間內(nèi)對(duì)一個(gè)或多個(gè)由外設(shè)發(fā)出的信號(hào)做出適當(dāng)它可以在固定的時(shí)間內(nèi)對(duì)一個(gè)或多個(gè)由外設(shè)發(fā)出的信號(hào)做出適當(dāng)?shù)姆磻?yīng)。的反應(yīng)。 實(shí)時(shí)操作系統(tǒng)的主要特征:規(guī)模小、中斷被屏蔽的時(shí)間很短、中實(shí)時(shí)操作
18、系統(tǒng)的主要特征:規(guī)模小、中斷被屏蔽的時(shí)間很短、中斷處理時(shí)間短且任務(wù)切換很快。斷處理時(shí)間短且任務(wù)切換很快。 常見的實(shí)時(shí)操作系統(tǒng)常見的實(shí)時(shí)操作系統(tǒng) 商用的商用的RTOS:VxWorks、pSOS、Palm OS等;等; 免費(fèi)的免費(fèi)的RTOS:Linux和和C/OS等等 嵌入式實(shí)時(shí)操作系統(tǒng)的精華在于向開發(fā)人員提供一個(gè)實(shí)時(shí)多任務(wù)嵌入式實(shí)時(shí)操作系統(tǒng)的精華在于向開發(fā)人員提供一個(gè)實(shí)時(shí)多任務(wù)內(nèi)核。開發(fā)人員將具體一項(xiàng)應(yīng)用工作分解成若干個(gè)獨(dú)立的任務(wù),內(nèi)核。開發(fā)人員將具體一項(xiàng)應(yīng)用工作分解成若干個(gè)獨(dú)立的任務(wù),將各任務(wù)要做的事、任務(wù)間的關(guān)系向?qū)崟r(shí)多任務(wù)內(nèi)核交代清楚,將各任務(wù)要做的事、任務(wù)間的關(guān)系向?qū)崟r(shí)多任務(wù)內(nèi)核交代清楚
19、,讓實(shí)時(shí)多任務(wù)內(nèi)核去管理這些任務(wù),開發(fā)過程就完成了。讓實(shí)時(shí)多任務(wù)內(nèi)核去管理這些任務(wù),開發(fā)過程就完成了。 嵌入式實(shí)時(shí)操作系統(tǒng)沒有文件管理,一般不需要內(nèi)存管理,它具嵌入式實(shí)時(shí)操作系統(tǒng)沒有文件管理,一般不需要內(nèi)存管理,它具有的是實(shí)時(shí)操作系統(tǒng)中最重要的內(nèi)容,即多任務(wù)實(shí)時(shí)調(diào)度和任務(wù)有的是實(shí)時(shí)操作系統(tǒng)中最重要的內(nèi)容,即多任務(wù)實(shí)時(shí)調(diào)度和任務(wù)的定時(shí)、同步操作,具有很短的任務(wù)切換時(shí)間和實(shí)時(shí)響應(yīng)速度。的定時(shí)、同步操作,具有很短的任務(wù)切換時(shí)間和實(shí)時(shí)響應(yīng)速度。北京航空航天大學(xué) 清華大學(xué)出版社18 VxWorks操作系統(tǒng)是美國操作系統(tǒng)是美國WindRiver公司于公司于1983年設(shè)計(jì)開發(fā)的一種嵌入式年設(shè)計(jì)開發(fā)的一種嵌入
20、式RTOS,具有高,具有高性能的內(nèi)核以及友好的用戶開發(fā)環(huán)境,在嵌性能的內(nèi)核以及友好的用戶開發(fā)環(huán)境,在嵌入式實(shí)時(shí)操作系統(tǒng)領(lǐng)域牢牢占據(jù)著一席之地。入式實(shí)時(shí)操作系統(tǒng)領(lǐng)域牢牢占據(jù)著一席之地。 VxWorksVxWorks所具有的顯著特點(diǎn)是:所具有的顯著特點(diǎn)是: 可靠性、實(shí)時(shí)性和可裁減性。可靠性、實(shí)時(shí)性和可裁減性。 它支持多種處理器,如它支持多種處理器,如x86x86、i960i960、Sun Sun SparcSparc、Motorola MC68xxxMotorola MC68xxx、MIPS MIPS 、POWER POWER PCPC等等。等等。3-2北京航空航天大學(xué) 清華大學(xué)出版社19 pSO
21、S原屬原屬ISI公司的產(chǎn)品,但公司的產(chǎn)品,但I(xiàn)SI已經(jīng)被已經(jīng)被WinRiver公司兼并,現(xiàn)在公司兼并,現(xiàn)在pSOS屬于屬于WindRiver公司的產(chǎn)品。公司的產(chǎn)品。 該系統(tǒng)是一個(gè)模塊化、高性能的實(shí)時(shí)操作系該系統(tǒng)是一個(gè)模塊化、高性能的實(shí)時(shí)操作系統(tǒng)。統(tǒng)。 開發(fā)者可以利用它來實(shí)現(xiàn)從簡單的單個(gè)獨(dú)立開發(fā)者可以利用它來實(shí)現(xiàn)從簡單的單個(gè)獨(dú)立設(shè)備到復(fù)雜的、網(wǎng)絡(luò)化的多處理器系統(tǒng)功能。設(shè)備到復(fù)雜的、網(wǎng)絡(luò)化的多處理器系統(tǒng)功能。3-2北京航空航天大學(xué) 清華大學(xué)出版社20 Palm OS是著名的網(wǎng)絡(luò)設(shè)備制造商是著名的網(wǎng)絡(luò)設(shè)備制造商3COM旗旗下的下的Palm Computing掌上電腦公司的產(chǎn)品。掌上電腦公司的產(chǎn)品。
22、Palm OSPalm OS在在PDAPDA市場上占有很大的市場份額。市場上占有很大的市場份額。獲得了獲得了IBMIBM、OracleOracle、NokiaNokia和和SonySony等國際知等國際知名公司的支持,同時(shí)有很多的軟件開發(fā)者為名公司的支持,同時(shí)有很多的軟件開發(fā)者為其開發(fā)軟件應(yīng)用程序,還有相當(dāng)多的硬件開其開發(fā)軟件應(yīng)用程序,還有相當(dāng)多的硬件開發(fā)人員為其開發(fā)外圍擴(kuò)展設(shè)備,例如發(fā)人員為其開發(fā)外圍擴(kuò)展設(shè)備,例如GPSGPS系系統(tǒng)、數(shù)碼攝像頭、錄音系統(tǒng)等。統(tǒng)、數(shù)碼攝像頭、錄音系統(tǒng)等。 3-2北京航空航天大學(xué) 清華大學(xué)出版社21 任務(wù)任務(wù)(或稱(或稱“線程線程”)及其)及其任務(wù)工作狀態(tài)任務(wù)工
23、作狀態(tài) 指擁有所有指擁有所有CPU資源的程序分段,資源的程序分段,線程線程為調(diào)度的基本單位為調(diào)度的基本單位 每個(gè)任務(wù)都是整個(gè)應(yīng)用的某一部分,每個(gè)任務(wù)被賦予一定每個(gè)任務(wù)都是整個(gè)應(yīng)用的某一部分,每個(gè)任務(wù)被賦予一定的優(yōu)先級(jí),的優(yōu)先級(jí), 有它自己的一套有它自己的一套CPU寄存器和自己的棧空間。寄存器和自己的??臻g。圖圖8-5 實(shí)時(shí)系統(tǒng)中的任務(wù)狀態(tài)實(shí)時(shí)系統(tǒng)中的任務(wù)狀態(tài)北京航空航天大學(xué) 清華大學(xué)出版社22 實(shí)時(shí)內(nèi)核負(fù)責(zé)管理各個(gè)任務(wù),為每個(gè)任務(wù)分配實(shí)時(shí)內(nèi)核負(fù)責(zé)管理各個(gè)任務(wù),為每個(gè)任務(wù)分配CPU時(shí)間,時(shí)間,并負(fù)責(zé)任務(wù)間的通信。提供的基本服務(wù)是任務(wù)切換。并負(fù)責(zé)任務(wù)間的通信。提供的基本服務(wù)是任務(wù)切換。(non-p
24、reemptive)(preemptive)內(nèi)核可以剝奪正在運(yùn)行著的任務(wù)的內(nèi)核可以剝奪正在運(yùn)行著的任務(wù)的CPU使用使用權(quán),并將該使用權(quán)交給進(jìn)入就緒態(tài)的優(yōu)先級(jí)權(quán),并將該使用權(quán)交給進(jìn)入就緒態(tài)的優(yōu)先級(jí)更高的任務(wù)。更高的任務(wù)。 實(shí)時(shí)內(nèi)核實(shí)時(shí)內(nèi)核可剝奪型(占先式)可剝奪型(占先式)不可剝奪型(非占先式)不可剝奪型(非占先式)內(nèi)核運(yùn)用某種算法決定讓哪個(gè)任務(wù)運(yùn)行后,就內(nèi)核運(yùn)用某種算法決定讓哪個(gè)任務(wù)運(yùn)行后,就將將CPU控制權(quán)完全交給這個(gè)任務(wù),直到該任務(wù)控制權(quán)完全交給這個(gè)任務(wù),直到該任務(wù)主動(dòng)將主動(dòng)將CPU控制權(quán)還回來??刂茩?quán)還回來。 北京航空航天大學(xué) 清華大學(xué)出版社23 任務(wù)按照其重要性被賦予優(yōu)先級(jí)。任務(wù)按照其
25、重要性被賦予優(yōu)先級(jí)。 靜態(tài)優(yōu)先級(jí)靜態(tài)優(yōu)先級(jí)應(yīng)用程序執(zhí)行過程中諸任務(wù)優(yōu)先級(jí)不變。應(yīng)用程序執(zhí)行過程中諸任務(wù)優(yōu)先級(jí)不變。在這種系統(tǒng)中,諸任務(wù)以及它們的時(shí)間約束在這種系統(tǒng)中,諸任務(wù)以及它們的時(shí)間約束在程序編譯時(shí)是已知的。在程序編譯時(shí)是已知的。 動(dòng)態(tài)優(yōu)先級(jí)動(dòng)態(tài)優(yōu)先級(jí)應(yīng)用程序執(zhí)行過程中,任務(wù)的優(yōu)先級(jí)是可變應(yīng)用程序執(zhí)行過程中,任務(wù)的優(yōu)先級(jí)是可變的。的。北京航空航天大學(xué) 清華大學(xué)出版社24 為內(nèi)核的主要職責(zé)之一,它決定該輪到哪個(gè)任務(wù)運(yùn)為內(nèi)核的主要職責(zé)之一,它決定該輪到哪個(gè)任務(wù)運(yùn)行了。行了。 調(diào)度是基于優(yōu)先級(jí)的。調(diào)度是基于優(yōu)先級(jí)的。 CPU總是讓處在就緒態(tài)的總是讓處在就緒態(tài)的優(yōu)先級(jí)最高的任務(wù)先運(yùn)行。優(yōu)先級(jí)最高的
26、任務(wù)先運(yùn)行。 調(diào)度的基本方式有:可剝奪型和不可剝奪型調(diào)度的基本方式有:可剝奪型和不可剝奪型 基本調(diào)度算法基本調(diào)度算法先來先服務(wù)先來先服務(wù) 最短周期優(yōu)先最短周期優(yōu)先優(yōu)先級(jí)法優(yōu)先級(jí)法 輪轉(zhuǎn)法輪轉(zhuǎn)法多級(jí)隊(duì)列法多級(jí)隊(duì)列法 多級(jí)反饋隊(duì)列多級(jí)反饋隊(duì)列 多數(shù)實(shí)時(shí)內(nèi)核是基于優(yōu)先級(jí)調(diào)度的多種方法多數(shù)實(shí)時(shí)內(nèi)核是基于優(yōu)先級(jí)調(diào)度的多種方法的復(fù)合。的復(fù)合。北京航空航天大學(xué) 清華大學(xué)出版社25 互斥(互斥(Mutex)機(jī)制)機(jī)制 信號(hào)量(信號(hào)量(Semaphore)機(jī)制)機(jī)制 代碼臨界區(qū)(代碼臨界區(qū)(Critical Section)臨界資源臨界資源指處理時(shí)不可分割的代碼。指處理時(shí)不可分割的代碼。 任務(wù)間通信任務(wù)間通信(
27、Inter task com) 可預(yù)測性(可預(yù)測性(Predictability) 北京航空航天大學(xué) 清華大學(xué)出版社26 實(shí)時(shí)系統(tǒng)是實(shí)時(shí)系統(tǒng)是面向具體應(yīng)用面向具體應(yīng)用,對(duì)外來事件在限定時(shí)間內(nèi)能做,對(duì)外來事件在限定時(shí)間內(nèi)能做出反應(yīng)的系統(tǒng)。限定時(shí)間的范圍很廣,可從出反應(yīng)的系統(tǒng)。限定時(shí)間的范圍很廣,可從微秒級(jí)(微秒級(jí)(如信如信號(hào)處理)到號(hào)處理)到分級(jí)分級(jí)(如聯(lián)機(jī)查詢系統(tǒng))。(如聯(lián)機(jī)查詢系統(tǒng))。 實(shí)時(shí)系統(tǒng)中主要用三個(gè)指標(biāo)來衡量其實(shí)時(shí)性:實(shí)時(shí)系統(tǒng)中主要用三個(gè)指標(biāo)來衡量其實(shí)時(shí)性: 系統(tǒng)響應(yīng)時(shí)間系統(tǒng)響應(yīng)時(shí)間(System response Time):從系):從系統(tǒng)發(fā)出處理要求,到系統(tǒng)給出應(yīng)答信號(hào)的過程所用
28、的時(shí)統(tǒng)發(fā)出處理要求,到系統(tǒng)給出應(yīng)答信號(hào)的過程所用的時(shí)間。間。 任務(wù)切換時(shí)間任務(wù)切換時(shí)間(Context-switching time):指任):指任務(wù)之間切換所使用的時(shí)間。務(wù)之間切換所使用的時(shí)間。 中斷延遲中斷延遲(Interrupt latency):指從計(jì)算機(jī)接收):指從計(jì)算機(jī)接收到中斷信號(hào)到操作系統(tǒng)做出響應(yīng),并完成切換轉(zhuǎn)入中斷到中斷信號(hào)到操作系統(tǒng)做出響應(yīng),并完成切換轉(zhuǎn)入中斷服務(wù)程序的過程所用時(shí)間。服務(wù)程序的過程所用時(shí)間。北京航空航天大學(xué) 清華大學(xué)出版社27 嵌入式系統(tǒng)本身不具備自主開發(fā)能力,在設(shè)計(jì)完成后,需嵌入式系統(tǒng)本身不具備自主開發(fā)能力,在設(shè)計(jì)完成后,需要一套專門的開發(fā)工具和開發(fā)環(huán)境才
29、能進(jìn)行開發(fā)。要一套專門的開發(fā)工具和開發(fā)環(huán)境才能進(jìn)行開發(fā)。 這些工具和環(huán)境一般是基于通用計(jì)算機(jī)上的軟硬件設(shè)備以這些工具和環(huán)境一般是基于通用計(jì)算機(jī)上的軟硬件設(shè)備以及各種邏輯分析儀、混合信號(hào)示波器等。及各種邏輯分析儀、混合信號(hào)示波器等。 如果開發(fā)機(jī)就是運(yùn)行機(jī),則稱為本地編譯。如果開發(fā)機(jī)就是運(yùn)行機(jī),則稱為本地編譯。 “宿主機(jī)宿主機(jī)/目標(biāo)機(jī)目標(biāo)機(jī)”方式:方式: 利用宿主機(jī)豐富的資源和良好的開發(fā)環(huán)境來對(duì)目標(biāo)機(jī)將要運(yùn)行的利用宿主機(jī)豐富的資源和良好的開發(fā)環(huán)境來對(duì)目標(biāo)機(jī)將要運(yùn)行的程序進(jìn)行開發(fā)和仿真調(diào)試,程序進(jìn)行開發(fā)和仿真調(diào)試, 通過串行口或網(wǎng)絡(luò)接口將交叉匯編生成的目標(biāo)代碼下載到目標(biāo)機(jī)通過串行口或網(wǎng)絡(luò)接口將交叉匯
30、編生成的目標(biāo)代碼下載到目標(biāo)機(jī)上,并利用交叉調(diào)試器在監(jiān)控程序或?qū)崟r(shí)內(nèi)核的支持下進(jìn)行實(shí)時(shí)上,并利用交叉調(diào)試器在監(jiān)控程序或?qū)崟r(shí)內(nèi)核的支持下進(jìn)行實(shí)時(shí)分析和調(diào)度。分析和調(diào)度。 最后由目標(biāo)機(jī)在特定的環(huán)境下運(yùn)行。最后由目標(biāo)機(jī)在特定的環(huán)境下運(yùn)行。圖圖8-6 宿主機(jī)宿主機(jī)/目標(biāo)機(jī)的開發(fā)方式目標(biāo)機(jī)的開發(fā)方式北京航空航天大學(xué) 清華大學(xué)出版社28(1) C/OS-II的特點(diǎn)的特點(diǎn) 有源代碼,有范例,且源代碼中有詳細(xì)的注解。有源代碼,有范例,且源代碼中有詳細(xì)的注解。 源代碼的源代碼的90%以上用以上用C語言寫成,可移植性好。語言寫成,可移植性好。 C/OS-II可裁減、可固化,最小內(nèi)核的可裁減、可固化,最小內(nèi)核的ROM
31、可以小到可以小到2KB以下。以下。 多任務(wù)。多任務(wù)。 C/OS-II內(nèi)核屬于優(yōu)先級(jí)的可剝奪型,可以管理內(nèi)核屬于優(yōu)先級(jí)的可剝奪型,可以管理64個(gè)任務(wù)個(gè)任務(wù)(目前的版本保留(目前的版本保留8個(gè)給系統(tǒng),應(yīng)用程序最多可以有個(gè)給系統(tǒng),應(yīng)用程序最多可以有56個(gè)任個(gè)任務(wù))。每個(gè)任務(wù)有特定的優(yōu)先級(jí),用一個(gè)數(shù)字來標(biāo)識(shí),優(yōu)先級(jí)務(wù))。每個(gè)任務(wù)有特定的優(yōu)先級(jí),用一個(gè)數(shù)字來標(biāo)識(shí),優(yōu)先級(jí)越高,數(shù)字越小。任務(wù)切換采用查表法,切換速度快。實(shí)時(shí)性越高,數(shù)字越小。任務(wù)切換采用查表法,切換速度快。實(shí)時(shí)性是可知的、有保證的。是可知的、有保證的。 中斷管理。中斷管理。 中斷嵌套層數(shù)可達(dá)中斷嵌套層數(shù)可達(dá)255層。層。 穩(wěn)定性與可靠性有保
32、證。穩(wěn)定性與可靠性有保證。 C/OS自自1992年以來,已經(jīng)有上千個(gè)應(yīng)用,是一個(gè)被實(shí)踐年以來,已經(jīng)有上千個(gè)應(yīng)用,是一個(gè)被實(shí)踐證實(shí)為好用的內(nèi)核。證實(shí)為好用的內(nèi)核。北京航空航天大學(xué) 清華大學(xué)出版社29 C/OS是可剝奪型實(shí)時(shí)多任務(wù)內(nèi)核。是可剝奪型實(shí)時(shí)多任務(wù)內(nèi)核。 這種內(nèi)核在任何時(shí)刻都運(yùn)行就緒了的最高優(yōu)先級(jí)的任務(wù)。這種內(nèi)核在任何時(shí)刻都運(yùn)行就緒了的最高優(yōu)先級(jí)的任務(wù)。 C/OS調(diào)度工作的內(nèi)容是進(jìn)行最高優(yōu)先級(jí)任務(wù)的尋找和任務(wù)的切換。調(diào)度工作的內(nèi)容是進(jìn)行最高優(yōu)先級(jí)任務(wù)的尋找和任務(wù)的切換。 C/OS還提供了調(diào)度的鎖定和解鎖機(jī)制還提供了調(diào)度的鎖定和解鎖機(jī)制 使某個(gè)任務(wù)就可以短期禁止內(nèi)核進(jìn)行任務(wù)調(diào)度,從而占有使某
33、個(gè)任務(wù)就可以短期禁止內(nèi)核進(jìn)行任務(wù)調(diào)度,從而占有CPU。 由于調(diào)度鎖定采用的是累加方式,內(nèi)核允許任務(wù)進(jìn)行多級(jí)鎖定,由于調(diào)度鎖定采用的是累加方式,內(nèi)核允許任務(wù)進(jìn)行多級(jí)鎖定,最大鎖定層數(shù)不能超過最大鎖定層數(shù)不能超過255。 當(dāng)一個(gè)當(dāng)一個(gè)任務(wù)鎖定了系統(tǒng)的任務(wù)調(diào)度任務(wù)鎖定了系統(tǒng)的任務(wù)調(diào)度時(shí),時(shí), C/OS基于優(yōu)先基于優(yōu)先級(jí)的實(shí)時(shí)運(yùn)行方式不復(fù)存在,優(yōu)先級(jí)由高到低的次序被改級(jí)的實(shí)時(shí)運(yùn)行方式不復(fù)存在,優(yōu)先級(jí)由高到低的次序被改為:各種中斷任務(wù)(最高)、鎖定調(diào)度的任務(wù)(其次)、為:各種中斷任務(wù)(最高)、鎖定調(diào)度的任務(wù)(其次)、其他所有任務(wù)(最低)。其他所有任務(wù)(最低)。北京航空航天大學(xué) 清華大學(xué)出版社30 嵌入式
34、設(shè)計(jì)具有一個(gè)生命周期,即可以將嵌入式設(shè)計(jì)具有一個(gè)生命周期,即可以將嵌入式項(xiàng)目設(shè)計(jì)分為嵌入式項(xiàng)目設(shè)計(jì)分為7個(gè)具體階段:個(gè)具體階段:產(chǎn)品定義;產(chǎn)品定義;軟件與硬件的劃分;軟件與硬件的劃分;迭代與實(shí)現(xiàn);迭代與實(shí)現(xiàn);詳細(xì)的硬件與軟件設(shè)計(jì);詳細(xì)的硬件與軟件設(shè)計(jì);硬件與軟件集成;硬件與軟件集成;產(chǎn)品測試與發(fā)布;產(chǎn)品測試與發(fā)布;持續(xù)維護(hù)與升級(jí)。持續(xù)維護(hù)與升級(jí)。北京航空航天大學(xué) 清華大學(xué)出版社31 設(shè)計(jì)過程中的文檔管理包括:設(shè)計(jì)過程中的文檔管理包括:需求分析文檔(產(chǎn)品定義階段)需求分析文檔(產(chǎn)品定義階段)總體方案設(shè)計(jì)(選擇過程和軟硬件劃分階段)總體方案設(shè)計(jì)(選擇過程和軟硬件劃分階段)概要設(shè)計(jì)文檔(軟硬件初步設(shè)
35、計(jì)階段)概要設(shè)計(jì)文檔(軟硬件初步設(shè)計(jì)階段)詳細(xì)設(shè)計(jì)文檔(軟硬件詳細(xì)設(shè)計(jì)階段)詳細(xì)設(shè)計(jì)文檔(軟硬件詳細(xì)設(shè)計(jì)階段)測試需求文檔(模塊測試及聯(lián)調(diào)準(zhǔn)備階段)測試需求文檔(模塊測試及聯(lián)調(diào)準(zhǔn)備階段)系統(tǒng)測試報(bào)告(測試小組)系統(tǒng)測試報(bào)告(測試小組)使用說明文檔使用說明文檔/源程序注釋源程序注釋北京航空航天大學(xué) 清華大學(xué)出版社32(1) 確定嵌入式系統(tǒng)的要求確定嵌入式系統(tǒng)的要求(2) 設(shè)計(jì)系統(tǒng)的體系結(jié)構(gòu)和總體方案設(shè)計(jì)設(shè)計(jì)系統(tǒng)的體系結(jié)構(gòu)和總體方案設(shè)計(jì)(3) 選擇開發(fā)平臺(tái)選擇開發(fā)平臺(tái)(4) 應(yīng)用編碼并按照代碼優(yōu)化原則優(yōu)化代碼應(yīng)用編碼并按照代碼優(yōu)化原則優(yōu)化代碼(5) 在主機(jī)系統(tǒng)上驗(yàn)證軟件在主機(jī)系統(tǒng)上驗(yàn)證軟件(6)
36、在目標(biāo)系統(tǒng)上驗(yàn)證軟件在目標(biāo)系統(tǒng)上驗(yàn)證軟件北京航空航天大學(xué) 清華大學(xué)出版社33 當(dāng)進(jìn)行嵌入式系統(tǒng)開發(fā)時(shí),選擇一套含有編輯軟件、編譯當(dāng)進(jìn)行嵌入式系統(tǒng)開發(fā)時(shí),選擇一套含有編輯軟件、編譯軟件、匯編軟件、連接軟件、調(diào)試軟件、工程管理及函數(shù)軟件、匯編軟件、連接軟件、調(diào)試軟件、工程管理及函數(shù)庫的集成開發(fā)環(huán)境是必不可少的。庫的集成開發(fā)環(huán)境是必不可少的。 ARM SDT是是ARM Software Development Toolkit的簡寫,是的簡寫,是ARM公司為方便用戶在公司為方便用戶在ARM芯片上芯片上進(jìn)行應(yīng)用軟件開發(fā)而推出的一整套集成開發(fā)工具。進(jìn)行應(yīng)用軟件開發(fā)而推出的一整套集成開發(fā)工具。ARM SDT
37、由一套完備的應(yīng)用程序構(gòu)成,并附帶支持文檔和例由一套完備的應(yīng)用程序構(gòu)成,并附帶支持文檔和例子,可以用于編寫和調(diào)試子,可以用于編寫和調(diào)試ARM系列的系列的RISC處理器應(yīng)用處理器應(yīng)用程序。程序。圖圖8-7 基于基于ARM的嵌入式硬件平臺(tái)體系結(jié)構(gòu)的嵌入式硬件平臺(tái)體系結(jié)構(gòu)北京航空航天大學(xué) 清華大學(xué)出版社34在建立實(shí)時(shí)操作系統(tǒng)之前,需要將在建立實(shí)時(shí)操作系統(tǒng)之前,需要將 C/OS-II移植到自己的硬件平臺(tái)移植到自己的硬件平臺(tái)上,然后再擴(kuò)展得到上,然后再擴(kuò)展得到RTOS的體系結(jié)構(gòu),并在此基礎(chǔ)上,建立相應(yīng)的的體系結(jié)構(gòu),并在此基礎(chǔ)上,建立相應(yīng)的文件系統(tǒng)、外設(shè)及驅(qū)動(dòng)程序、引進(jìn)圖形用戶接口等,得到自己的文件系統(tǒng)、外
38、設(shè)及驅(qū)動(dòng)程序、引進(jìn)圖形用戶接口等,得到自己的RTOS。(1) C/OS-II的移植的移植“移植移植”是指使一個(gè)實(shí)時(shí)操作系統(tǒng)能夠在某個(gè)微處理器是指使一個(gè)實(shí)時(shí)操作系統(tǒng)能夠在某個(gè)微處理器平臺(tái)上運(yùn)行。平臺(tái)上運(yùn)行。 C/OS-II移植到移植到S3C44B0X要做的工作:要做的工作: 在在OS_CPU.H中設(shè)置與處理器和編譯器相關(guān)的代中設(shè)置與處理器和編譯器相關(guān)的代碼、對(duì)具體處理器的字長重新定義一系列數(shù)據(jù)類型、碼、對(duì)具體處理器的字長重新定義一系列數(shù)據(jù)類型、聲明幾個(gè)用于開關(guān)中斷和任務(wù)切換的宏;聲明幾個(gè)用于開關(guān)中斷和任務(wù)切換的宏; 在在OS_CPU_C.C中用中用C語言編寫語言編寫6個(gè)與操作系統(tǒng)相個(gè)與操作系統(tǒng)相
39、關(guān)的函數(shù);關(guān)的函數(shù); 在在OS_CPU_A.ASM中改寫中改寫4個(gè)與處理器相關(guān)的匯個(gè)與處理器相關(guān)的匯編語言函數(shù)。編語言函數(shù)。北京航空航天大學(xué) 清華大學(xué)出版社35圖圖8-10 基于基于 COS-II擴(kuò)展擴(kuò)展RTOS的體系結(jié)構(gòu)的體系結(jié)構(gòu)北京航空航天大學(xué) 清華大學(xué)出版社36(3) 建立文件系統(tǒng)建立文件系統(tǒng) 針對(duì)嵌入式的應(yīng)用,參考針對(duì)嵌入式的應(yīng)用,參考FAT16的文件系統(tǒng),可以利用與文件系的文件系統(tǒng),可以利用與文件系統(tǒng)相關(guān)的統(tǒng)相關(guān)的API 函數(shù),來建立相應(yīng)的簡單文件系統(tǒng)。函數(shù),來建立相應(yīng)的簡單文件系統(tǒng)。(4) 外設(shè)驅(qū)動(dòng)程序外設(shè)驅(qū)動(dòng)程序 外設(shè)驅(qū)動(dòng)函數(shù)可以對(duì)系統(tǒng)提供訪問外圍設(shè)備的接口。外設(shè)驅(qū)動(dòng)函數(shù)可以對(duì)系
40、統(tǒng)提供訪問外圍設(shè)備的接口。(5) 圖形用戶接口(圖形用戶接口(GUI) 可以為人機(jī)交互建立起圖形用戶接口,即為圖形用戶界面應(yīng)用建可以為人機(jī)交互建立起圖形用戶接口,即為圖形用戶界面應(yīng)用建立相應(yīng)的立相應(yīng)的API函數(shù),其中包括基于函數(shù),其中包括基于Unicode的漢字字庫、基本繪的漢字字庫、基本繪圖函數(shù)、典型的控鍵。圖函數(shù)、典型的控鍵。(6) 系統(tǒng)消息隊(duì)列系統(tǒng)消息隊(duì)列 在多任務(wù)操作系統(tǒng)中,各任務(wù)之間通常是通過消息來傳遞信息和在多任務(wù)操作系統(tǒng)中,各任務(wù)之間通常是通過消息來傳遞信息和同步的。用戶應(yīng)用程序的每個(gè)任務(wù)都有自己的信息響應(yīng)隊(duì)列和消同步的。用戶應(yīng)用程序的每個(gè)任務(wù)都有自己的信息響應(yīng)隊(duì)列和消息循環(huán)。通
41、常,任務(wù)通過等待消息而處于掛起狀態(tài)。當(dāng)任務(wù)接到息循環(huán)。通常,任務(wù)通過等待消息而處于掛起狀態(tài)。當(dāng)任務(wù)接到消息后,則處于就緒狀態(tài),然后開始判斷所接收到的消息是否需消息后,則處于就緒狀態(tài),然后開始判斷所接收到的消息是否需要處理。如果是,則執(zhí)行相應(yīng)功能的處理函數(shù)。執(zhí)行完相應(yīng)處理要處理。如果是,則執(zhí)行相應(yīng)功能的處理函數(shù)。執(zhí)行完相應(yīng)處理函數(shù)后,將刪除所接收到的消息,繼續(xù)掛起等待下一條消息。函數(shù)后,將刪除所接收到的消息,繼續(xù)掛起等待下一條消息。北京航空航天大學(xué) 清華大學(xué)出版社37 在嵌入式硬件平臺(tái)的基礎(chǔ)上,有了前面基于在嵌入式硬件平臺(tái)的基礎(chǔ)上,有了前面基于 C/OS-II建建立的實(shí)時(shí)操作系統(tǒng),用戶就可以在相
42、應(yīng)的操作系統(tǒng)平臺(tái)上立的實(shí)時(shí)操作系統(tǒng),用戶就可以在相應(yīng)的操作系統(tǒng)平臺(tái)上使用操作系統(tǒng)所提供的使用操作系統(tǒng)所提供的GUI及及API函數(shù)來編制應(yīng)用程序函數(shù)來編制應(yīng)用程序了。了。(1) 操作系統(tǒng)的啟動(dòng)過程操作系統(tǒng)的啟動(dòng)過程(2) 實(shí)現(xiàn)消息循環(huán)實(shí)現(xiàn)消息循環(huán)(3) 任務(wù)對(duì)應(yīng)資源分配及其任務(wù)的創(chuàng)建任務(wù)對(duì)應(yīng)資源分配及其任務(wù)的創(chuàng)建(4) 任務(wù)的實(shí)現(xiàn)任務(wù)的實(shí)現(xiàn)北京航空航天大學(xué) 清華大學(xué)出版社381 稅控收款機(jī)稅控收款機(jī)圖圖8-11 稅控收款機(jī)的系統(tǒng)組成框圖稅控收款機(jī)的系統(tǒng)組成框圖 圖圖8-12 系統(tǒng)任務(wù)的劃分系統(tǒng)任務(wù)的劃分 北京航空航天大學(xué) 清華大學(xué)出版社39(1) 智能滴灌控制器的硬件設(shè)計(jì)智能滴灌控制器的硬件設(shè)計(jì)
43、圖圖8-13 智能灌溉控制器系統(tǒng)硬件結(jié)構(gòu)智能灌溉控制器系統(tǒng)硬件結(jié)構(gòu) 北京航空航天大學(xué) 清華大學(xué)出版社40 軟件設(shè)計(jì)采軟件設(shè)計(jì)采用模塊化思想,用模塊化思想,嵌入式控制器使嵌入式控制器使用基于用基于C/OS內(nèi)內(nèi)核的核的RTOS操作操作系統(tǒng)。系統(tǒng)。圖圖8-13 智能滴灌控制器系統(tǒng)軟件主流程智能滴灌控制器系統(tǒng)軟件主流程 北京航空航天大學(xué) 清華大學(xué)出版社418.1 嵌入式系統(tǒng)嵌入式系統(tǒng)8.1.1 概述概述8.1.2 軟硬件協(xié)同設(shè)計(jì)技術(shù)軟硬件協(xié)同設(shè)計(jì)技術(shù)8.1.3 實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)操作系統(tǒng) 8.1.4 嵌入式系統(tǒng)的開發(fā)嵌入式系統(tǒng)的開發(fā)8.1.5 嵌入式控制系統(tǒng)設(shè)計(jì)實(shí)例嵌入式控制系統(tǒng)設(shè)計(jì)實(shí)例8.2 可編程控
44、制器可編程控制器(PLC)8.2.1 PLC概述概述 8.2.2 PLC結(jié)構(gòu)和工作原理結(jié)構(gòu)和工作原理8.2.3 PLC常用編程語言常用編程語言8.2.4 PLC應(yīng)用實(shí)例應(yīng)用實(shí)例8.2.5 PLC網(wǎng)絡(luò)系統(tǒng)網(wǎng)絡(luò)系統(tǒng)北京航空航天大學(xué) 清華大學(xué)出版社42 自動(dòng)控制系統(tǒng)包括:自動(dòng)控制系統(tǒng)包括:連續(xù)量的運(yùn)動(dòng)控制連續(xù)量的運(yùn)動(dòng)控制連續(xù)量的過程控制連續(xù)量的過程控制斷續(xù)量的控制系統(tǒng)斷續(xù)量的控制系統(tǒng) (離散量,順序控制為主流離散量,順序控制為主流) 時(shí)間順序控制系統(tǒng)時(shí)間順序控制系統(tǒng) 邏輯順序控制系統(tǒng)邏輯順序控制系統(tǒng) 條件順序控制系統(tǒng)條件順序控制系統(tǒng) 北京航空航天大學(xué) 清華大學(xué)出版社43 可編程控制器是一種專為在工業(yè)
45、環(huán)境下應(yīng)用而設(shè)可編程控制器是一種專為在工業(yè)環(huán)境下應(yīng)用而設(shè)計(jì)的數(shù)字運(yùn)算操作的電子系統(tǒng),它采用一種可編計(jì)的數(shù)字運(yùn)算操作的電子系統(tǒng),它采用一種可編程序的存儲(chǔ)器,用來在其內(nèi)部存儲(chǔ)執(zhí)行邏輯運(yùn)算、程序的存儲(chǔ)器,用來在其內(nèi)部存儲(chǔ)執(zhí)行邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)和算術(shù)運(yùn)算等操作的指令,順序控制、定時(shí)、計(jì)數(shù)和算術(shù)運(yùn)算等操作的指令,并通過數(shù)字式或模擬式的輸入和輸出,控制各種并通過數(shù)字式或模擬式的輸入和輸出,控制各種類型的機(jī)械或生產(chǎn)過程??删幊炭刂破骷捌溆嘘P(guān)類型的機(jī)械或生產(chǎn)過程??删幊炭刂破骷捌溆嘘P(guān)設(shè)備,都應(yīng)按易于與工業(yè)控制系統(tǒng)形成一個(gè)整體,設(shè)備,都應(yīng)按易于與工業(yè)控制系統(tǒng)形成一個(gè)整體,并易于擴(kuò)充其功能的原則設(shè)計(jì)。
46、并易于擴(kuò)充其功能的原則設(shè)計(jì)。 北京航空航天大學(xué) 清華大學(xué)出版社44 1969年,美國數(shù)字設(shè)備公司根據(jù)美國通用汽車公司招標(biāo)年,美國數(shù)字設(shè)備公司根據(jù)美國通用汽車公司招標(biāo)的要求,研制出世界上第一臺(tái)可編程邏輯控制器的要求,研制出世界上第一臺(tái)可編程邏輯控制器 (Programmable Logic Controller,PLC) 發(fā)展經(jīng)歷發(fā)展經(jīng)歷 第一代:多用一位機(jī)開發(fā),只有單一的邏輯控制功能;第一代:多用一位機(jī)開發(fā),只有單一的邏輯控制功能;第二代:換成第二代:換成8位微處理器及半導(dǎo)體存儲(chǔ)器,控制功能得到較大的擴(kuò)位微處理器及半導(dǎo)體存儲(chǔ)器,控制功能得到較大的擴(kuò)展;展;第三代:大量使用高性能微處理器,向多功
47、能及聯(lián)網(wǎng)通信方面發(fā)展,第三代:大量使用高性能微處理器,向多功能及聯(lián)網(wǎng)通信方面發(fā)展,初步形成了分布式的通信網(wǎng)絡(luò)體系;初步形成了分布式的通信網(wǎng)絡(luò)體系;第四代:全面使用第四代:全面使用16位、位、32位高性能微處理器、位高性能微處理器、RISC體系體系CPU等高級(jí)等高級(jí)CPU,而且在一臺(tái),而且在一臺(tái)PLC中配置多個(gè)微處理器,進(jìn)行多道處中配置多個(gè)微處理器,進(jìn)行多道處理。同時(shí)開發(fā)大量內(nèi)含微處理器的智能模塊,使第四代理。同時(shí)開發(fā)大量內(nèi)含微處理器的智能模塊,使第四代PLC產(chǎn)品產(chǎn)品成為具有邏輯控制功能、過程控制功能、運(yùn)動(dòng)控制功能、數(shù)據(jù)處成為具有邏輯控制功能、過程控制功能、運(yùn)動(dòng)控制功能、數(shù)據(jù)處理功能、聯(lián)網(wǎng)通信功
48、能的多功能控制器。理功能、聯(lián)網(wǎng)通信功能的多功能控制器。北京航空航天大學(xué) 清華大學(xué)出版社45 PLC及其網(wǎng)絡(luò)已成為工廠企業(yè)首選的工業(yè)控制裝置,并成及其網(wǎng)絡(luò)已成為工廠企業(yè)首選的工業(yè)控制裝置,并成為為CIMS系統(tǒng)不可或缺的基本組成部分。系統(tǒng)不可或缺的基本組成部分。PLC及其網(wǎng)絡(luò)已及其網(wǎng)絡(luò)已經(jīng)被公認(rèn)為現(xiàn)代工業(yè)自動(dòng)化三大支柱(經(jīng)被公認(rèn)為現(xiàn)代工業(yè)自動(dòng)化三大支柱(PLC、機(jī)器人、機(jī)器人、CAD/CAM)之一。)之一。 發(fā)展趨勢:發(fā)展趨勢: 向體積更小、速度更快、功能更強(qiáng)和價(jià)格更低的微小向體積更小、速度更快、功能更強(qiáng)和價(jià)格更低的微小型方面發(fā)展,以占領(lǐng)小型、分散和簡單功能的工業(yè)控型方面發(fā)展,以占領(lǐng)小型、分散和簡
49、單功能的工業(yè)控制市場。制市場。 向大型網(wǎng)絡(luò)化化、高速度、高可靠性、好的兼容性和向大型網(wǎng)絡(luò)化化、高速度、高可靠性、好的兼容性和多功能方面發(fā)展,使其向下可將多個(gè)多功能方面發(fā)展,使其向下可將多個(gè)PLC、I/O框架框架相連;向上與工業(yè)計(jì)算機(jī)、以太網(wǎng)、相連;向上與工業(yè)計(jì)算機(jī)、以太網(wǎng)、MAP(制造業(yè)自(制造業(yè)自動(dòng)化通信協(xié)議)網(wǎng)等相連構(gòu)成整個(gè)工廠的自動(dòng)化控制動(dòng)化通信協(xié)議)網(wǎng)等相連構(gòu)成整個(gè)工廠的自動(dòng)化控制系統(tǒng)。系統(tǒng)。 北京航空航天大學(xué) 清華大學(xué)出版社46(1) 功能齊全:功能齊全: 多種控制功能;多種控制功能; 輸入輸入/輸出接口功能;輸出接口功能; 數(shù)據(jù)存儲(chǔ)與處理功能;數(shù)據(jù)存儲(chǔ)與處理功能; 通信聯(lián)網(wǎng)功能;通
50、信聯(lián)網(wǎng)功能; 其他擴(kuò)展功能。其他擴(kuò)展功能。(2) 應(yīng)用靈活應(yīng)用靈活 標(biāo)準(zhǔn)的積木硬件結(jié)構(gòu)和模塊化的軟件設(shè)計(jì)。標(biāo)準(zhǔn)的積木硬件結(jié)構(gòu)和模塊化的軟件設(shè)計(jì)。(3) 操作維修方便,穩(wěn)定可靠操作維修方便,穩(wěn)定可靠 PLC 采用電氣操作人員習(xí)慣的梯形圖形式編程與功能助記符編程。采用電氣操作人員習(xí)慣的梯形圖形式編程與功能助記符編程。 PLC 機(jī)具有完善的監(jiān)視和診斷功能。其內(nèi)部工作等狀態(tài)均有醒目機(jī)具有完善的監(jiān)視和診斷功能。其內(nèi)部工作等狀態(tài)均有醒目的顯示,大多數(shù)模件可以帶電插拔。的顯示,大多數(shù)模件可以帶電插拔。(4) 模塊智能化、通信網(wǎng)絡(luò)化模塊智能化、通信網(wǎng)絡(luò)化北京航空航天大學(xué) 清華大學(xué)出版社47開關(guān)邏輯控制開關(guān)邏輯
51、控制(如自動(dòng)電梯的控制、傳輸皮帶的控制等);(如自動(dòng)電梯的控制、傳輸皮帶的控制等);閉環(huán)過程控制閉環(huán)過程控制(如鍋爐運(yùn)行控制,自動(dòng)焊機(jī)控制、連軋機(jī)的速(如鍋爐運(yùn)行控制,自動(dòng)焊機(jī)控制、連軋機(jī)的速度和位置控制等);度和位置控制等);機(jī)械加工的數(shù)字控制;機(jī)械加工的數(shù)字控制;機(jī)器人控制;機(jī)器人控制;多級(jí)網(wǎng)絡(luò)系統(tǒng)。多級(jí)網(wǎng)絡(luò)系統(tǒng)。北京航空航天大學(xué) 清華大學(xué)出版社481. PLC的組成和基本結(jié)構(gòu)的組成和基本結(jié)構(gòu) 2. PLC的工作原理的工作原理 北京航空航天大學(xué) 清華大學(xué)出版社491. PLC的組成和基本結(jié)構(gòu)的組成和基本結(jié)構(gòu)北京航空航天大學(xué) 清華大學(xué)出版社50 微型微型PLCI/O點(diǎn)數(shù)一般為幾十點(diǎn),整體單元
52、結(jié)構(gòu)。點(diǎn)數(shù)一般為幾十點(diǎn),整體單元結(jié)構(gòu)。 小型小型PLC點(diǎn)數(shù)至多可達(dá)點(diǎn)數(shù)至多可達(dá)256點(diǎn),整體單元結(jié)構(gòu)或模塊化點(diǎn),整體單元結(jié)構(gòu)或模塊化結(jié)構(gòu)。結(jié)構(gòu)。 中型中型PLC點(diǎn)數(shù)可達(dá)點(diǎn)數(shù)可達(dá)512 1024,模塊化結(jié)構(gòu)。,模塊化結(jié)構(gòu)。 大型大型PLC點(diǎn)數(shù)可達(dá)點(diǎn)數(shù)可達(dá)2048甚至更多,模塊化結(jié)構(gòu)。甚至更多,模塊化結(jié)構(gòu)。北京航空航天大學(xué) 清華大學(xué)出版社51圖圖8-16 PLC原理框圖原理框圖 北京航空航天大學(xué) 清華大學(xué)出版社52北京航空航天大學(xué) 清華大學(xué)出版社53圖圖8-18 PLC的等效電路的等效電路 北京航空航天大學(xué) 清華大學(xué)出版社54 采用巡回掃描的工作方式采用巡回掃描的工作方式 掃描周期:掃描周期:從掃
53、描過程中的一點(diǎn)開始,經(jīng)過順序掃描又回到從掃描過程中的一點(diǎn)開始,經(jīng)過順序掃描又回到該點(diǎn)的過程。該點(diǎn)的過程。 一個(gè)掃描周期的工作包括:一個(gè)掃描周期的工作包括:進(jìn)行系統(tǒng)監(jiān)控與自診斷進(jìn)行系統(tǒng)監(jiān)控與自診斷輸入掃描輸入掃描執(zhí)行掃描執(zhí)行掃描輸出掃描。輸出掃描。北京航空航天大學(xué) 清華大學(xué)出版社55圖圖8-19 PLC工作過程工作過程 北京航空航天大學(xué) 清華大學(xué)出版社561. 梯形圖語言梯形圖語言LD (Ladder Diagram) 2. 語句表語句表IL(Instruction List)3. 結(jié)構(gòu)化文本語言結(jié)構(gòu)化文本語言ST(Structured Text)4. 順序功能圖順序功能圖SFC (Sequen
54、tial Function Chart) 5. 功能模塊圖功能模塊圖FBD(Function Block Diagram 1992年國際電工委員會(huì)年國際電工委員會(huì)IEC頒布了頒布了IEC61131-3控制控制編程語言標(biāo)準(zhǔn),編程語言標(biāo)準(zhǔn),IEC61131-3定義了以下五種編程語言:定義了以下五種編程語言: 北京航空航天大學(xué) 清華大學(xué)出版社571. 交通信號(hào)控制的時(shí)序系統(tǒng)交通信號(hào)控制的時(shí)序系統(tǒng)圖圖8-26 交通信號(hào)燈控制時(shí)序圖交通信號(hào)燈控制時(shí)序圖 北京航空航天大學(xué) 清華大學(xué)出版社58圖圖8-27 系統(tǒng)的系統(tǒng)的I/O接線圖接線圖 北京航空航天大學(xué) 清華大學(xué)出版社59圖圖8-28 交通信號(hào)交通信號(hào)燈控
55、制系燈控制系統(tǒng)梯形圖統(tǒng)梯形圖北京航空航天大學(xué) 清華大學(xué)出版社60工作過程如下:工作過程如下:加料階段:加料階段: 按動(dòng)啟動(dòng)按鈕按動(dòng)啟動(dòng)按鈕PS后,進(jìn)料電磁閥后,進(jìn)料電磁閥YV1通電打開,液體通電打開,液體A流入容器;當(dāng)液位上流入容器;當(dāng)液位上升到升到LS3時(shí),攪拌電動(dòng)機(jī)時(shí),攪拌電動(dòng)機(jī)M開始運(yùn)轉(zhuǎn)和開始運(yùn)轉(zhuǎn)和攪拌;當(dāng)液位到達(dá)攪拌;當(dāng)液位到達(dá)LS2時(shí),進(jìn)料電磁閥時(shí),進(jìn)料電磁閥YV1斷電關(guān)閉,電磁閥斷電關(guān)閉,電磁閥YV2通電打開,通電打開,液體液體B流入容器;到液位流入容器;到液位LS1時(shí),電磁時(shí),電磁閥閥YV2關(guān)閉,加料過程結(jié)束。關(guān)閉,加料過程結(jié)束。攪拌階段:攪拌階段: 加料過程結(jié)束后,攪拌電動(dòng)機(jī)繼續(xù)運(yùn)轉(zhuǎn)加料過程結(jié)束后,攪拌電動(dòng)機(jī)繼續(xù)運(yùn)轉(zhuǎn)半小時(shí),進(jìn)行物料的充分混合。半小時(shí),進(jìn)行物料的充分混合。放料階段:放料階段: 打開混合物料的出料電磁閥打開混合物料的出料電磁閥YV3,攪,攪拌電動(dòng)機(jī)繼續(xù)運(yùn)轉(zhuǎn),直到液位下降到拌電動(dòng)機(jī)繼續(xù)運(yùn)轉(zhuǎn),直到液位下降到L
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 杯狀耳的健康宣教
- 民生領(lǐng)域貪污賄賂犯罪情況分析
- 軟腭癌的健康宣教
- JJF(陜) 029-2020 實(shí)驗(yàn)室氨氮測定儀校準(zhǔn)規(guī)范
- 《數(shù)據(jù)分析分享》課件
- 提升產(chǎn)品質(zhì)量管理的工作計(jì)劃
- 建立區(qū)域聯(lián)盟推動(dòng)教學(xué)改革計(jì)劃
- 數(shù)控車銑中心相關(guān)行業(yè)投資規(guī)劃報(bào)告范本
- 醫(yī)用高值耗材相關(guān)行業(yè)投資規(guī)劃報(bào)告
- 食品銷售合同三篇
- 專題 與角度有關(guān)的計(jì)算問題(35題提分練)2024-2025學(xué)年七年級(jí)數(shù)學(xué)上冊同步課堂(北師大版2024)
- 網(wǎng)格員調(diào)解員培訓(xùn)
- 浙江省紹興市2025屆高三上學(xué)期一模地理試題 含解析
- 安全與急救學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 人教 九下 歷史 第五單元《社會(huì)主義的發(fā)展與挫折》課件
- 金屬冶煉知識(shí)培訓(xùn)
- 2024-2025學(xué)年度廣東省春季高考英語模擬試卷(解析版) - 副本
- 新疆喀什地區(qū)八年級(jí)上學(xué)期期末英語試題(含答案)
- 商會(huì)內(nèi)部管理制度
- 2024年物業(yè)轉(zhuǎn)讓協(xié)議書范本格式
- 《建筑力學(xué)》期末機(jī)考資料
評(píng)論
0/150
提交評(píng)論