嵌入式系統(tǒng)設(shè)計師(下午)真題選題卷2_第1頁
嵌入式系統(tǒng)設(shè)計師(下午)真題選題卷2_第2頁
嵌入式系統(tǒng)設(shè)計師(下午)真題選題卷2_第3頁
嵌入式系統(tǒng)設(shè)計師(下午)真題選題卷2_第4頁
嵌入式系統(tǒng)設(shè)計師(下午)真題選題卷2_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

精品文檔-下載后可編輯嵌入式系統(tǒng)設(shè)計師(下午)真題選題卷2嵌入式系統(tǒng)設(shè)計師(下午)真題選題卷2

1.[問答][0分]某公司承接了某嵌入式系統(tǒng)的研制任務(wù)。該嵌入式系統(tǒng)由數(shù)據(jù)處理模塊、系統(tǒng)管理模塊、FC網(wǎng)絡(luò)交換模塊和智能電源模塊組成,系統(tǒng)組成如圖1所示。數(shù)據(jù)處理模塊處理系統(tǒng)的應(yīng)用任務(wù);系統(tǒng)管理模塊除了處理系統(tǒng)的應(yīng)用任務(wù)外,還負(fù)責(zé)管理整個嵌入式系統(tǒng);FC網(wǎng)絡(luò)交換模塊采用消息機(jī)制,支持廣播和組播,主要負(fù)責(zé)系統(tǒng)的數(shù)據(jù)交換;智能電源模塊負(fù)責(zé)給其他模塊供電,該模塊根據(jù)系統(tǒng)命令可以給其他模塊供電或停止供電。

1、該系統(tǒng)的軟件大部分是用C語言編程的,編程人員經(jīng)常會使用運(yùn)算符,請按優(yōu)先級由高到低的次序,重新排序下面的運(yùn)算符:%,=,<=,。

2、該系統(tǒng)的開發(fā)要求按軟件能力成熟度模型CMM3級開發(fā),請回答下列問題:

(1)CMM3級包含多少個關(guān)鍵過程域?

(2)請寫出CMM3級的關(guān)鍵過程域。

(3)CMM2級包含多少個關(guān)鍵過程域?

(4)在對該開發(fā)軟件單位進(jìn)行CMM3級達(dá)標(biāo)評級時,只需檢查3級的關(guān)鍵過程域還是3級和2級的關(guān)鍵過程域都需要檢查?

3、(1)在本系統(tǒng)中,F(xiàn)C網(wǎng)絡(luò)采用何種拓?fù)浣Y(jié)構(gòu)?請從如下4項中選擇最為合適的。A.總線B.樹型C.星形D.點對點

(2)FC網(wǎng)絡(luò)除了用于交換的光纖基礎(chǔ)架構(gòu),還必須有高性能的I/O通道結(jié)構(gòu)支持,I/O通道在FC網(wǎng)絡(luò)中的優(yōu)勢是什么?

4、智能電源模塊首先進(jìn)行系統(tǒng)初始化,初始化后各設(shè)備就可使用,再根據(jù)系統(tǒng)初始配置表對嵌入式系統(tǒng)的其他模塊供電。

智能電源模塊通常完成兩件事情:

一、周期性地查詢本模塊溫度、各路電流(給各模塊供電的)以及電源模塊的供電是否異常,如果異常,則進(jìn)行異常處理,并報系統(tǒng)管理模塊,由系統(tǒng)管理模塊進(jìn)行決策;

二、進(jìn)入中斷處理程序,處理系統(tǒng)管理模塊的各種命令,如果系統(tǒng)管理模塊命令關(guān)機(jī)下電,則智能電源模塊對所有模塊(也包括自己)進(jìn)行下電處理

圖2是智能電源模塊上的管理軟件處理流程圖,請完成該流程圖,給(1)~(5)處填空。

2.[問答][0分]閱讀以下關(guān)于某四軸飛行器系統(tǒng)設(shè)計的說明,回答下列問題。

