紅外感應(yīng)的自動(dòng)窗簾控制器 (含程序)_第1頁
紅外感應(yīng)的自動(dòng)窗簾控制器 (含程序)_第2頁
紅外感應(yīng)的自動(dòng)窗簾控制器 (含程序)_第3頁
紅外感應(yīng)的自動(dòng)窗簾控制器 (含程序)_第4頁
紅外感應(yīng)的自動(dòng)窗簾控制器 (含程序)_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 電控學(xué)院課程設(shè)計(jì)(論文) 課程名稱: ARM嵌入式系統(tǒng) 題 目: 紅外感應(yīng)的自動(dòng)窗簾控制器 2015年 1 月 22 日 中文摘要31緒論32 ARM嵌入式系統(tǒng)概述42.1嵌入式系統(tǒng)4嵌入式計(jì)算機(jī)系統(tǒng)的出現(xiàn),是現(xiàn)代計(jì)算機(jī)發(fā)展史上的里程碑。嵌入式系統(tǒng)誕生于微型計(jì)算機(jī)時(shí)代,與通用計(jì)算機(jī)的發(fā)展道路完全不同,形成了獨(dú)立的單芯片的技術(shù)發(fā)展道路。由于嵌入式系統(tǒng)的誕生,現(xiàn)代計(jì)算機(jī)領(lǐng)域出現(xiàn)了通用計(jì)算機(jī)與嵌入式計(jì)算機(jī)兩大分支。42.2嵌入式系統(tǒng)的特點(diǎn)43.系統(tǒng)方案論述54. 系統(tǒng)模塊概述55.系統(tǒng)結(jié)構(gòu)設(shè)計(jì)圖56.總體設(shè)計(jì)思路67.硬件設(shè)計(jì)77.1 步進(jìn)電機(jī)介紹77.2 EasyARM2131開發(fā)板介紹87.2

2、.1 EasyARM2131開發(fā)板功能框圖97.3 顯示模塊97.3.1 TH12864-15液晶顯示介紹97.3.2 TH12864-15液晶顯示電路107.4 ULN2003A驅(qū)動(dòng)模塊107.4.1 ULN2003A驅(qū)動(dòng)芯片介紹107.4.2 驅(qū)動(dòng)電路118.光控模塊119整體電路原理圖1310軟件部分1310.1 程序流程圖1310.2 程序設(shè)計(jì)(見附錄)1511實(shí)物圖1512實(shí)習(xí)心得16結(jié)論21致謝22參考文獻(xiàn)22附錄22第 28 頁西安科技大學(xué)電控學(xué)院課程設(shè)計(jì)紅外感應(yīng)的自動(dòng)窗簾控制器的設(shè)計(jì)中文摘要摘要:隨著科學(xué)技術(shù)的發(fā)展和人們生活水平的提高,智能家居逐 漸走進(jìn)我們的生活。本文設(shè)計(jì)了一

3、種基于ARM的紅外感應(yīng)自動(dòng)窗簾控制器,系統(tǒng)包括手動(dòng)和自動(dòng)兩種模式,在手動(dòng)模式下通過按鍵來控制步進(jìn)電機(jī)的正反轉(zhuǎn),使窗簾的打開,關(guān)閉和停止。在自動(dòng)模式下,設(shè)計(jì)光敏檢測電路,可根據(jù)光線的強(qiáng)度自動(dòng)控制窗簾的打開或關(guān)閉,從而實(shí)現(xiàn)手動(dòng)和自動(dòng)控制窗簾的目的。關(guān)鍵詞:ARM;步進(jìn)電機(jī);光敏檢測電路;自動(dòng)控制;AbstractWith the development of science and the improvement of people's living standards, smart home home furnishing gradually goes into our lives. T

4、his paper presents an infrared sensor automatic curtains which is based on ARM controller, the system includes manual and automatic modes, in manual mode,we control the stepper motor to turn around through the key so as to make curtain open, close and stop. In automatic mode, we design the photo det

