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

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

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

          新聞中心

          繪圖的API函數(shù)

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

          一、 實驗?zāi)康?BR>學(xué)習(xí)使用嵌入式系統(tǒng)的繪圖API 函數(shù)。理解繪圖設(shè)備上下文(DC)在多任務(wù)操作系統(tǒng)
          中的作用。會使用繪圖設(shè)備上下文(DC)在屏幕上繪制一個圓角矩形和一個圓。了解繪制
          動畫防止閃爍的基本原理,可以實現(xiàn)無閃爍的動畫。
          二、 實驗內(nèi)容
          本次實驗通過使用嵌入式系統(tǒng)的繪圖API 函數(shù),首先,在屏幕上繪制一個圓角矩形和
          一個整圓。然后,再在屏幕上無閃爍的繪制一個移動的正弦波。
          三、 預(yù)備知識
          1、用ARM SDT 2.5 集成開發(fā)環(huán)境,編寫和調(diào)試程序的基本過程。
          2、基于操作系統(tǒng)的應(yīng)用程序的框架結(jié)構(gòu)。
          3、會使用Source Insight 3 編輯C 語言源程序
          四、 實驗設(shè)備及工具(包括軟件調(diào)試工具)
          硬件:ARM 嵌入式開發(fā)板、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentumn100 以

          軟件:PC 機(jī)操作系統(tǒng)win98、ARM SDT 2.51 集成開發(fā)環(huán)境、仿真器驅(qū)動程序、Source
          Insight 3
          五、 實驗步驟
          1、在ARM SDT 2.51 中,使用實驗一中創(chuàng)建好的模板,新建一個項目work1。把操作
          系統(tǒng)的所需要的頭文件(*.h)和庫文件(*.alf)加入工程中。
          2、用Source Insight 3 創(chuàng)建一個工程,把work1 中的C 語言源文件文件加入。
          3、編輯Main.c 文件,在Main_Task 任務(wù)中加入代碼。使用操作系統(tǒng)的繪圖API 函數(shù),
          繪制出如圖所示的圖形。

          提示:
          ⑴ 繪圖必須通過使用繪圖設(shè)備上下文(DC)來實現(xiàn)。繪圖設(shè)備上下文(DC)中
          包括了與繪圖相關(guān)的信息,比如:畫筆的寬度、繪圖的原點等等。這樣,在多任務(wù)系統(tǒng)
          中,不同的任務(wù)通過不同的繪圖設(shè)備上下文(DC)繪圖才不會互相影響。
          ⑵ 繪制整圓可以用Circle 函數(shù),繪制直線用Line 函數(shù),繪制圓弧用ArcTo 函數(shù)。
          調(diào)試的過程中可以在每條的繪圖函數(shù)之后調(diào)用OSTimeDly()函數(shù),使系統(tǒng)更新顯示,輸
          出到液晶屏上,具體的細(xì)節(jié)原因見步驟5 的提示。
          ⑶ 為方便繪圖,可使用SetDrawOrg 函數(shù)設(shè)置繪圖的原點。

          ⑷ 因為本次實驗不用系統(tǒng)的字符顯示,所以,可以去掉Main()函數(shù)中LoadFont()
          函數(shù),以節(jié)省系統(tǒng)啟動的時間。
          4、用ARM SDT 2.5 編譯、下載并調(diào)試上述程序,檢查運行結(jié)果
          5、在屏幕上無閃爍的繪制一個移動的正弦波。
          提示:
          ⑴ 在操作系統(tǒng)中,液晶顯示屏的刷新是通過Lcd_Fresh_Task 任務(wù)完成的。繪圖
          首先是在繪圖緩沖區(qū)中完成的,然后,系統(tǒng)自動(也可以通過設(shè)置繪圖設(shè)備上下文屏,
          不讓系統(tǒng)自動刷新)的向Lcd_Fresh_Task 發(fā)送的更新消息。其流程圖如圖所示。

          ⑵ 因為繪圖是在后臺進(jìn)行的,繪制完成之后,再更新到液晶屏上,所以,在繪圖
          的時候不用擔(dān)心反覆的擦除屏幕會引起屏幕的閃爍,這樣,可以很方便的實現(xiàn)動畫無閃
          爍的顯示。
          ⑶ 繪制完一次圖形以后,必須要使用OSTimeDly()給出一定時間的延時(推薦用
          200),同時,使Main_Task 任務(wù)主動讓出對CPU 的控制權(quán),使Lcd_Fresh_Task 任務(wù)可
          以完成刷新。
          ⑷ 因為繪圖需要使用sin()函數(shù),所以需要在main.c 中加入#include math.h>。
          ⑸ 為方便繪圖,可使用SetDrawOrg 函數(shù)設(shè)置繪圖的原點。
          6、用ARM SDT 2.5 編譯、下載并調(diào)試上述程序,檢查運行結(jié)果
          7、生成發(fā)行版本的.bin 文件,通過USB 下載到嵌入式開發(fā)板中,運行并檢查輸出結(jié)。



          關(guān)鍵詞: API函數(shù)

          評論


          技術(shù)專區(qū)

          關(guān)閉