[說明]在某四軸飛行器系統(tǒng)設(shè)計中,利用慣性測量單元(IMU)、PID電機(jī)控制、2.4G無線遙控通信和高速空心直流電機(jī)驅(qū)動等技術(shù)來實現(xiàn)一個簡易的嵌入式四軸飛行器方案。整個系統(tǒng)的設(shè)計包括飛控板和遙控板兩部分,兩者之間采用2.4G無線模塊進(jìn)行數(shù)據(jù)傳輸。

飛控板采用高速單片機(jī)STM32作為處理器,采用含有三軸陀螺儀、三軸加速度計的運(yùn)動傳感器MPU16050作為慣性測量單元,通過2.4G無線模塊和遙控板進(jìn)行通信,最終根據(jù)PID控制算法以PWM方式驅(qū)動空心電機(jī)來控制目標(biāo)。

圖1為李工設(shè)計的系統(tǒng)總體框圖。

飛控板和遙控板的核心處理器都采用STM32F103。飛控系統(tǒng)的慣性測量單元采用MPU6050測量傳感器,MPU6050使用IIC接口,時鐘引腳SCL、數(shù)據(jù)引腳SDA和數(shù)據(jù)中斷引腳分別接到STM32的對應(yīng)管腳,圖2為該部分原理圖。

遙控板采用STM32單片機(jī)進(jìn)行設(shè)計,使用AD對搖桿模擬數(shù)據(jù)進(jìn)行采集,采用NRF2401無線模塊進(jìn)行通信,圖3為該部分原理圖。

李工所設(shè)計的系統(tǒng)軟件同樣包含飛控板和遙控板兩部分,飛控板軟件的設(shè)計主要包括無線數(shù)據(jù)的接收、自身姿態(tài)的實時計算、電機(jī)PID增量的計算和PWM的電機(jī)驅(qū)動。

遙控板主控制器軟件通過ADC外設(shè)對搖桿數(shù)據(jù)進(jìn)行采集,把采集到的數(shù)據(jù)通過2.4G無線通信模塊發(fā)送至飛控板。圖4為飛控系統(tǒng)的軟件流程示意圖。

1、由圖1系統(tǒng)總體框圖設(shè)計可知,飛控板和遙控板之間是用2.4G無線通信進(jìn)行數(shù)據(jù)傳輸,各自主處理器和無線通信模塊之間是SPI接口。同時,在飛控板上,處理器和慣性測量單元是通過IIC進(jìn)行數(shù)據(jù)交互。以下關(guān)于SPI接口和IIC接口的描述中,正確的是:______、______、______、______。A.SPI和IIC都是主從式通信方式B.SPI的數(shù)據(jù)收發(fā)線是各自獨(dú)立的,IIC也是同樣C.SPI和IIC的傳輸都不需要片選控制D.IIC總線是一個多主機(jī)的總線,可以連接多于一個能控制總線的器件到總線E.IIC總線包括標(biāo)準(zhǔn)模式,快速模式和高速模式,相互之間的傳輸速度差異并不大F.在原理設(shè)計中,到底采用SPI和IIC哪種方式,需要依據(jù)外設(shè)芯片的接口而定G.SPI是一種環(huán)形總線結(jié)構(gòu)H.在IIC總線上,可以有多個從設(shè)備具有相同的IIC地址

2、(1)圖2飛控板部分原理圖中,R4的作用是什么?

(2)圖3遙控板部分原理圖中,C11、C12、C13、C14的作用是什么?

3、在STM32處理器的PWM使用過程中,最為關(guān)鍵的就是PWM的頻率和占空比。PWM的頻率依賴于PWM模塊的參考時鐘頻率,自動裝載寄存器ARR的值加1之后再乘以參考時鐘頻率即可得到PWM的頻率。

PWM的占空比是用捕獲比較寄存器CCR和自動裝載寄存器ARR獲得的,PWM占空比=CCR/(ARR+1)。假設(shè)當(dāng)前主控板的STM32處理器PWM模塊的參考時鐘頻率為1kHz,要將PWM模塊的頻率設(shè)置為100kHz,則ARR寄存器的值應(yīng)設(shè)置為多少?如果此時占空比希望設(shè)置為20%,那么CCR寄存器的值應(yīng)該設(shè)置為多少?