5、ector circuit to automatically control the curtains open or close,which depends on the intensity of light, finally we achieve the purpose of the manual and automatic control curtains. Key words:ARM; stepper motor; photo detection circuit; control automatically1緒論 近幾年,隨著科學(xué)技術(shù)的發(fā)展,光控,溫控,及遙控等技術(shù)應(yīng)運(yùn)而生,給人們的生

6、活帶來了極大的方便。紅外感應(yīng)的自動(dòng)窗簾控制器,既能解決每天用手打開窗簾的不便,又能顯示出生活的品味,同時(shí)可以根據(jù)光線的明暗來自動(dòng)控制窗簾的開關(guān),更進(jìn)一步滿足人們的要求。該設(shè)計(jì)可廣泛應(yīng)用于別墅、公寓、賓館、飯店、學(xué)校、影劇院、會議廳等各種公共場合、具有廣闊的應(yīng)用前景。隨著紅外窗簾熱潮在世界范圍內(nèi)的興起,隨著中國電子技術(shù)的飛速發(fā)展,人們的生活水平在不斷提高,智能電子技術(shù)廣泛應(yīng)用于日常生活中,紅外遙控自動(dòng)窗簾已經(jīng)成為未來家居設(shè)計(jì)與裝飾的主要潮流和發(fā)展方向。本次基于ARM的紅外感應(yīng)自動(dòng)窗簾控制器主要有以下幾個(gè)特點(diǎn): (1)利用步進(jìn)電機(jī)正反轉(zhuǎn)實(shí)現(xiàn)控制窗簾的開關(guān)。 (2)具有無線遙控和手動(dòng)按鍵控制兩種功能

7、。 (3)液晶屏能夠指示運(yùn)行狀態(tài)。 (4)體積小、結(jié)構(gòu)簡單,工作穩(wěn)定。2 ARM嵌入式系統(tǒng)概述2.1嵌入式系統(tǒng) 嵌入式計(jì)算機(jī)系統(tǒng)的出現(xiàn),是現(xiàn)代計(jì)算機(jī)發(fā)展史上的里程碑。嵌入式系統(tǒng)誕生于微型計(jì)算機(jī)時(shí)代,與通用計(jì)算機(jī)的發(fā)展道路完全不同,形成了獨(dú)立的單芯片的技術(shù)發(fā)展道路。由于嵌入式系統(tǒng)的誕生,現(xiàn)代計(jì)算機(jī)領(lǐng)域出現(xiàn)了通用計(jì)算機(jī)與嵌入式計(jì)算機(jī)兩大分支。2.2嵌入式系統(tǒng)的特點(diǎn) (1)由于嵌入式系統(tǒng)一般是應(yīng)用于小型電子裝置,系統(tǒng)資源相對有限,所以內(nèi)核較之傳統(tǒng)的操作系統(tǒng)要小得多。 (2)嵌入式系統(tǒng)的個(gè)性化很強(qiáng),其中的軟件系統(tǒng)和硬件的結(jié)合非常緊密,一般要針對硬件進(jìn)行系統(tǒng)的移植,即使在同一品牌、同一系列的產(chǎn)品中也需要

8、根據(jù)系統(tǒng)硬件的變化和增減不斷進(jìn)行修改。 (3)嵌入式系統(tǒng)一般沒有系統(tǒng)軟件和應(yīng)用軟件的明顯區(qū)分,不要求其功能的設(shè)計(jì)及實(shí)現(xiàn)過于復(fù)雜,這樣一方面利于控制系統(tǒng)成本,同時(shí)也利于實(shí)現(xiàn)系統(tǒng)安全。 (4)高實(shí)時(shí)性的操作系統(tǒng)軟件是嵌入式軟件的基本要求。而且軟件要求固化存儲,以提高速度,軟件代碼要求高質(zhì)量和高可靠性。 (5)嵌入式軟件開發(fā)要想走向標(biāo)準(zhǔn)化,就必須使用多任務(wù)的操作系統(tǒng)。嵌入式系統(tǒng)的應(yīng)用程序可以沒有操作系統(tǒng)而直接在芯片上運(yùn)行。 (6)嵌入式系統(tǒng)開發(fā)需要專門的開發(fā)工具和環(huán)境。由于嵌入式系統(tǒng)本身不具備自主開發(fā)能力,即使設(shè)計(jì)完成以后,用戶通常也不能對其中的程序功能進(jìn)行修改,因此必須有一套開發(fā)工具和環(huán)境才能進(jìn)行

