《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 其他 > ARM的USB連機通訊

ARM的USB連機通訊

2016-12-13
關(guān)鍵詞: 通訊 ARM USB

一、實驗?zāi)康?/span>

學(xué)習(xí)USB 相關(guān)函數(shù)的使用,編寫一段程序按指定的鍵盤按鍵可以實現(xiàn)連接,斷開USB。
學(xué)會利用操作系統(tǒng)的繪圖API 函數(shù)顯示一個真彩色的位圖圖片。

二、實驗內(nèi)容

編寫一段程序按指定的鍵盤按鍵可以實現(xiàn)連接,斷開USB,并在屏幕上顯示相關(guān)的信
息。連接USB 的時候,可以從PC 機通過USB 斷口下載程序到嵌入式開發(fā)板中,也可從嵌
入式開發(fā)板上傳文件至PC 機。

三、預(yù)備知識

1、用ARM SDT 2.5 集成開發(fā)環(huán)境,編寫和調(diào)試程序的基本過程。

2、基于操作系統(tǒng)的應(yīng)用程序的框架結(jié)構(gòu)。

3、會使用Source Insight 3 編輯C 語言源程序

4、操作系統(tǒng)的繪圖API 函數(shù)和繪圖設(shè)備上下文(DC)的使用

5、會使用消息循環(huán)響應(yīng)鍵盤消息

四、實驗設(shè)備及工具(包括軟件調(diào)試工具)

硬件:ARM 嵌入式開發(fā)板、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentumn100 以上軟件:PC 機操作系統(tǒng)win98、ARM SDT 2.51 集成開發(fā)環(huán)境、仿真器驅(qū)動程序、SourceInsight 3.0、超級終端通訊程序、USB 下載程序

五、實驗步驟

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)啟動以后,顯示提示按鍵
連接USB 的文字。

4、添加鍵盤消息響應(yīng)函數(shù),當(dāng)按下按鍵時,進入USB 連接狀態(tài),這時暫停所有的任務(wù),自己編寫鍵盤掃描程序,等待按取消鍵退出USB 連接狀態(tài)。進入USB 連接的時候,要顯示一個真彩色的位圖圖片作為提示信息。退出連接的時候,取消顯示圖片,恢復(fù)顯示提示按鍵連接USB 的文字。

提示:

⑴ 調(diào)用EnterUsbConnect 函數(shù)進入USB 的連接狀態(tài),這時函數(shù)將自動暫停任務(wù)調(diào)度。所以,在調(diào)用EnterUsbConnect 之前要先刷新液晶屏的顯示,更改屏幕的提示信息。繪圖完成以后要使用OSTimeDly,以便更新顯示。

⑵ 使用ShowBmp 函數(shù)可以顯示指定文件名的真彩色的位圖圖片

⑶ 因為調(diào)用EnterUsbConnect 函數(shù)以后系統(tǒng)已經(jīng)進入非多任務(wù)狀態(tài),與多任務(wù)相關(guān)的函數(shù)(比如:OSTimeDly)就不能使用,否則將導(dǎo)致系統(tǒng)死鎖。

⑷ 等待鍵盤掃描也應(yīng)該調(diào)用它的非多任務(wù)版本GetNoTaskKey()。如果有按鍵按下,此函數(shù)立即返回,否則,系統(tǒng)無限等待。

⑸ 使用ExitUsbConnect 函數(shù)退出USB 連接狀態(tài),系統(tǒng)的多任務(wù)將自動恢復(fù)。

5、用ARM SDT 2.5 編譯、下載并調(diào)試上述程序,檢查運行結(jié)果

6、生成發(fā)行版本的.bin 文件,通過USB 下載到嵌入式開發(fā)板中,運行并檢查輸出結(jié)果

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。