《第三部分習題答案.doc》由會員分享,可在線閱讀,更多相關《第三部分習題答案.doc(9頁珍藏版)》請在裝配圖網上搜索。
第10章 建立嵌入式系統(tǒng)開發(fā)環(huán)境
10.2.5習題
1. 使用vi查看安裝程序install.sh,對比install.sh中的語句與安裝過程。
答:首先建立合適的安裝目錄,然后安裝交叉編譯工具軟件,然后安裝Linux內核,建立根文件系統(tǒng),之后安裝調試工具gdb和gdbserv,最后安裝試驗源代碼及相關文檔。
2. 若使用上位機的com2口與下位機進行連接,應在minicom中如何設置?
答:若使用上位機的com2口與下位機進行連接,應在minicom中選擇“Serial port setup”進入串口配置界面。輸入“A”,將“Serial device”的值修改為“/dev/ttyS1”,表示連接的是上位機的com2口。
3.若下位機的IP地址為192.168.0.121,上位機的IP地址為202.201.33.15,請寫出將上位機和下位機的IP地址配置在同一個網段的過程。
答:在上位機的終端命令窗口中鍵入下面的命令,可以將上位機和下位機的IP地址配置在同一個網段192.168.0.:
ifconfig eth0 192.168.0.252 netmask 255.255.255.0
10.3.5習題
1.在“vivi>”提示符狀態(tài)下,使用help查看vivi命令的用法,比較與Linux命令的不同。
答:vivi命令用來配置開發(fā)板的硬件資源,使用時后面需給出必要的關鍵字參數(shù),如:
vivi> load help
Usage: load
[ | ]
而Linux命令的參數(shù)通常以“-”開始,如:
cat [-AbeEnstTuv] [--help] [--version] fileName。
2.寫出下位機軟件系統(tǒng)的四個組成部分的功能。
答:下位機的軟件系統(tǒng)由Bootloader 系統(tǒng)內核、根文件系統(tǒng)和應用程序四部分組成。
Bootloader相當于PC機上的BIOS,在下位機加電時自動運行,執(zhí)行硬件初始化和調用系統(tǒng)內核的功能。Bootloader分為U-boot、Vivi、Blob、ARMBoot、RedBoot等多種,本實驗使用實驗箱自帶光盤中的vivi。
系統(tǒng)內核就是運行在下位機上的操作系統(tǒng)內核,本實驗使用實驗箱自帶光盤中的zImage,是ARM-Linux的內核,版本號為2.6。
根文件系統(tǒng)是Linux系統(tǒng)必不可少的一部分,用來管理下位機中的文件。本實驗使用實驗箱自帶光盤中的root.cramfs。Cramfs是專門針對Flash設計的只讀壓縮的文件系統(tǒng),其容量上限為256M,采用zlib壓縮,文件系統(tǒng)類型可以是EXT2或EXT3,經常作為下位機的根文件系統(tǒng)。
應用程序是需要燒寫到下位機,在下位機中運行的程序,在上位機中以壓縮文件包的形式保存,本實驗使用實驗箱自帶光盤中的yaffs.tar.bz2。應用程序所使用的文件系統(tǒng)為Yaffs(Yet Another Flash File System),Yaffs是一種專門為Flash設計的嵌入式文件系統(tǒng),運行速度快、占用內存小,提供寫均衡、垃圾收集等底層功能。
3.查閱相關資料,了解下位機軟件系統(tǒng)的四個組成部分的生成過程。
省略
11.1.5習題
1.Makefile是如何工作的?其中的宏定義分別是什么意思?
答:makefile文件中語句的語法是Shell語句語法的子集,以“#”開頭的語句為注釋語句,內容一般分為兩部分,前面部分由include和變量定義語句構成,include語句能夠將另外一個文件的內容包含進來,變量定義語句定義后面部分要使用的變量。前面部分的內容可以為空。
makefile的后面部分內容是文件的主要內容,由一些規(guī)則描述的語句塊組成,make執(zhí)行時將根據(jù)這些語句塊的描述執(zhí)行相應的命令或者程序。
其中常用的宏有:
CC:指明采用的編譯器;EXEC :表示編譯后生成的可執(zhí)行文件名;OBJS:給出目標文件列表;CFLAGS:給出編譯參數(shù);LDFLAGS:給出連接參數(shù);all:給出編譯主入口;
clean: 表示清除編譯結果
2.嵌入式開發(fā)的基本過程有哪幾步?
答:嵌入式開發(fā)的基本過程為:采用相應的編輯工具編寫應用程序,然后在上位機編譯調試應用程序,然后使用NFS將上位機上編譯好的文件下載到下位機上運行。
11.2.6 習題
1.在生產者-消費中實例中,加入一個新的線程用于處理鍵盤的輸入,并在按鍵為ESC時終止所有線程。
答:參考程序見“/labs/ Lab_2”文件夾中的“pth1.c”。
2.使用信號量控制方式編寫多線程程序,設4個線程,其中兩個線程負責從文件中讀取數(shù)據(jù)到公共的緩沖區(qū),另兩個線程從緩沖區(qū)讀取數(shù)據(jù)做不同的處理(加和乘運算)。
答:參考程序見 “/labs/ Lab_2”文件夾中的“sem_example.c”。
3.線程的優(yōu)先級的控制。
答:程序控制線程的優(yōu)先級,一般是用pthread_attr_getschedpolicy來獲取系統(tǒng)使用的調度策略,如果是SCHED_OTHER的話,表明當前策略不支持線程優(yōu)先級的使用,否則可以。當然所設定的優(yōu)先級范圍必須在最大和最小值之間,可以通過sched_get_priority_max和sched_get_priority_min來獲取。在系統(tǒng)允許使用線程優(yōu)先級別的時候,使用下面兩個函數(shù)pthread_attr_setschedparam、thread_attr_getschedparam來設置線程的優(yōu)先級。
11.3.6 習題
1.修改程序,編寫一個簡單的文件收、發(fā)程序,完成串口文件下載。
答:參考本次試驗提供的用戶程序,在receive函數(shù)中新建一個簡單文件,讀取串口字符寫入文件即可,須注意發(fā)送和接收線程的互鎖機制。
2.RS-232串行通信的數(shù)據(jù)格式是什么?
答:開始前,線路處于空閑狀態(tài),送出連續(xù)“1”。傳送開始時首先發(fā)一個“0”作為起始位,然后傳輸字符的二進制編碼。每個字符的數(shù)據(jù)位長度可以約定為5-8位,一般采用ASCII 編碼。后面是奇偶校驗位,根據(jù)約定,用奇偶校驗位將所傳字符中為“1”的位數(shù)湊成奇數(shù)個或偶數(shù)個,也可不要奇偶校驗。最后是停止位的“1”信號,停止位可以約定持續(xù)1 位、1.5 位或2 位的時間寬度。至此一個字符傳送完畢,線路又進入空閑,持續(xù)為“1”。經過一段隨機的時間后,下一個字符開始傳送才又發(fā)出起始位。
3.串行通信最少需要幾根線?分別如何連接?
答:當通信距離較近時,通信雙方可以直接連接。最簡單的情況,在通信中根本不需要RS-232C的控制聯(lián)絡信號,只需三根線(發(fā)送線、接收線、信號地線)便可實現(xiàn)全雙工異步串行通信。
圖1 最簡單的串行通信連接方式
圖1中的2號線與3號線交叉連接是因為在直連方式時,把通信雙方都當作數(shù)據(jù)終端設備看待,雙方都可發(fā)也可收。在這種方式下,通信雙方的任何一方,只要請求發(fā)送RTS有效和數(shù)據(jù)終端準備好DTR有效就能開始發(fā)送和接收。
4.ARM的串口有幾個?相應的寄存器是什么?
答:S3C2410提供了三個通用異步串行通信接口,每個串口都有一個波特率發(fā)生器、接收寄存器、發(fā)送寄存器和一個控制單元,另外,還有兩個16字節(jié)的FIFO寄存器作為發(fā)送和接收的緩沖裝置。在S3C2410中,對串口的控制是通過設置相應的控制寄存器來實現(xiàn)的,其常用的寄存器主要有以下幾個:(1)ULCONn寄存器:主要用來設置串口工作模式,包括數(shù)據(jù)位長度、停止位個數(shù),以及數(shù)據(jù)校驗方式等。S3C2410支持四種校驗方式,分別是奇校驗、偶校驗、MARK校驗和SPACE校驗。(2)UCONn寄存器:該寄存器涉及到中斷模式控制、DMA模式控制,以及時鐘的選擇等。(3)UTRSTATn寄存器:串口的狀態(tài)寄存器,用于指示串口是否接收或發(fā)送完畢。(4)UTXHn和URXHn寄存器:發(fā)送和接收寄存器。(5)UBRDIVn寄存器:波特率設置寄存器,用于對時鐘分頻,產生需要的波特率。
5.終端如何處理特殊字符?
答:在串口的參數(shù)配置結構struct termios中,通過設置c_cc數(shù)組成員來定義支持的特殊控制字符以及一些timeout參數(shù)。c_cc 支持的常量名稱有:VINTR 中斷控制,對應鍵為CTRL+C;VQUIT 退出操作,對應鍵為CRTL+Z;VERASE刪除操作,對應鍵為Backspace(BS);VKILL 刪除行,對應鍵為CTRL+U;VEOF位于文件結尾,對應鍵為CTRL+D;VEOL 位于行尾,對應鍵為Carriage return(CR);VEOL2位于第二行尾,對應鍵為Line feed(LF);VMIN 指定了最少讀取的字符數(shù);VTIME指定了讀取每個字符的等待時間。
11.4.6習題
1.修改用戶程序,將三個電位器的多次轉換的結果寫入一個文件中。
答:參考程序見“/labs/ Lab_4”文件夾中的“main1.c”。
2.逐次逼近型的A/D轉換器原理是什么?
答:逐次逼近型A/D 轉換器其工作原理是:將被測電壓和由D/A轉換生成的電壓進行比較,用對分搜索的方法來逐次逼近被測電壓。它的實質是逐次把設定的SAR 寄存器中的數(shù)字量經D/A 轉換后得到電壓Vc 與待轉換模擬電壓V。進行比較。比較時,先從SAR 的最高位開始,逐次確定各位的數(shù)碼應是“1”還是“0”,其工作過程如下:轉換前,先將SAR 寄存器各位清零。轉換開始時,控制邏輯電路先設定SAR 寄存器的最高位為“1”,其余位為“0”,此試探值經D/A 轉換成電壓Vc,然后將Vc 與模擬輸入電壓Vx 比較。如果Vx≥Vc,說明SAR 最高位的“1”應予保留;如果Vx
下載提示(請認真閱讀)
- 1.請仔細閱讀文檔,確保文檔完整性,對于不預覽、不比對內容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網址水印。
- 3、該文檔所得收入(下載+內容+預覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領!既往收益都歸您。
文檔包含非法信息?點此舉報后獲取現(xiàn)金獎勵!
下載文檔到電腦,查找使用更方便
5
積分
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
-
第三
部分
習題
答案
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://kudomayuko.com/p-12786965.html