9、開發(fā),這些工具和環(huán)境一般是基于通用計(jì)算機(jī)上的軟硬件設(shè)備以及各種邏輯分析儀、混合信號示波器等。3.系統(tǒng)方案論述 方案一:采用LPC2131 ARM芯片為主控制芯片,由ULN2003A為驅(qū)動(dòng)芯片控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng);并通過MG12864點(diǎn)陣圖形液晶圖形模塊顯示步進(jìn)電機(jī)轉(zhuǎn)動(dòng)模式(包括正轉(zhuǎn)、反轉(zhuǎn)和停止等)。  方案二:用三極管組成的H橋驅(qū)動(dòng)直流電機(jī),優(yōu)點(diǎn)有電路簡單,價(jià)格低廉等,重量也輕許多,適合驅(qū)動(dòng)小車。  系統(tǒng)最終選擇方案一,因?yàn)長PC2131外接簡單,價(jià)格低廉,能夠最大化的的減少工作量。4. 系統(tǒng)模塊概述 本小組設(shè)計(jì)將系統(tǒng)分為五大模塊: 光線檢測模塊 手動(dòng)控制的按鍵電路

10、LPC2131開發(fā)板 電機(jī)驅(qū)動(dòng)模塊 狀態(tài)指示模塊5.系統(tǒng)結(jié)構(gòu)設(shè)計(jì)圖按鍵(實(shí)現(xiàn)遙控手動(dòng)控制)光線傳感器(實(shí)現(xiàn)自動(dòng)控制)LPC2131按鍵+遙控的Rudy額光控+=+光電開關(guān)(防過卷)液晶狀態(tài)顯示窗簾狀態(tài)LED指示步進(jìn)電機(jī)6.總體設(shè)計(jì)思路 自動(dòng)窗簾控制系統(tǒng)總體方案設(shè)計(jì)是基于滿足設(shè)計(jì)要求的前提并且根據(jù)理論上的可實(shí)現(xiàn)性和硬件上的經(jīng)濟(jì)實(shí)用性,而進(jìn)行設(shè)計(jì)的重要環(huán)節(jié)。本章從人們對系統(tǒng)功能需求出發(fā),在綜合考慮各種因素的情況下,設(shè)計(jì)出自動(dòng)控制系統(tǒng)的總體構(gòu)架,并且在基本功能需求的基礎(chǔ)上盡可能考慮系統(tǒng)的可擴(kuò)展性。 本次設(shè)計(jì)采用LPC213芯片為主控制芯片,由ULN2003A為驅(qū)動(dòng)芯片控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng);并通過MG12

11、864點(diǎn)陣圖形液晶圖形模塊顯示窗簾運(yùn)行狀態(tài)。 本次設(shè)計(jì)硬件部分有LPC2131最小系統(tǒng)、ULN2003A驅(qū)動(dòng)電路、按鍵模塊、五線四相步進(jìn)電機(jī)、TH12864-15,光線檢測模塊及部分相互協(xié)調(diào)的工作實(shí)現(xiàn)控制功能。7.硬件設(shè)計(jì)7.1 步進(jìn)電機(jī)介紹 步進(jìn)電機(jī)是機(jī)電控制中一種常用的執(zhí)行機(jī)構(gòu),其原理是通過對它每相線圈中的電流和順序切換來使電機(jī)作步進(jìn)式旋轉(zhuǎn)。驅(qū)動(dòng)電路由脈沖信號來控制,所以調(diào)節(jié)脈沖信號的頻率便可改變步進(jìn)電機(jī)的轉(zhuǎn)速。通俗地說:當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號,它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(及步進(jìn)角)。通過控制脈沖個(gè)數(shù)即可以控制角位移量,從而達(dá)到準(zhǔn)確定位的目的。同時(shí)通過控制脈沖頻

