freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

鄺堅_北郵嵌入式實驗報告(更新版)

2025-11-04 23:39上一頁面

下一頁面
  

【正文】 ffset){ifdef OURS_HELLO_DEBUG printk(“writen”)。c = cwrite(fd,buf,2)。printf(“buf[0],buf[1]: [%x,%x]n”,buf[0],buf[1])。outw(0x0000,ioremap_addr)。endifret = HW_LED_CTL_init()。要求您還編寫更多的測試程序補充代碼1 voidshowversion(void){ printk(“*********************************************n”)。devfs_unregister_chrdev(SERIAL_LED_MAJOR, “serial_led”)。使用測試程序看到的測試結果是數(shù)碼管按09顯示輸出。endifret = HW_SERIAL_LED_init()。SERIAL_LED_ops)。endif write_byte(* buf)。} 補充代碼2 //READssize_tSERIAL_LED_read(struct file * file ,char * buf, size_t count, loff_t * f_ops){ ifdef OURS_HELLO_DEBUG} 補充代碼3 //WRITEssize_tSERIAL_LED_write(struct file * file ,const char * buf, size_t count, loff_t * f_ops)return count。} 補充代碼3 //WRITEssize_tSIMPLE_INT_write(struct file * file ,const char * buf, size_t count, loff_t * f_ops){ifdef OURS_INT_DEBUG} 補充代碼4 //structfile_operationsINT_ctl_ops ={ open: SIMPLE_INT_open, read: SIMPLE_INT_read, endif return count。只需將上面的代碼改為如下代碼即可:在理論課中,我們學習了許多中斷方面的知識,包括中斷向量、中斷優(yōu)先級、中斷過程等。實驗作業(yè)要求在目標板上LED閃爍產生亮7秒,滅2秒的效果 在測試程序中有這樣一段代碼: while(1){ ioctl(fd,LED_OFF)。本實驗涉及的外部硬件只有電阻和發(fā)光二極管。五、基本接口實驗在完成了基本實驗后,我們開始著手基本接口實驗。次設備號僅由設備驅動程序解釋,區(qū)分被一個設備驅動控制下的某個獨立的設備。嵌入式Linux系統(tǒng)驅動程序開發(fā)與普通Linux開發(fā)沒有區(qū)別。初始化部分一般還負責給設備驅動程序申請包括內存、時鐘、I/O端口等在內的系統(tǒng)資源,這些資源也可以在open子程序或者其他地方申請。(2)初始化設備驅動相關的參數(shù)。當有對此設備名的訪問時,Linux通過請求訪問的設備名得到主、次設備號,然后把此訪問分發(fā)到對應的設備驅動,設備驅動再根據(jù)次設備號調用不同的函數(shù)。register_chrdev的定義為:intregister_chrdev(unsigned int major, const char *name, struct file_ operations *fops)。對于有緩沖區(qū)的I/O操作,一般是把數(shù)據(jù)寫入緩沖區(qū)里。當最后一次使用設備完成后,調用close子程序。一個設備驅動程序模塊的基本框架在系統(tǒng)內部,I/O設備的存取通過一組固定的入口點來進行,入口點也可以理解為設備的句柄,就是對設備進行操作的基本函數(shù)。對用戶程序而言,設備驅動程序隱藏了設備的具體細節(jié),對各種不同設備提供了一致的接口,一般來說,是把設備映射為一個特殊的設備文件,用戶程序可以像對其他文件一樣對此設備文件進行操作。輸入程序的時候和其他編輯器是一樣的,如下圖。2)打開宿主PC 機電源,進入 Linux操作系統(tǒng)。TFTP(Trivial File Transfer Protocol)是簡單文件傳輸協(xié)議,由于特定開發(fā)環(huán)境的制約,這一服務是必須的。由于正值期末,考試任務繁重,時間緊迫,自身水平有限,難免會有疏漏,請老師指正。/*恢復內存池首址*/ blockHeadPtr =(blockHead*)((char*)memsizeof(blockHead))。semGive(semMalloc)。if((Size available!= 0))/*長度小于16時,分配長度為16的內存空間*/ {blockHeadPtr = poolHeadPtrfirstavailable。/* pool號為1,表示他是16B容量的*/ blockHeadPtrfrontBlock = poolHeadPtrfirstavailable。blockHeadPtrfrontBlock = 0。for(i=1。/*pool指向申請內存區(qū)尾*//*初始化pool 1 該內存池分配大小為16B的內存*/ poolHeadPtr =(poolHead*)((char*)mem + sizeof(pool))。pool* mem。FOREVER { } return(OK)。} /* server()處理來自各個客戶任務的消息*/ STATUS server(void){ …… while(taskIsSuspended(tidTimer[id])|| taskIsReady(tidTimer[id]))taskDelay(10)。printf(“programe start!n”)。tidClient[id] = taskSpawn(tempName, 210, 0, STACK_SIZE, msgQIdClient[id] = msgQCreate(MAX_MSGS, MAX_MSG_LEN, if(msgQIdClient[id] == NULL){ return(ERROR)。id++){} semSynStart = semBCreate(SEM_Q_FIFO | SEM_EVENTSEND_ERR_NOTIFY,SEM_EMPTY)。for(id = 0。} PRI_NORMAL)== ERROR)} } 啟動同步功能;由manager()創(chuàng)建的任務優(yōu)先級最高,先創(chuàng)建timer()、server()、client()的任務,讓他們都在等待信號量semSynStart而被阻塞,最后創(chuàng)建manager()的任務,占據(jù)CPU,等待其他所有任務都被阻塞,解鎖所有等待信號量的任務,讓它們同時啟動。txMsg =(MESSAGE*)memMalloc(MAX_MSG_LEN)。/* 發(fā)送任務的MESSAGE ID */ int mRecvId。/* 消息類型 0:timerclient *1:clientserver 2:serverclient*/ int mSendId。FOREVER {taskDelay((int)(tick*DELAY_SECOND))。txMsg,MAX_MSG_LEN,WAIT_FOREVER,MSG_{ return(ERROR)。tidServer = tidManager = 0。id NUM_CLIENT。sprintf(tempName, “tClient%d”, id)。id++){} tidManager = taskSpawn(“tMannager”, 200, 0, STACK_SIZE,(FUNCPTR)manager,0,0,0,0,0,0,0,0,0,0)。return(OK)。semTake(semSynStart,WAIT_FOREVER)。/*initial()初始化內存池*/ pool* initial(void){ int i。poolPtrpool =(poolHead*)((char*)mem + sizeof(pool))。blockHeadPtrfrontBlock = 0。blockHeadPtrpoolId =2。blockHeadPtr=(blockHead*)((char*)blockHeadPtr + blockHeadPtrpoolId = 1。poolHeadPtr = initialPtrpool。(poolHeadPtrnext)available。poolHeadPtr = initialPtrpool。四、心得實驗中遇到了各種各樣的問題,特別是代碼調試,對報錯的分析,定位錯誤,但是通過不懈努力,完成了本次實驗,讓我對課堂上所講的內容有了更深刻的認識,對嵌入式實時操作系統(tǒng)有了更深的理解。實驗五為宿主PC機配置了TFTP服務。實驗步驟如下: 1)硬件連接:連接宿主 PC 機和一臺 PXA270RP目標板。在 vi 里面先單擊鍵盤 A 鍵,然后左下角會變成—INSER。Linux操作系統(tǒng)將所有的設備全部看成文件,并通過文件的操作界面進行操作。應用程序發(fā)出系統(tǒng)調用命令后,會從用戶態(tài)轉到核心態(tài),通過內核將open()這樣的系統(tǒng)調用轉換成對物理設備的操作。關閉一個設備。往設備上寫數(shù)據(jù)。設備的驅動程序在加載的時候首先需要調用入口函數(shù)init_module(),該函數(shù)最重要的一個工作就是向內核注冊該設備,對于字符設備調用register_chrdev()完成注冊。注冊以后,Linux將設備名與主、次設備號聯(lián)系起來。比如,設置中斷掩碼,設置串口的工作方式、并口的數(shù)據(jù)方向等。(5)其他初始化工作。除非系統(tǒng)不使用操作系統(tǒng),程序直接操縱硬件。主設備號惟一標識了設備類型,即設備驅動程序類型,它是塊設備表或字符設備表中設備表項的索引。(8)測試該設備,編寫應用程序,對驅動程序進行測試。我們知道,凡是操作系統(tǒng)控制外部設備,即使是最簡單的硬件電路,也是需要驅動的。}補充代碼(3)//structfile_operationsGPIO_LED_ctl_ops ={ open:SIMPLE_GPIO_LED_open, read:SIMPLE_GPIO_LED_read, write:SIMPLE_GPIO_LED_write, ioctl:SIMPLE_GPIO_LED_ioctl, release:SIMPLE_GPIO_LED_release, }。}// 休眠1秒ioctl(fd,LED_ON)。printk(“SIMPLE_INT_read [kernel]n”)。printk(“*********************************************nn”)。return count。ret =devfs_register_chrdev(SERIAL_LED_MAJOR, amp。printk(“pxa270_SERIAL_LED_init [kernel]n”)。module_exit(cleanup_SERIAL_LED)。sleep(1)。 LED點陣驅動程序設計通過本實驗的操作,我們將 8X8 的點陣 LED 驅動起來并通過編寫測試程序,使其能夠按照您的意圖進行顯示。printk(“pxa270_LED_CTL_init [kernel]n”)。作業(yè)一,隔行掃描:printk(“cleanup_LED_ctl [kernel]n”)。c = cwrite(fd,buf,2)。j} r = 1。} struct ucb1x00 *ad_ucb。endif return count。ad_ucb=ucb1x00_get()。if(ret)}補充代碼9 static void __exit cleanup_AD_ctl(void){} DA驅動實驗通過本實驗的操作,我們使用示波器看到了通過DA轉換而輸出的波形。} printk(“t %st n”,VERSION)。long data){ ifdef OURS_DA_DEBUGprintk(“SIMPLE_DA_ioctl[kernel]n”)。printk(“pxa270_DA_CTL_init [kernel]n”)。if(ret)return ret。ifdef OURS_DA_DEBUG六、實驗中遇到的問題及解決方法每一次上課重新啟動后,當需要將宿主PC機的根目錄掛在到PXA270EP目標板的mnt目錄下(即在超級終端中輸入命令“mount –o soft,timeo=100,rsize=1024 :/ /mnt”)時,常顯示無法掛載。通過這學期的實驗,我逐步完成了建立實驗軟件開發(fā)平臺,搭建實驗編譯軟件環(huán)境,在PC上編輯、編譯一個應用程序,并且在嵌入式系統(tǒng)上運行和調試它的過程。學習LINUX開發(fā)環(huán)境的搭建,通訊配置等。在每次重啟宿主PC機時,都需要重新將超級終端掛載到虛擬機上,掛載之前須通過ifconfig命令查看該機的IP地址,若其已經(jīng)復位,須用命令:ifconfig eth0 up重置宿主PC機的IP地址。TFTP(Trivial File Transfer Protocol)是簡單文件傳輸協(xié)議,由于特定開發(fā)環(huán)境的制約,這一服務是必須的。驅動程序是內核的一部分,是操作系統(tǒng)內核與硬件設備的直接接口,驅動程序屏蔽了硬件的細節(jié),完成以下功能:? 對設備初始化和釋放;? 對設備進行管理,包括實時參數(shù)設置,以及提供對設備的操作接口; ? 讀取應用程序傳送給設備文件的數(shù)據(jù)或者回送應用程序請求的數(shù)據(jù); ? 檢測和處理設備出現(xiàn)的錯誤。由于Linux 中將設備當
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1