福建工程學(xué)院嵌入式系統(tǒng)0607卷A_第1頁
福建工程學(xué)院嵌入式系統(tǒng)0607卷A_第2頁
福建工程學(xué)院嵌入式系統(tǒng)0607卷A_第3頁
福建工程學(xué)院嵌入式系統(tǒng)0607卷A_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、 班級 姓名 學(xué)號: 福建工程學(xué)院 2006 2007 學(xué)年第 二 學(xué)期 期末 考試卷 嵌入式系統(tǒng) 課程 ( A 卷)題號一二三四總分分?jǐn)?shù) 一、 填空題(20分)1、嵌入式系統(tǒng)是以 為中心,以 為基礎(chǔ),并且軟硬件可裁剪,適用于應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用計算機(jī)系統(tǒng)。嵌入式系統(tǒng)的三要素: 、 、 。2、ARM微處理器系列包括 、ARM9E系列、 、 、SecurCore系列和Intel的Xscale系列等。3、S3C2410X的引腳具有大量的電源和接地線引腳,主要分為如下幾類,即: 、數(shù)字輸入/輸出(I/O)線引腳、 、數(shù)據(jù)線引腳等。4、cp的功能是 ;mkdir的功

2、能是 ;ls命令的功能是 ;rm命令的功能是 ;cd 命令的功能是 。5、計算機(jī)系統(tǒng)的“中斷”是指中央處理器CPU正在處理某件事情的時候,發(fā)生了 (如定時器溢出等),產(chǎn)生一個 ,請求 迅速去處理。S3C2410的中斷控制器可以接收 路中斷源的輸入。這些中斷源由如DMA控制器,UART,IIC或其他內(nèi)部外圍設(shè)備提供的。它支持兩種中斷模式: 和IRQ。每個中斷源都可以決定中斷請求時使用哪種模式。二、問答題(25分)1、嵌入式系統(tǒng)開發(fā)的主要步驟及其內(nèi)容? 2、Linux環(huán)境下NFS的配置及測試步驟。 3、Linux環(huán)境下minicom的配置步驟。4、已知redhat 9.0完全安裝,Linux環(huán)境下

3、tftp的配置及測試步驟。三、程序閱讀注釋題(30分)閱讀下列的程序,并在要求的語句“/”后作出注釋或?qū)懗龀绦蚪Y(jié)果。1、對下列的makefile的語句進(jìn)行注釋CC = /opt/host/armv4l/bin/armv4l-unknown-linux-gcc /LD = /opt/host/armv4l/bin/armv4l-unknown-linux-ld /CFLAGS = -I/HHARM9-EDU/kernel/include/linux -Wall /led.o: led.c /$(CC) $(CFLAGS) -g led.c -o led /cp led.o / -f /.PHON

4、Y: clean /clean: /-rm -f *.o /2、請對如下的設(shè)備驅(qū)動程序的框架結(jié)構(gòu)進(jìn)行注釋static struct file_operations keybd_fops = open:keybd_open,read:keybd_read,release: keybd_release,; /int keybd_open(struct inode *inode, struct file *filp) /printk("open okn");return 0;ssize_t keybd_read(struct file *fp, char * buf, / siz

5、e_t size) int keybd_release(struct inode *inode, struct file *filp) /printk("release okn"); /return 0;ssize_t led_write(struct file *fp, char * buf, / size_t size) int _init keybd_init(void) / static void _exit keybd_exit(void) / devfs_unregister(devfs_keybd); /module_init(keybd_init); /mo

6、dule_exit(keybd_exit); /四、程序設(shè)計題(25分)1、請補(bǔ)充設(shè)計下列l(wèi)ed.c驅(qū)動程序中的led_write()和led_exit()部分。#include <linux/module.h>。#include "led_ioctl.h"#define LED_MAJOR 139#define led_sle (*(volatile unsigned long *)LED_GPACON)#define led_sle_data (*(volatile unsigned long *)LED_GPADATA)devfs_handle_t dev

7、fs_led;unsigned long LED_1;unsigned long LED_GPACON;unsigned long LED_GPADATA;unsigned long led_write_addr;static struct file_operations led_fops = open:led_open,read:led_read,write:led_write, ioctl: led_ioctl,release:led_release,;int led_open(struct inode *inode, struct file *filp)led_sle |= 0x2000