12、率來控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的,現(xiàn)在比較常用的步進(jìn)電機(jī)包括反應(yīng)式步進(jìn)電機(jī)(VR)、永磁式步進(jìn)電機(jī)(PM),混合式步進(jìn)電機(jī)(HB)和單相式步進(jìn)電機(jī)等。 步進(jìn)電機(jī)不能直接接到工頻交流或直流電源上工作,而必須使用專用的步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)器,它由脈沖發(fā)生控制單元、功率驅(qū)動(dòng)單元、保護(hù)單元等組成。驅(qū)動(dòng)單元與步進(jìn)電動(dòng)機(jī)直接耦合,也可理解成步進(jìn)電動(dòng)機(jī)微機(jī)控制器的功率接口。 本次設(shè)計(jì)選擇5V直流步進(jìn)電機(jī)28BYJ-48為我們窗簾模型提供動(dòng)力,使用高耐壓、大電流復(fù)合晶體管ULN2003作為步進(jìn)電機(jī)的驅(qū)動(dòng)芯片。步進(jìn)電機(jī)28BYJ48型四相八拍電機(jī),電壓為DC5V。當(dāng)對步進(jìn)電機(jī)施加一系列連續(xù)不斷的控制

13、脈沖時(shí),它可以連續(xù)不斷地轉(zhuǎn)動(dòng)。每一個(gè)脈沖信號對應(yīng)步進(jìn)電機(jī)的某一相或兩相繞組的通電狀態(tài)改變一次,也就對應(yīng)轉(zhuǎn)子轉(zhuǎn)過一定的角度(一個(gè)步距角)。 當(dāng)通電狀態(tài)的改變完成一個(gè)循環(huán)時(shí),轉(zhuǎn)子轉(zhuǎn)過一個(gè)齒距。四相步進(jìn)電機(jī)可以在不同的通電方式下運(yùn)行,常見的通電方式有單(單相繞組通電)四拍(A-B-C-D-A.),雙(雙相繞組通電)四拍(AB-BC-CD-DA-AB-.),八拍(A-AB-B-BC-C-CD-D-DA-A.)7.2 EasyARM2131開發(fā)板介紹 EasyARM2131開發(fā)板是廣州周立功公司設(shè)計(jì)的EasyARM系列開發(fā)套件之一,采用了PHILIPS公司基于ARM7TDMI內(nèi)核、單電源供電、LQFP6

14、4封裝的LPC2131,具有JTAG仿真調(diào)試、ISP編程等功能。  開發(fā)板上提供了一些鍵盤、LED、蜂鳴器等常用功能部件,還具有RS232接口電路、I2C存儲器電路。另外,用戶也可以更換兼容的CPU進(jìn)行仿真調(diào)試,如LPC2132、LPC2138、LPC2142等。靈活的跳線組合(開發(fā)板內(nèi)使用的所有I/O均可斷開連接),還有用戶I/O接口,極大地方便了用戶進(jìn)行32位ARM嵌入式系統(tǒng)的開發(fā)實(shí)驗(yàn)。7.2.1 EasyARM2131開發(fā)板功能框圖7.3 顯示模塊7.3.1 TH12864-15液晶顯示介紹 TH12864-15是128(列)×64(行)點(diǎn)陣的液晶顯示模塊。當(dāng)15腳為