4、5毫秒進(jìn)行一次定時器的觸發(fā),每次中斷都會檢查一次無線模塊數(shù)據(jù)的接收,以確保飛控系統(tǒng)控制信息的實時性。每2次中斷(即1毫秒)讀取一次。MPU16050單元的數(shù)據(jù),并進(jìn)行算法處理。每4次中斷(即2毫秒)通過計算當(dāng)前飛控板系統(tǒng)的姿態(tài),結(jié)合遙控端的目標(biāo)姿態(tài),根據(jù)兩者的差值通過PID控制算法對各個電機(jī)進(jìn)行調(diào)速控制。每200次中斷(即100毫秒)采集一次電池電壓,然后通過無線模塊把電池電壓發(fā)送給遙控板,以告知操作人員當(dāng)前電壓的大小。圖4為飛控系統(tǒng)軟件實現(xiàn)的簡要流程圖,根據(jù)以上描述,請補(bǔ)全圖4中的空(1)~(6)處的內(nèi)容。

3.[問答][0分]閱讀以下關(guān)于某嵌入式系統(tǒng)多路數(shù)據(jù)采集的說明,回答下列問題。

[說明]某嵌入式系統(tǒng)中,存在16路數(shù)據(jù)采集通道,為了提高數(shù)據(jù)采集的可靠性,對16路采集通道均采用雙余度設(shè)計,為了監(jiān)控采集通道是否發(fā)生故障,對各路雙余度通道采集值進(jìn)行比較,只有當(dāng)該通道兩個余度設(shè)備采集值均不小于45時,才表示該路通道正常。設(shè)計人員設(shè)計函數(shù)num_of_passer用于統(tǒng)計無故障通道數(shù)目,在該函數(shù)的設(shè)計中考慮了如下因素:9采用如下數(shù)據(jù)結(jié)構(gòu)存儲通道號及采集值:Structvalue{unsignedintNo;//通道號,1到16unsignedshortValue1;//余度1采集值unsignedshortValue2;//余度2采集值}10當(dāng)輸入?yún)?shù)異常時,函數(shù)返回-1;11若正確統(tǒng)計了無故障通道數(shù)目,則返回該數(shù)目;12該函數(shù)需要兩個輸入?yún)?shù),第一個參數(shù)是用于存儲通道號及余度采集值的數(shù)組,第二個參數(shù)為通道總數(shù)目。

開發(fā)人員根據(jù)上述要求使用ANSIC對代碼實現(xiàn)如下(代碼中第一個數(shù)字代表行號):1)unsignedintnum_of_passer(structvaluearray[],unsignedintnum){2)unsignedintn=0;//循環(huán)變量3)unsignedintcounter;//無故障通道數(shù)目4)if((array=NULL)||(num==0)||(num>16))5)return-1;//當(dāng)輸入?yún)?shù)異常時,函數(shù)返回-16)for(n=0;nimage.png=num;n++){7)if((array[n].Value1>45)((array[n].Value2>45)))8)counter=counter+1;}9)returncounter;}

1、嵌入式軟件中通常使用圈復(fù)雜度來衡量程序的可維護(hù)性(一般要求圈復(fù)雜度不大于10),請計算函數(shù)num_of_passer的圈復(fù)雜度。

2、作為測試人員,請參照表1序號1的方式使用代碼審查的方法找出該程序中所包含的至少3處錯誤。

3、覆蓋率是度量測試完整性的一個手段,也是度量測試有效性的一個手段。在嵌入式軟件白盒測試過程中,通常以語句覆蓋率、分支覆蓋率和MC/DC覆蓋率作為度量指標(biāo),請指出對函數(shù)num_of_passer達(dá)到100%語句覆蓋、100%分支(DC)覆蓋和100%MC/DC覆蓋所需的最少測試用例數(shù)目,如表2所示。