8、; /chip_select enableled_sle_data &= (0x2000);/0 -> chip_selectprintk("open okn");return 0;ssize_t led_write(struct file *fp, char * buf, size_t size) (1) int led_release(struct inode *inode, struct file *filp)printk("release okn");return 0;int _init led_init(void)printk(&

9、quot;*led_init*n");LED_GPACON = ioremap(0x56000000,4);LED_GPADATA = ioremap(0x56000004,4);LED_1 = ioremap(0x10000000,8);devfs_led = devfs_register(NULL, "led", DEVFS_FL_DEFAULT,LED_MAJOR, 0, S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP, &led_fops, NULL); return 0;static void _e

10、xit led_exit(void) (2) module_init(led_init);module_exit(led_exit);2、請補(bǔ)充設(shè)計下列中斷驅(qū)動程序中的testirq_init()和testirq_exit()部分,其中中斷號定義為IRQ_EINT5,端口為gpf,地址映射為ioremap(0x56000058,4)。void testirq_interrupt(int irq,void *d,struct pt_regs *regs)/*clear interrupt register for EINT5*/ SRCPND &= (0x00000010); /bit4

11、 INTPND = INTPND; EINTPEND &= (0x00000020); /bit5 printk("Entered an interrupt! Beginning interrupt service!n"); static int _init testirq_init(void)static int result;unsigned long gpfup; (1) static void _exit testirq_exit(void) (2) module_init(testirq_init);module_exit(testirq_exit);20

12、06-2007 學(xué)年第 二 學(xué)期期 末 考試試卷審批表課程名稱嵌入式系統(tǒng) 考試班級本科電氣0401/0402 參加考試學(xué)生人數(shù)87任課教師張平均命題教師張平均試卷類型(A、B或C)A教研室意見(簽字)系(部)意見(簽字)教務(wù)處意見一、填空題(每空1分)(共20分)1、應(yīng)用、計算機(jī)技術(shù)、嵌入、專用、計算機(jī)。2、ARM7系列、ARM9系列、ARM10E系列。3、控制線、地址線。4、文件拷貝、創(chuàng)建目錄、顯示目錄內(nèi)容 、刪除文件、改變工作目錄。5、異常事件、中斷請求信號、CPU、56路、FIQ 。二、問答題(25分)1、(5分)以自頂向下的角度來看,系統(tǒng)設(shè)計:第一步從系統(tǒng)需求分析開始;第二步是規(guī)格說明

13、,在這一步我們對需設(shè)計的系統(tǒng)功能進(jìn)行更細(xì)致地描述,這些描述并不涉及系統(tǒng)的組成;第三步是系統(tǒng)結(jié)構(gòu)設(shè)計,在這一階段以大的構(gòu)件為單位設(shè)計系統(tǒng)內(nèi)部詳細(xì)構(gòu)造,明確軟、硬件功能的劃分;第四步是構(gòu)件設(shè)計,它包括系統(tǒng)程序模塊設(shè)計、專用硬件芯片選擇及硬件電路設(shè)計;第五步是系統(tǒng)集成,在完成了所有構(gòu)件設(shè)計的基礎(chǔ)上進(jìn)行系統(tǒng)集成,構(gòu)造出所需的完整系統(tǒng)。2、(5分)1)vim /etc/e在PC機(jī)上執(zhí)行setup,選擇System services,將其中的nfs一項選中(出現(xiàn) *表示選中);將這個默認(rèn)的空文件修改為只有如下一行內(nèi)容: / (rw) /即根目錄可讀寫,/和(rw)之間要要留空格 然后保存退出(:wq),然

14、后執(zhí)行如下命令: /etc/rc.d/init.d/nfs restart 2)把此句寫入PC機(jī)的腳本文件/etc/rc.d/rc.local中,PC機(jī)啟動時會執(zhí)行此文件,不用每次執(zhí)行上面的那條命令來啟動NFS/etc/rc.d/init.d/nfs restart 3)配置PC機(jī)的網(wǎng)卡IP地址為ifconfig /查看網(wǎng)卡4)PC機(jī)自己mount自己,看是否成功就可以判斷NFS是否配好了。例如在PC機(jī)的根目錄下執(zhí)行:(假定PC機(jī)的IP是) mount 22:/ /mnt3、(5分)PC的com口與arm的uart0的連接桌面右擊新建終端minicom115200波特率4

15、、(10分)1) 在PC機(jī)上執(zhí)行setup,選擇System services,將其中的tftp一項選中(出現(xiàn) *表示選中);2) 并去掉ipchains和iptables兩項服務(wù)(即去掉它們前面的*號)。 3) 然后還要選擇Firewall configuration,選中No firewall。 4)退出setup,執(zhí)行如下命令以啟動TFTP服務(wù): service xinetd restart 配置完成。簡單測試一下TFTP服務(wù)器是否可用,即自己tftp自己,在PC機(jī)上執(zhí)行。若TFTP服務(wù)器沒有配置成功,需要按照上述步驟重新檢查一遍。三、程序閱讀題(每處1.5分,共30分)1、CC = /

16、opt/host/armv4l/bin/armv4l-unknown-linux-gcc /定義gccLD = /opt/host/armv4l/bin/armv4l-unknown-linux-ld /定義ldCFLAGS = -I/HHARM9-EDU/kernel/include/linux -Wall /定義編譯選項led.o: led.c /定義目標(biāo)和源文件$(CC) $(CFLAGS) -g led.c -o led /編譯方法cp led.o / -f /復(fù)制led.o到 /.PHONY: clean /定義偽目標(biāo)clean: /定義clean-rm -f *.o /刪除中間文件

17、 2、static struct file_operations keybd_fops = open:keybd_open,read:keybd_read,release: keybd_release,; / 定義keybd_fopsint keybd_open(struct inode *inode, struct file *filp) / 定義open函數(shù)printk("open okn");return 0;ssize_t keybd_read(struct file *fp, char * buf, /定義read函數(shù) size_t size) int keybd

18、_release(struct inode *inode, struct file *filp) /定義release函數(shù)printk("release okn"); /輸出release okreturn 0;ssize_t led_write(struct file *fp, char * buf, /定義write函數(shù) size_t size) int _init keybd_init(void) /定義init函數(shù) static void _exit keybd_exit(void) /定義exit函數(shù) devfs_unregister(devfs_keybd);

19、/定義unregister函數(shù)module_init(keybd_init); /定義模塊初始化入口函數(shù)module_exit(keybd_exit); /定義模塊退出入口函數(shù) 四、程序設(shè)計題(10分)1、ssize_t led_write(struct file *fp, char * buf, size_t size)char key;if (get_user(key, buf) return -EFAULT;(*(volatile unsigned char *) led_write_addr) = key; return 1;static void _exit led_exit(void)devfs_unregister(devfs_led);2、static int

溫馨提示

  • 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

提交評論