15、低且16腳為高時(shí)選中TH12864-15的左區(qū)(左邊的64×64),當(dāng)15腳為高且16腳為低時(shí)選中MG12864的右區(qū)(右邊的64×64)。19腳和20腳是為了在光線暗的環(huán)境下看到液晶顯示器的顯示內(nèi)容而加的背光,即在液晶顯示器的背面加一光源??刂凭€RW、CSI、CS2、RS必須在使能線E為低的時(shí)候改變。當(dāng)使能線E為高時(shí)控制線RW、CSI、CS2、RS不能改變;使能線E為高時(shí)TH12864-15從數(shù)據(jù)線DB0DB7輸出數(shù)據(jù)。 下表為TH12864-15的管腳說明引腳號 符號 功能引腳號 符號 功能1GND 模塊的電源地714 DB0DB7 并行數(shù)據(jù)072VDD 模塊的電源正端

16、15PSB 并/串行接口選擇3 V0 LCD驅(qū)動(dòng)電壓輸入端16NC空腳4 RS 并行的指令/數(shù)據(jù)選擇信號;串行的片選信號17RET復(fù)位,低電平有效18 NC 空腳5 R/W 并行的讀/寫選擇信號;串行的數(shù)據(jù)口19 BLA 背光源正極(LED+5V)6 E 并行的使能信號;串行的同步時(shí)鐘19BLK 背光源負(fù)極(LED-0V)7.3.2 TH12864-15液晶顯示電路 圖.12864液晶顯示模塊7.4 ULN2003A驅(qū)動(dòng)模塊7.4.1 ULN2003A驅(qū)動(dòng)芯片介紹 ULN是集成達(dá)林管IC,內(nèi)部還集成了一個(gè)消線圈反電動(dòng)勢的二極管,可用來驅(qū)動(dòng)繼電器。它是雙列16腳封裝,NPN晶體管矩陣,最大驅(qū)動(dòng)電

17、壓為50V,電流為500MA,輸入電壓為,適用于TTL COMS,由達(dá)林頓管組成驅(qū)動(dòng)電路。下圖為ULN2003A的管腳功能圖。圖ULN2003A管腳圖 ULN2003 高壓大電流達(dá)林頓晶體管陣列芯片,吸收電流可達(dá)500mA,輸出耐壓50V,具有很強(qiáng)的驅(qū)動(dòng)能力。內(nèi)部具有7組達(dá)林頓管電路,可以驅(qū)動(dòng)7路負(fù)載。IN 為輸入端可由單片機(jī)引腳直接控制,當(dāng)輸入端為高電平時(shí),輸出端OUT輸出低電平。7.4.2 驅(qū)動(dòng)電路8.光控模塊 光敏電阻的工作原理是基于內(nèi)光電效應(yīng)。在半導(dǎo)體光敏材料兩端裝上電極引線,將其封裝在帶有透明窗的管殼里就構(gòu)成光敏電阻,為了增加靈敏度,兩電極常做成梳狀。用于制造光敏電阻的材料

18、主要是金屬的硫化物、硒化物和碲化物等半導(dǎo)體。在光控模塊下,當(dāng)環(huán)境光線亮度達(dá)到設(shè)定閾值時(shí),輸出端輸出低電平(光線較暗)步進(jìn)電機(jī)正轉(zhuǎn);當(dāng)外界光線亮度超過設(shè)定閾值時(shí),輸出高電平(光線較亮)步進(jìn)電機(jī)反轉(zhuǎn),從而實(shí)現(xiàn)窗簾的打開和關(guān)閉,光敏電阻檢測電路如下:9整體電路原理圖10軟件部分10.1 程序流程圖10.2 程序設(shè)計(jì)(見附錄)11實(shí)物圖參考文獻(xiàn) 1卡莫爾.嵌入式系統(tǒng):體系結(jié)構(gòu)、編程設(shè)計(jì) M北京.清華大學(xué)出版社  2孫秋野等ARM嵌入式開發(fā)典型模塊M北京.人民郵電出版社 3田澤等嵌入式系統(tǒng)開發(fā)與應(yīng)用教程M北京航空航天大學(xué)出版社 4李伯成等嵌入式系統(tǒng)可靠性設(shè)計(jì)M北京電子工業(yè)出版社 5馬忠梅ARM