4.[問答][0分]閱讀以下關(guān)于數(shù)據(jù)采集與處理系統(tǒng)的說明,回答下列問題。

[說明]某公司承接了一個數(shù)據(jù)采集與處理系統(tǒng)的項目,由劉工負(fù)責(zé)系統(tǒng)的方案設(shè)計,劉工的設(shè)計方案如圖1所示。該方案是基于PCI總線的多功能處理系統(tǒng),PCI設(shè)備1是以太網(wǎng),PCI設(shè)備2用于數(shù)據(jù)采集,PCI設(shè)備3、PCI設(shè)備4用于和該系統(tǒng)中的其他處理模塊進(jìn)行互聯(lián),LEGACY設(shè)備1、LEGACY設(shè)備2用于處理系統(tǒng)中一些慢速設(shè)備。

1、在以下描述PCI總線的基本概念中,正確的表述有______、______、______、______、______、______。A.PCI總線是一個與處理器有關(guān)的高速外圍總線B.PCI總線的基本傳輸機(jī)制是猝發(fā)式傳送C.PCI設(shè)備一定是主設(shè)備D.PCI的物理地址與其他總線一樣,是由內(nèi)存地址空間和I/O地址組成E.PCI設(shè)備的地址譯碼不能對配置空間直接尋址F.PCI設(shè)備識別主要是對開發(fā)商代碼和設(shè)備代碼進(jìn)行識別G.訪問配置空間時,PCI橋應(yīng)提供IDSEL信號以選擇PCI設(shè)備H.系統(tǒng)中只允許有一條PCI總線I.PCI總線是高速串行總線J.PCI總線有3種橋,即HOST/PCI橋,PCI/PCI橋,PCI/LEGACY橋K.PCI橋是可以把一條總線的地址空間映射到另一條總線的地址空間

2、PCI設(shè)備2和主CPU之間采用雙口RAM方式交換數(shù)據(jù),雙口RAM是常見的共享式多端口存儲器,其最大的特點是存儲數(shù)據(jù)共享。

它允許兩個獨(dú)立的CPU或控制器同時異步訪問存儲單元。既然數(shù)據(jù)共享,就必須存在訪問仲裁控制,否則就會出現(xiàn)錯誤或沖突。內(nèi)部仲裁邏輯控制提供以下功能:對同一地址單元訪問的時序控制;存儲單元數(shù)據(jù)塊的訪問權(quán)限分配;信令交換邏輯(例如中斷信號)等。兩個端口對同一內(nèi)存操作有4種情況:A.兩個端口同時對同一地址單元讀出數(shù)據(jù);B.兩個端口同時對同一地址單元寫入數(shù)據(jù);C.兩個端口不同時對同一地址單元存取數(shù)據(jù);D.兩個端口同時對同一地址單元,一個寫入數(shù)據(jù),另一個讀出數(shù)據(jù)。在上述情況下,兩個端口的存取不會出現(xiàn)錯誤的是______和______,會出現(xiàn)寫入錯誤的是______,會出現(xiàn)讀出錯誤的是______。

3、PCI設(shè)備2和主CPU之間通過雙端口存儲器進(jìn)行數(shù)據(jù)交換。劉工設(shè)計了環(huán)形隊列的實現(xiàn)方式。設(shè)備2向環(huán)形隊列寫入數(shù)據(jù),主CPU從環(huán)形隊列讀取數(shù)據(jù)。環(huán)形隊列是一個首尾相連的FIFO數(shù)據(jù)結(jié)構(gòu),采用數(shù)組存儲,到達(dá)尾部時將轉(zhuǎn)回到0位置,該轉(zhuǎn)回是通過取模操作來實現(xiàn)的。因此環(huán)形隊列邏輯上是將數(shù)組元素q[0]與q[MAX-1]連接,形成一個存放隊列的環(huán)形空間。

