日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM的多任務(wù)和系統(tǒng)時(shí)鐘

          ARM的多任務(wù)和系統(tǒng)時(shí)鐘

          作者: 時(shí)間:2011-11-08 來(lái)源:網(wǎng)絡(luò) 收藏

          ARM的多任務(wù)和系統(tǒng)時(shí)鐘
          一、實(shí)驗(yàn)?zāi)康?BR>學(xué)習(xí)系統(tǒng)時(shí)間相關(guān)API 函數(shù)和使用信號(hào)量解決uCOS-II 進(jìn)程之間的同步問(wèn)題,把系統(tǒng)時(shí)
          間顯示在一個(gè)文本框中,并可以通過(guò)鍵盤(pán)設(shè)置修改。
          二、實(shí)驗(yàn)內(nèi)容
          本次實(shí)驗(yàn)在用戶(hù)的Main_Task 任務(wù)中創(chuàng)建一個(gè)新任務(wù),來(lái)實(shí)現(xiàn)系統(tǒng)時(shí)鐘的顯示和更新。
          同時(shí),通過(guò)在Main_Task 任務(wù)中響應(yīng)鍵盤(pán)消息,可以對(duì)系統(tǒng)的時(shí)鐘進(jìn)行更改。使用uCOS-II
          多任務(wù)系統(tǒng)中的信號(hào)量保證多個(gè)任務(wù)同時(shí)對(duì)系統(tǒng)的一個(gè)資源訪(fǎng)問(wèn)而不產(chǎn)生沖突。
          三、預(yù)備知識(shí)
          1、用ARM SDT 2.5 集成開(kāi)發(fā)環(huán)境,編寫(xiě)和調(diào)試程序的基本過(guò)程。
          2、基于操作系統(tǒng)的應(yīng)用程序的框架結(jié)構(gòu)。
          3、會(huì)使用Source Insight 3 編輯C 語(yǔ)言源程序
          4、會(huì)使用消息循環(huán)響應(yīng)鍵盤(pán)消息
          5、會(huì)使用文本框控件
          四、實(shí)驗(yàn)設(shè)備及工具(包括軟件調(diào)試工具)
          硬件:ARM 嵌入式開(kāi)發(fā)板、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentumn100 以

          軟件:PC 機(jī)操作系統(tǒng)win98、ARM SDT 2.51 集成開(kāi)發(fā)環(huán)境、仿真器驅(qū)動(dòng)程序、Source
          Insight 3.0、超級(jí)終端通訊程序、USB 下載程序、UltraEdit
          五、實(shí)驗(yàn)步驟
          1、在ARM SDT 2.51 中,使用實(shí)驗(yàn)一中創(chuàng)建好的模板,新建一個(gè)項(xiàng)目work1。把操作
          系統(tǒng)的所需要的頭文件(*.h)和庫(kù)文件(*.alf)加入工程中。
          2、用Source Insight 3 創(chuàng)建一個(gè)工程,把work1 中的C 語(yǔ)言源文件文件加入。
          3、打開(kāi)Main.c 文件,在Main_Task 任務(wù)中添加代碼,使系統(tǒng)啟動(dòng)的時(shí)候,創(chuàng)建一個(gè)文
          本框。啟動(dòng)消息循環(huán),使用戶(hù)的通過(guò)鍵盤(pán)可以編輯系統(tǒng)時(shí)間。
          4、在Main_Task 任務(wù)中再創(chuàng)建一個(gè)新的任務(wù),此任務(wù)負(fù)責(zé)更新顯示系統(tǒng)的時(shí)間。定義
          一個(gè)信號(hào)量,保證系統(tǒng)多個(gè)任務(wù)訪(fǎng)問(wèn)更新系統(tǒng)時(shí)鐘文本框的時(shí)候,不產(chǎn)生沖突。Main_Task
          任務(wù)具體的程序流程圖如圖所示。

          5、編輯時(shí)鐘更新任務(wù)的代碼。此任務(wù)具體的程序流程如圖所示。

          提示:
          ⑴ 用CreateTextCtrl 函數(shù)創(chuàng)建文本框,SetTextCtrlText 函數(shù)設(shè)置文本框中的內(nèi)容。
          ⑵ 使用OSTaskCreate 來(lái)創(chuàng)建系統(tǒng)任務(wù)。在uCOS-II 系統(tǒng)中,任務(wù)的優(yōu)先級(jí)是不
          能相同的。比如:Main_Task 任務(wù)的優(yōu)先級(jí)是12,Key_Scan_Task 任務(wù)的優(yōu)先級(jí)是56。
          目前使用的uCOS-II 的版本只支持64 個(gè)任務(wù),包括,還有8 個(gè)系統(tǒng)任務(wù),用戶(hù)可以使
          用的任務(wù)是56 個(gè)。創(chuàng)建任務(wù)的時(shí)候,需要選擇合適的任務(wù)優(yōu)先級(jí)(比如:14)。
          ⑶ 通過(guò)SetTextCtrlEdit 函數(shù)設(shè)置文本框是否處于編輯狀態(tài), 使用
          TextCtrlDeleteChar 和AppendChar2TextCtrl 函數(shù)在文本框中刪除和追加字符。
          ⑷ 通過(guò)OSSemCreate 函數(shù)創(chuàng)建文本框控制的信號(hào)量。OSSemPend 函數(shù)等待并獲
          得文本框控制的信號(hào)量;OSSemPost 釋放文本框控制的信號(hào)量。
          ⑸ 使用Rtc_IsTimeChange 函數(shù),判斷系統(tǒng)的時(shí)鐘對(duì)應(yīng)的某一位是否改變。用
          Rtc_Format 格式化系統(tǒng)的時(shí)鐘格式得到Unicode 字符串,可以方便的顯示到文本框控件
          里。
          7、用ARM SDT 2.5 編譯、下載并調(diào)試上述程序,檢查運(yùn)行結(jié)果
          8、生成發(fā)行版本的.bin 文件,通過(guò)USB 下載到嵌入式開(kāi)發(fā)板中,運(yùn)行并檢查輸出結(jié)果。



          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