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

正文內容

非操作系統(tǒng)下的實驗嵌入式實驗報告(編輯修改稿)

2025-04-19 12:42 本頁面
 

【文章內容簡介】 含16字節(jié)的FIFO緩沖寄存器和數(shù)據(jù)移位器。發(fā)送時,數(shù)據(jù)被寫入FIFO,然后拷貝到發(fā)送移位器中,接下來數(shù)據(jù)通過發(fā)送數(shù)據(jù)引腳(TxDn)被發(fā)送。接收時,接收到的數(shù)據(jù)從接收數(shù)據(jù)引腳(RxDn)移入,然后從移位器拷貝到FIFO中 實驗儀器與設備1. TQ2440實驗平臺2. JLINK 調試器 實驗步驟1. 2. 閱讀代碼,單步執(zhí)行,體會Uart0_SendByte和Uart0_Getch()函數(shù)里面對相關寄存器的設置方法和意義,實現(xiàn)基本的串口收發(fā)功能,并且修改收發(fā)的數(shù)據(jù),把對應的程序和現(xiàn)象記錄下來序號程序現(xiàn)象1Uart0_Init( 115200 )。Uart0_SendByte(39。A39。)。串口調試助手顯示字母‘A’2ch=Uart0_Getch()。Uart0_SendByte(ch)。在串口調試助手輸入任意字符串口調試助手將再次顯示該字符4. 修改程序,實現(xiàn)一個字符串的發(fā)送功能,把程序和現(xiàn)象記錄下來 序號程序現(xiàn)象1void UART0_SendString(char *pWord){ while(*pWord) { if(*pWord == 39。\n39。) {UART0_SendChar(39。\n39。)。 //換行 UART0_SendChar(39。\r39。)。 } else {UART0_SendChar(*pWord)。 } pWord++。 }}串口發(fā)送字符串函數(shù)定義2UART0_SendString(“Hello,world!\n”)串口調試助手顯示字符串“Hello,world!”并換行5. 修改代碼,實現(xiàn) PC 通過串口控制 LED 的功能,把程序和現(xiàn)象記錄下來序號程序現(xiàn)象1switch(ch){ case 39。139。: LED_Control(1,ON)。 break。 case 39。239。: LED_Control(2,ON)。 break。 case 39。339。: LED_Control(3,ON)。 break。 case 39。439。: LED_Control(4,ON)。 break。 default: LED_Control(1,OFF)。 LED_Control(2,OFF)。 LED_Control(3,OFF)。 LED_Control(4,OFF)。 break。}字符判斷并控制對應LED燈點亮2ch=Uart0_Getch()。在串口調試助手中輸入字符‘1’、‘2’、‘3’、‘4’對應LED點亮 實驗思考題如何采用帶FIFO的串口進行數(shù)據(jù)收發(fā)答:在接受數(shù)據(jù)的時候放入FIFO中,然后發(fā)送數(shù)據(jù),把FIFO中的數(shù)據(jù)通過串口發(fā)送出去。在串口助手里很容易看出來,數(shù)據(jù)是不是錯誤或者丟失。驗證了發(fā)送與接收。 實時時鐘實驗 實驗目的熟悉ARM的實時時鐘的讀寫 實驗原理實時時鐘(RTC)單元在系統(tǒng)電源關閉的情況下可以在備用電池下工作。S3C2440A的RTC模塊的結構如圖218所示,其能夠以BCD碼的形式提供秒、分鐘、小時、星期、日、月、年的信息,具有閏年生成器,具有報警功能,解決2000年問題,具有獨立電源引腳(RTCVDD),支持對于實時內核時間節(jié)拍的毫秒節(jié)拍時間中斷。與RTC相關的寄存器有:u 實時時鐘控制寄存器(RTCCON)在讀取或者修改時間前,必須先把該寄存器的第 0 位 RTCEN 置 1,該寄存器的位如下所示 u 年寄存器 u 月寄存器 u 日寄存器 u 時寄存器 u 分寄存器 u 秒寄存器1. TQ2440實驗平臺2. JLINK 調試器3. 串口線 實驗步驟1. 2. 閱讀代碼,單步執(zhí)行,體會void RTC_Time_Set( void )和void RTC_Display(void)函數(shù)里面對相關秒寄存器的寫入和讀取過程,通過串口觀察到的結果。3. 增加對年、月、日、時、分寄存器的寫入和讀取功能,并通過串口觀察修改后的時間。把代碼和相應的現(xiàn)象寫入下表序號程序現(xiàn)象1void RTC_Time_Set( void ){rRTCCON = 1 。 rBCDYEAR = 0x14 。 //年 閏年測試rBCDMON = 0x12 。 //月rBCDDATE = 0x26 。 //日 rBCDDAY = 0x04 。 //星期rBCDHOUR = 0x14 。 //小時rBCDMIN = 0x49 。 //分rBCDSEC = 0x50 。 //秒rRTCCON amp。= ~1 。 }RTC起始時間設置位“2014年12月26日星期四14時49分50秒”2void RTC_Display(void) {U16 year 。U8 month, day 。 // weekU8 hour, minute, second 。rRTCCON = 1 。 year = 0x2000+rBCDYEAR 。 //年month = rBCDMON 。 //月day = rBCDDATE 。 //日 hour = rBCDHOUR 。 //小時minute = rBCDMIN 。 //分second = rBCDSEC 。 //秒rRTCCON amp。= ~1 。 //RTC read and write disableUart_Printf(RTCtime : %04x%02x%02x %02x:%02x:%02x\n, year, month, day, hour, minute, second )。Delay( 900 ) 。}讀取RTC當前時間在通過串口在串口調試助手中顯示4. 修改工程,改變時間設置值,嘗試設置閏年和非閏年,觀察實驗結果,把把代碼和相應 的現(xiàn)象寫入下表序號程序現(xiàn)象1RTC_Time_Set()。 //設置時間為2014年2月28日星期一23:59:57while(1){RTC_Display()。}RTC初始時間為時間為2014年2月28日星期一23:59:57;串口每秒顯示一次當前時間4秒后當前時間為2014年2月29日星期二00:00:00;2RTC_Time_Set()。 //設置時間為2013年2月28日星期一23:59:57while(1){RTC_Display()。}RTC初始時間為時間為2013年2月28日星期一23:59:57;串口每秒顯示一次當前時間4秒后當前時間為2013年3月1日星期二00:00:00; 看門狗實驗 實驗目的熟悉ARM的看門狗的操作 實驗原理在程序運行過程中中,由于軟件問題或者外界的干擾,造成程序跑飛,而陷入死循環(huán),程序的正常運行被打斷,由于系統(tǒng)無法繼續(xù)工作,會造成整個系統(tǒng)的陷入停滯狀態(tài),發(fā)生不可預料的后果,所以出于對程序運行狀態(tài)進行實時監(jiān)測的考慮,便產生了一種專門用于監(jiān)測單片機程序運行狀態(tài)的芯片,俗稱“看門狗”(watchdog)。S3C2440A的看門狗的結構如圖219所示,看門狗實際是一個計數(shù)器,當計數(shù)溢出的時候可以對系統(tǒng)進行復位,因此程序在正常運行的時候應該隔一段時間對看門狗復位,防止看門狗計數(shù)器溢出使得系統(tǒng)復位,這個過程叫做“喂狗”。S3C2440A中與看門狗相關的寄存器有:u 看門狗控制寄存器(WTCON)看門狗控制寄存器如下表所示,其用于啟動和關閉看門狗。u 看門狗計數(shù)器(WTCNT)程序中需要在器溢出之前把新的計數(shù)值賦給看門狗計數(shù)器 實驗儀器與設備1. TQ2440實驗平臺2. JLINK 調試器 實驗步驟1. 2. 閱讀代碼,了解看門狗的啟動方式和喂狗的方法3. 修改工程,比較有喂狗和沒有喂狗的實驗結果,把程序和相應的現(xiàn)象列入下表中。注意:要觀察看門狗的復位,必須全速運行程序,不能單步執(zhí)行序號程序現(xiàn)象1for(i=5。i=8。i++){led_con(i,ON)。delay(1)。led_con(i,OFF)。delay(1)。}程序運行大約2s后停止運行并且AXD顯示:“Processor ARM79_0 raised an exception 。cause:The processor was reset”2for(i=5。i=8。i++){led_con(i,ON)。//rWTCNT=2000。 //喂狗delay(1)。led_con(i,OFF)。//rWTCNT=2000。 //喂狗delay(1)。}程序正常運行,4個LED循環(huán)依次亮滅 第三章 μC/OS II操作系統(tǒng)下的實驗 μC/OS II多任務建立實驗 實驗目的熟悉 μC/OS II 多任務建立方法 實驗內容1. 運行 μC/OS II 例程,熟悉任務的建立方法2. 修改例程代碼,建立兩個任務,其中一個實現(xiàn)蜂鳴器唱歌,另外一個實現(xiàn)按鍵的檢測并且改變相應的 LED 的狀態(tài) 實驗原理人們在實際生活中處理一個大而復雜問題, 時慣用的方法就是 “分而治之” 即把一個大問題分解多個相對簡單、比較容易解決的小問題,小問題逐個被解決了,大問題也就隨之解決了。同樣,在設計一個較為復雜的應用程序時,也通常把一個大型任務分解成多個小任務,然后在計算機中通過運行這些小任務,最終達到完成大任務的目的,這種做法也使用應用程序的維護變得方便起來。因此,現(xiàn)代操作系統(tǒng)幾乎都是對任務操作系統(tǒng)。 在μC/OSII 中,與上述小任務對應的是程序實體就叫做“任務”(實質是一個線程)。μC/OSII 就是一個能對這些小任務進行管理和調度的多任務操作系統(tǒng)。 從應用程序設計的角度來看,μC/OSII 的任務就是一個線程,就是一個用來解決用戶問題的 C 語言函數(shù)和與之相關聯(lián)的一些數(shù)據(jù)結構而構成的一個實體。 μC/OSII 的任務有兩種:用戶任務和系統(tǒng)任務。有應用程序設計者編寫得任務,叫做用戶任務;有系統(tǒng)提供的任務叫做系統(tǒng)任務。用戶任務是為解決應用問題而編寫的;系統(tǒng)任務是為應用程序來提供某種服務的。 為了管理上的方便,μC/OSII 把每一個任務都作為一個節(jié)點。 目前,μC/OSII 最多可以對 64 個任務(包括用戶任務和系統(tǒng)任務)進行管理。1) 任務的狀態(tài) 因為在嵌入式系統(tǒng)中只有一個 CPU,所以在一個具體時刻只能允許一個任務占用 CPU。 根據(jù)任務是否占用 CPU,以及是否處于被中斷、等待等情況。任務在μC/OSII 中可能處于表31 所列的 5 種狀態(tài)之一。任務的狀態(tài) 說明睡眠狀態(tài) 任務只是以代碼的形式駐留在程序空間(ROM 和 RAM)中,還沒有交給操作 系統(tǒng)管理時的情況叫睡眠狀態(tài)。簡單地說,任務在沒有被配備任務控制塊 或被剝奪了任務控制塊時的狀態(tài)叫做任務的睡眠狀態(tài)就緒狀態(tài) 如果系統(tǒng)為任務配備了任務控制塊且在任
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1