一、實驗目的
學習做一個復雜的應用程序的方法和程序結構,結合應用以前16 次實驗所學到的知識,編寫一個比較綜合的應用。
二、實驗內容
用一個列表框作為主菜單,通過鍵盤可以選擇功能,主要的功能有:顯示bmp 文件、設定系統(tǒng)時間、USB 下載。同時,使用文本框控件作為系統(tǒng)的一個狀態(tài)條,顯示提示信息和系統(tǒng)的時間。
三、預備知識
1、用ARM SDT 2.5 集成開發(fā)環(huán)境,編寫和調試程序的基本過程。
2、基于操作系統(tǒng)的應用程序的框架結構。
3、會使用Source Insight 3 編輯C 語言源程序
4、會使用消息循環(huán)響應鍵盤消息
5、會使用文本框控件和列表框控件
6、會編寫通過USB 連接下載的程序
7、會控制系統(tǒng)的時鐘和多線程
8、會使用系統(tǒng)的繪圖函數(shù)顯示圖片
9、會使用系統(tǒng)的文件相關函數(shù)列出指定類型的文件
四、實驗設備及工具(包括軟件調試工具)
硬件:ARM 嵌入式開發(fā)板、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentumn100 以上
軟件:PC 機操作系統(tǒng)win98、ARM SDT 2.51 集成開發(fā)環(huán)境、仿真器驅動程序、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 任務中添加代碼,使系統(tǒng)啟動的時候,創(chuàng)建一個列表框作為系統(tǒng)的選項菜單,添加三個字符串到列表框中,作為功能菜單,包括:繪制圖形、設置時間、USB 下載。創(chuàng)建兩個文本框,其中一個作為系統(tǒng)的狀態(tài)提示,另一個用來顯示系統(tǒng)時間。啟動消息循環(huán), 響應鍵盤消息(OSM_KEY)和列表框被改變的消息(OSM_LISTCTRL_SELCHANGE)。Main_Task 的流程如圖17-1 所示。
4、在Main_Task 任務中再創(chuàng)建一個新的任務,此任務負責實時的更新顯示系統(tǒng)的時間.
其流程圖如圖:17-2 所示。
提示:
1、用CreateTextCtrl 函數(shù)創(chuàng)建文本框,SetTextCtrlText 函數(shù)設置文本框中的內容。
2、用CreateListCtrl 函數(shù)創(chuàng)建列表框,ReLoadListCtrl 函數(shù)裝載一組字符串。
3、使用OSTaskCreate 來創(chuàng)建系統(tǒng)任務。在uCOS-II 系統(tǒng)中,任務的優(yōu)先級是不能相同的。比如:Main_Task 任務的優(yōu)先級是12,Key_Scan_Task 任務的優(yōu)先級是56。目前使用的uCOS-II 的版本只支持64 個任務,包括,還有8 個系統(tǒng)任務,用戶可以使用的任務是56 個。創(chuàng)建任務的時候,需要選擇合適的任務優(yōu)先級(比如:14)。
4、通過SetTextCtrlEdit 函數(shù)設置文本框是否處于編輯狀態(tài),使用TextCtrlDeleteChar和AppendChar2TextCtrl 函數(shù)在文本框中刪除和追加字符。
5、鍵盤消息是OSM_KEY,列表框選擇改變消息是OSM_LISTCTRL_SELCHANGE
6、使用Rtc_IsTimeChange 函數(shù),判斷系統(tǒng)的時鐘對應的某一位是否改變。用Rtc_Format 格式化系統(tǒng)的時鐘格式得到Unicode 字符串,可以方便的顯示到文本框控件里。
7、可以使用一個指針函數(shù)的數(shù)組裝載系統(tǒng)的各個功能(繪制圖形、設置時間、USB下載)函數(shù),便于管理。如下面的程序所示:
void *MainFunction[]={(void*)OnDrawBmp,(void*)OnSetTime,(void*)OnUsb_Download};
其中,OnDrawBmp,OnSetTime,OnUsb_Download 函數(shù)就是對應的繪制圖形、設置時間、USB 下載功能函數(shù)。可以使用如下程序所示的方法調用指定序列的函數(shù):
( (void (*)(void)) (MainFunction[pMainListCtrl->CurrentSel]) )();
其中,pMainListCtrl 表示指向系統(tǒng)主功能文本框的指針。
7、用ARM SDT 2.5 編譯、下載并調試上述程序,檢查運行結果
8、生成發(fā)行版本的.bin 文件,通過USB 下載到嵌入式開發(fā)板中,運行并檢查輸出結果。
上一篇:ARM 簡介及編程知識匯總
下一篇:ARM的文本框控件使用
推薦閱讀
史海拾趣
AB Connectors Ltd成立于上世紀九十年代初,當時電子行業(yè)正處于飛速發(fā)展的黃金時期。公司創(chuàng)始人張三和李四憑借對連接器技術的深刻理解和對市場需求的敏銳洞察,決定創(chuàng)立這家公司。初創(chuàng)時期,公司面臨著資金短缺、技術瓶頸和市場認可度低等挑戰(zhàn)。然而,通過不懈的努力,AB Connectors Ltd成功研發(fā)出了一款具有競爭力的新型連接器產品,并在國際電子展覽會上獲得了廣泛關注。這為公司打開了市場大門,奠定了發(fā)展的基礎。
2009年,CSR plc以1.36億美元成功收購了SiRF技術控股公司。這一收購為CSR plc帶來了GPS和A-GPS的知識產權組合、航位推算和位置中心平臺等重要技術資源,使其在世界無晶圓半導體廠商中的地位得到了進一步鞏固。此次收購也讓CSR plc的客戶群體得到了極大的擴展,包括世界排名前七位的手機制造商中的六家,以及世界前五位的個人導航設備制造商等。
為了進一步提升競爭力,ADC積極尋求與其他企業(yè)的戰(zhàn)略合作。通過與業(yè)界領先的企業(yè)建立合作關系,ADC成功整合了各方資源,共同研發(fā)新技術、新產品。這些合作不僅加速了ADC的技術創(chuàng)新步伐,也為其帶來了更多的商業(yè)機會。
ADC始終堅持以技術創(chuàng)新為核心競爭力,不斷投入研發(fā)資源,探索新的技術領域。目前,公司正積極研發(fā)應用于物聯(lián)網、人工智能等前沿領域的探測器技術,并計劃推出更多具有創(chuàng)新性的產品。展望未來,ADC將繼續(xù)致力于技術創(chuàng)新和市場拓展,努力成為電子行業(yè)的領軍企業(yè)。
這五個故事展示了Advanced Detector Corp公司從創(chuàng)立初期到逐漸發(fā)展壯大的過程,體現(xiàn)了公司在技術創(chuàng)新、市場擴張、戰(zhàn)略合作等方面的努力和成就。同時,這些故事也揭示了ADC在電子行業(yè)中的重要地位和影響力。
隨著市場需求的不斷增長和公司業(yè)務的不斷拓展,智烽維在2021年進行了工廠的擴建。擴建后的工廠不僅提升了產能和效率,也進一步提高了產品的質量和可靠性。此外,公司還加強了與上下游企業(yè)的合作和資源整合,形成了更加完善的產業(yè)鏈和供應鏈體系。這一舉措不僅為公司的未來發(fā)展提供了強有力的支撐,也為公司在電子行業(yè)中的競爭地位奠定了堅實的基礎。
本帖最后由 paulhyde 于 2014-9-15 09:39 編輯 51單片機控制四相步進電機 作者:易勁松 QQ:371719025 Email:yijingsong@hotmail.com 接觸單片機快兩年了,不過只是非常業(yè)余的興趣,實踐卻不多,到現(xiàn)在還算是個初學者吧。這幾天給自己的任 ...… 查看全部問答∨ |
|
出售TI F28035開發(fā)板, TI 510仿真器, FRDM-KL05Z開發(fā)板,產品套件( QQ2072742652 本帖最后由 ddllxxrr 于 2016-1-7 16:21 編輯 TI 510仿真器 100元 飛思卡爾 FRDM-KL05Z開發(fā)板 50元 F28035開發(fā)板(M動力) 100元 產品散件 一塊主板 幾塊小板 可做七個數(shù)字電源和一個并網逆變器,提供電感變壓器等散件. 本站強 ...… 查看全部問答∨ |
本帖最后由 le062 于 2015-10-1 10:40 編輯 同樣在openwrt目錄下,執(zhí)行 make menuconfig復制代碼勾選bulid the openwrt sdk,退出并保存 make V=s -j2復制代碼編譯完成后,在bin/ramips下出現(xiàn)一個OpenWrt-SDK-ramips-mt7620_gcc-4.8-linaro_uClib ...… 查看全部問答∨ |
設計資源 培訓 開發(fā)板 精華推薦
- 了解PI高性能AC-DC產品,答題贏好禮
- LPC8N04測評,激發(fā)你的NFC&物聯(lián)網新創(chuàng)意!
- 泰克MDO系列:1招搞定6大儀器,輕松穿越模擬、數(shù)字、頻域測量
- TI 最新CapTIvate™ 觸控微控制器技術直播開始報名嘍!報名參與有禮呦!
- 下載有禮:數(shù)據(jù)中心養(yǎng)生秘籍《福祿克數(shù)據(jù)中心解決方案》等你帶回家!
- 閱讀并了解 TE Connectivity 無創(chuàng)想,不奇跡 精彩專題,答題有禮!
- Follow me第二季第1期來啦!與得捷一起解鎖【Adafruit Circuit Playground Express】超能力!
- 1月22日下午14:00Mouser攜手Maxim邀您觀看有獎直播:深入淺出可穿戴健康監(jiān)測
- 貿澤翻牌挑戰(zhàn)賽—一鍵配齊的樂趣,它不香嗎?快來參與貿澤翻牌挑戰(zhàn)賽!