19、嵌入式處理器與應(yīng)用基礎(chǔ)M北京一航空航天出版 6張綺文等ARM嵌入式常用模塊與綜合系統(tǒng)設(shè)計(jì)M電子工業(yè)出版社附錄程序清單如下: /* 文 件 名:main.c* 功 能:LED顯示控制。* 通過GPIO控制步進(jìn)電機(jī)* 說 明:將跳線JP14和JP19全部短接。 */#include "config.h"#define MOTOA 1<<10 / P0.10 #define MOTOB 1<<11/ P0.11 #define MOTOC 1<<12/ P0.12 #define MOTOD 1<<13/ P0.13 #d

20、efine key1 1<<16 / A-B-C-D#define key4 1<<17 /反轉(zhuǎn)#define key5 1<<18 #define KEYCON 0x001f0000 / LED控制字#define MOTOCON 0x00003c00 / MOTO控制字#define GPIOSET(PIN) IO0SET = PIN / 方便修改置位端口#define GPIOCLR(PIN)IO0CLR = PIN / 方便修改清位端口#define RS 1<<9 /P0.9#define SID 1<<7 /P0.6#de

21、fine E 1<<5 /P0.4unsigned char IC_DAT164="正在打開窗簾" unsigned char IC_DAT264="窗簾已經(jīng)打開"unsigned char IC_DAT364="正在關(guān)閉窗簾"unsigned char IC_DAT464="窗簾已經(jīng)關(guān)閉"int i;int k=0;int g=0;void TransferCom(unsigned char data0);void TransferData(unsigned char data1);void dela

22、y(unsigned int m);void delay_10ms(uint32 n);void lcd_mesg(unsigned char *adder1);void LCD12864_init(void);void initinal(void);void DelayNS(uint32 dly);void MOTO_Mode1(uint8 i); / A-B-C-Dvoid MOTO_Mode10(uint8 i);void ADCINIT(void);uint32 ADC(void);void ADCINIT(void)PINSEL1 = 1 << 28;/ P0.30連接到

23、AD0.3/* 進(jìn)行ADC模塊設(shè)置 */AD0CR = (1 << 3)|/ SEL=8,選擇通道3(Fpclk / 1000000 - 1) << 8)|/ CLKDIV=Fpclk/1000000-1,轉(zhuǎn)換時(shí)鐘為1MHz(0 << 16)|/ BURST=0,軟件控制轉(zhuǎn)換操作(0 << 17)|/ CLKS=0, 使用11clock轉(zhuǎn)換(1 << 21)| / PDN=1,正常工作模式(0 << 22)| / TEST1:0=00,正常工作模式(1 << 24)|/ START=1,直接啟動(dòng)ADC轉(zhuǎn)換(0

24、<< 27); / 直接啟動(dòng)ADC轉(zhuǎn)換時(shí),此位無效uint32 ADC(void)uint32 ADC_Data;DelayNS(10);ADC_Data = AD0DR;/ 讀取ADC結(jié)果,并清除DONE標(biāo)志位AD0CR |= 1 << 24;/ 進(jìn)行第一次轉(zhuǎn)換while (ADDR & 0x80000000) = 0);/ 等待轉(zhuǎn)換結(jié)束AD0CR |= 1 << 24;/ 再次啟動(dòng)轉(zhuǎn)換while (AD0DR & 0x80000000) = 0);/ 等待轉(zhuǎn)換結(jié)束ADC_Data = AD0DR;/ 讀取ADC結(jié)果ADC_Data = (

25、ADC_Data >> 6) & 0x3ff;ADC_Data = ADC_Data * 3.3;/ 參考電壓經(jīng)過3/4分壓ADC_Data = ADC_Data / 1024;return ADC_Data;/* 名 稱:main()* 功 能:根據(jù)表DISP_TAB來控制LED顯示。*/int main(void) uint32 adc; /* PINSEL2使用啟動(dòng)代碼的默認(rèn)配置,切勿任意配置PINSEL2,否則總線會受到干擾 */ PINSEL0=0x00000000; PINSEL1=0X00000000; PINSEL2&=(0x00000006); /