為了方便讀寫,還要用數(shù)組下標(biāo)來指明隊列的讀寫位置,其中head指向可以讀的位置,tail指向可以寫的位置,環(huán)形隊列如圖2所示。

使用環(huán)形隊列時需要判斷隊列為空還是為滿。當(dāng)tail追上head時,隊列為滿,當(dāng)head追上tail時,隊列為空。通常判斷環(huán)形隊列為空/為滿有兩種判斷方法。

(1)附加一個標(biāo)志位tag,當(dāng)head趕上tail,隊列空,則令tag=0,當(dāng)tail趕上head,隊列滿,則令tag=1;

(2)限制tail趕上head,即隊尾結(jié)點與隊首結(jié)點之間至少留有一個元素的空間。

隊列空:head==tai;隊列滿:(tail+1)%MAXN==head。如果采用第一種方法(即附加標(biāo)志實現(xiàn)算法),則環(huán)形隊列的結(jié)構(gòu)定義如下:typedefstructringg{inthead;/*頭部,出隊列方向*/inttail;/*尾部,入隊列方向*/inttag;intsize;/*隊列總尺寸*/intspace[RINGQ_MAX];/*隊列空間*/}RINGQ;RINGQp,*q;q=p;初始化環(huán)形隊列的C語言代碼為:q->head=q->tail=q->tag=0;q->size=RINGQ_MAX;判斷隊列為空的C語言代碼為______。判斷隊列為滿的C語言代碼為______。入隊操作時,如果隊列不滿,則入隊后更新尾指針的C語言代碼為q->tail=______。出隊操作時,如果隊列不空,則出隊后更新頭指針的C語言代碼為q->head=______。

如果采用第二種方法,還采用上述數(shù)據(jù)結(jié)構(gòu),初始化環(huán)形隊列的C語言代碼為:q->head=q->tail=0;q->size=RINGQ_MAX;判斷隊列為空的C語言代碼為______。判斷隊列為滿的C語言代碼為______。入隊操作時,如果隊列不滿,則入隊后更新尾指針的C語言代碼為q->tail=______。出隊操作時,如果隊列不空,則出隊后更新頭指針的C語言代碼為q->head=______。

5.[問答][0分]閱讀以下關(guān)于C語言編程方面的說明和程序,回答下列問題。

[說明]在開發(fā)某嵌入式系統(tǒng)時,設(shè)計人員根據(jù)系統(tǒng)要求,分別編寫了如下程序,其中:程序1是關(guān)于文件操作的一段程序。程序2是某信息管理系統(tǒng)的系統(tǒng)登錄和密碼驗證程序,規(guī)定密碼最長為20個字符。首先,打開密碼文件sys_code,如果成功,則將文件中的密碼信息與用戶輸入的密碼進(jìn)行比較,若相等,則身份驗證通過并進(jìn)入信息管理系統(tǒng),否則輸出錯誤信息并退出登錄系統(tǒng)。如果打開文件sys_code失敗,則由用戶輸入密碼并保存到密碼文件sys_code。

[程序1]#includeimage.pngstdio.h>#includeimage.pngstdlib.h>Voidmain15{FILE*fp;charc,fname[20];printf("輸入文件名:");Scanf("%S",fname);if((fp=fopen(fname,"r"))==______){printf("不能打開文件:%sin",fname);exit16;}while(______)/*檢測文件是否結(jié)束*/{c=fgetc(fp);if(______)/*檢測文件是否出錯*/{printf("文件讀錯誤\n");break;}putchar(c);}}

[程序2]voidpassword15{intsign=0;sign=checkcode15;if(______){printf("\a\n\n\n\n\n\n\n\n\n\t\t密碼錯誤,請重新登錄!");getch19;system("cls");exit20;}system("cls");printf("\a\n\n\n\n\n\n\n\n\n\t\t");printf("歡迎登錄信息管理系統(tǒng)!\n");getch19;return;}intcheckcode15{FILE*fp;charch,syspwd[21]="\0";charusrpwd[21]="\0";inti;/*身份驗證*/if((fp=fopen("sys

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論