26、設(shè)置所有I/O口為普通GPIO口 IO0DIR =MOTOCON; / 配置LED控制I/O方向 LCD12864_init(); ADCINIT();while(1) adc=ADC(); if(IO0PIN&key5)=0) g=0; if (IO0PIN&key1)=0&&k=0) g=1; MOTO_Mode1(10); if(IO0PIN&key4)=0&&k=1) g=1; MOTO_Mode10(10); / A-B-C-D if(adc<1&&k=0&&(IO0PIN&key4

27、)!=0&&g=0)MOTO_Mode1(10); adc=ADC();if(adc>1&&k=1&&(IO0PIN&key1)!=0&&g=0) MOTO_Mode10(10); return(0);/* 名 稱:DelayNS()* 功 能:長軟件延時(shí)* 入口參數(shù):dly延時(shí)參數(shù),值越大,延時(shí)越久* 出口參數(shù):無*/void DelayNS(uint32 dly) uint32 i; for(; dly>0; dly-) for(i=0; i<5000; i+); /* 名 稱:MOTO_Mode1(

28、)* 功 能:單四拍程序* 入口參數(shù):uint8 i延時(shí)參數(shù),值越大,延時(shí)越久* 出口參數(shù):無*/void MOTO_Mode1(uint8 j) / A-B-C-Dinitinal(); for(i=0;i<1000;i+) lcd_mesg(IC_DAT1); /顯示漢字界面1 /* DA */ GPIOSET(MOTOB); GPIOSET(MOTOA); DelayNS(j); GPIOCLR(MOTOB); GPIOCLR(MOTOA); /* CD */ GPIOSET(MOTOC); GPIOSET(MOTOB); DelayNS(j); GPIOCLR(MOTOC); G

29、PIOCLR(MOTOB); /* BC */ GPIOSET(MOTOD); GPIOSET(MOTOC); DelayNS(j); GPIOCLR(MOTOD); GPIOCLR(MOTOC); /* AB */ GPIOSET(MOTOA); GPIOSET(MOTOD); DelayNS(j); GPIOCLR(MOTOA); GPIOCLR(MOTOD); initinal(); lcd_mesg(IC_DAT2); k=1; void MOTO_Mode10(uint8 j) / A-B-C-D initinal(); for(i=0;i<1000;i+) lcd_mesg(

30、IC_DAT3); /* AB */ GPIOSET(MOTOA); GPIOSET(MOTOD); DelayNS(j); GPIOCLR(MOTOA); GPIOCLR(MOTOD); /* BC */ GPIOSET(MOTOD); GPIOSET(MOTOC); DelayNS(j); GPIOCLR(MOTOD); GPIOCLR(MOTOC); /* CD */ GPIOSET(MOTOC); GPIOSET(MOTOB); DelayNS(j); GPIOCLR(MOTOC); GPIOCLR(MOTOB); /* DA */ GPIOSET(MOTOB); GPIOSET(MO

31、TOA); DelayNS(j); GPIOCLR(MOTOB); GPIOCLR(MOTOA); initinal();lcd_mesg(IC_DAT4);k=0;/* 名稱:delay()* 功能:延時(shí)程序*/void delay(unsigned int m) unsigned int i,j; for(i=0;i<m;i+) for(j=0;j<50;j+);/* 名稱:delay_10ms()* 功能:延時(shí)程序*/void delay_10ms(uint32 n) uint32 i,j; for(i=0;i<n;i+) for(j=0;j<2000;j+);/* 名稱:initinal()* 功能:LCD12864字庫初始化*/void initinal(void) delay(10); TransferCom(0x30); /8bit設(shè)置。RE=0.G=0,圖片顯示關(guān) delay(100); TransferCom(0x0C); /D=1,顯示開 delay(100); TransferCom(0x01); /清屏 delay_10ms(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論