畢業(yè)設計(論文)基于AT89S51單片機的國旗自動升降系統(tǒng)設計_第1頁
畢業(yè)設計(論文)基于AT89S51單片機的國旗自動升降系統(tǒng)設計_第2頁
畢業(yè)設計(論文)基于AT89S51單片機的國旗自動升降系統(tǒng)設計_第3頁
畢業(yè)設計(論文)基于AT89S51單片機的國旗自動升降系統(tǒng)設計_第4頁
畢業(yè)設計(論文)基于AT89S51單片機的國旗自動升降系統(tǒng)設計_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、07屆 分類號:tn6 單位代碼:10452 畢業(yè)設計國旗自動升降系統(tǒng)設計姓 名 學 年 級 2003 專 業(yè) 電氣工程及其自動化 系(院) 物理系 指導教師 2007年03月14日目錄摘要英文摘要1. 緒論11.1 升降系統(tǒng)的現(xiàn)狀1.2 課題的提出及意義2.系統(tǒng)的總體設計 2.1單片機的簡介.22.2步進電機的簡介. 2.3步進電機的單片機控制.3.系統(tǒng)硬件選擇與設計3.1系統(tǒng)的電源選擇. 3.2 單片機的型號選擇. 3.3 步進電機的選擇 . 3.4 系統(tǒng)硬件的總體設計 4.系統(tǒng)的軟件設計.4.1設計系統(tǒng)數(shù)據(jù)庫與數(shù)據(jù)表.4.2國旗升降系統(tǒng)的.4.2.系統(tǒng)運行主程序.5.總結 .謝辭.參考文

2、獻附錄摘要現(xiàn)代升降系統(tǒng)總的發(fā)展趨勢是提高自動化,提高柔韌靈活性,技術含量和先進的程度不斷提高。將單片機用于升降系統(tǒng)中,使控制技術和單片機技術相結合,從而可實現(xiàn)機電一體化控制,提高升降系統(tǒng)的自動化程度及運行可靠性和穩(wěn)定性。 本設計是由單片機(at89s51)、步進電機、av6532e-067語音芯片、按鍵等基本的部分組成的控制國旗升降的系統(tǒng)。采用由單片機控制的步進電機帶動國旗升降,實現(xiàn)對國旗升降的自動控制。本系統(tǒng)可以實現(xiàn)以下功能:1.可以通過手動按鍵來實現(xiàn)控制國旗的勻速升降。2.可以按照要求上升或下降國旗,并可在任意位置停止。3.國旗在上升過程中能準確與國歌樂曲同步。4.能實現(xiàn)半旗的升降功能。5

3、.可以通過改變步進電機的轉(zhuǎn)動速度來改變國旗上升或下降的速度。本系統(tǒng)只是一個簡單的國旗升降系統(tǒng),它不是一個先進的系統(tǒng),現(xiàn)在升降國旗已經(jīng)實現(xiàn)完全自動化了,可以用微機來實現(xiàn)聲光控一體化升降國旗了。關鍵詞 :單片機; 步進電機 ; 升降系統(tǒng)abstractthe development current of the model raising and downing system is to improve automatization,productivity,and flexibility.tts technique and predominance degree is heightening g

4、radually.using scm in raising and downing system ,tying automotive technique in with scm technique,thereby can realize meachanics and electronics are controlled together.the raising and downing systemsautomatic degree operational realiability and stability will improve distinctlythe national movemen

5、t control system is made up of scm(at89s51)、stepper moter、av6532e-067voice chip、keyboards and other basic comments.with the stepper which is controlled by scm,to driver the flag rising and lowing, thus to a chieve the flag automatic controlling. 1.it can be manually operated.that is,though the butto

6、ns to control movements can be achieved.2.in accordance with the requirements of the user to the designated location and increase or decrease in any position to stop.3.the flag raises while the voice is running.4.achive the half-mast to functional movments.5.by changing the rotational speeds of the

7、stepper motor,the flag raising or downing speeds can be changed key word : mcu; stepper motor; raising and downing system1緒論1.1升降系統(tǒng)的現(xiàn)狀本世紀50至70年代,電子技術和現(xiàn)代控制技術的迅速發(fā)展,對國旗的升降系統(tǒng)產(chǎn)生了很大的影響,出現(xiàn)了一系列以采用電機為升降動力的新型的升降系統(tǒng)。如機電密切結合的自動升降系統(tǒng),高度和速度調(diào)整方便的多功能的智能化系統(tǒng)的大量出現(xiàn),使國旗升降系統(tǒng)成為一個獨立的領域出現(xiàn)在現(xiàn)代控制工業(yè)中。一個完整的機電一體化系統(tǒng),將機械、微機、微電子、傳感器等多

8、種學科的先進技術融為一體,給升降系統(tǒng)在設計、制造和控制方面都帶來了深刻的變化,從根本上改變了升降系統(tǒng)的面貌。我國的升降系統(tǒng)要想在競爭中謀求發(fā)展,應努力提高升降系統(tǒng)的總體技術水平,發(fā)展機電一體化技術、自動控制技術,提高產(chǎn)品的可靠性和穩(wěn)定性,促進升降工業(yè)向現(xiàn)代化發(fā)展。1.2 課題的提出及意義現(xiàn)代生活對自動化的要求越來越重要,而單片機的應用滿足人們的日常生活需求。而單片機的主要應用是實現(xiàn)計算機控制和嵌入式應用領域。由于計算機處于系統(tǒng)當中,單片機體積小,質(zhì)量輕,功耗低和可靠性高等要求,給系統(tǒng)設計降低成本。單片機控制的升降系統(tǒng)實現(xiàn)了對國旗升降的自動化,擺脫了傳統(tǒng)由人來手動升降旗幟的不便,使功能更加完善,

9、更加智能化和易于使用,是現(xiàn)代學校,公司等必不可少的設備。系統(tǒng)的總體設計為了對使讀者對本系統(tǒng)有比較深的了解,有必要對本系統(tǒng)的硬件部分作一個簡單的介紹。由于單片機和步進電機是本系統(tǒng)的核心部分,這里把單片機和步進電機作一些必要的說明。2.1單片機的簡介單片機又稱單片微控制器,就是把中央處理器cpu、隨機存取器ram、只讀存儲器rom、定時器/計數(shù)器以及i/o接口電路等主要計算機部件,集成在一塊集成電路芯片上的微型計算機。單片機具有體積小、速度快、功耗低、性能可靠、使用方便、價格、低廉等特點,為應用和開發(fā)提供了便利的條件,因而在工業(yè)生產(chǎn)、科技教育以及日常生活等諸多領域,得到了日益廣泛的應用??梢哉f,二

10、十世紀跨越了三個“電”的時代,即電氣時代、電子時代和現(xiàn)已進入的電腦時代。不過,這種電腦,通常是指個人計算機,簡稱pc機。它由主機、鍵盤、顯示器等組成。還有一類計算機,大多數(shù)人卻不怎么熟悉。這種計算機就是智能單片機(亦稱微控制器)。顧名思義,這種計算機的最小系統(tǒng)只用了一片集成電路,即可進行運算和控制。因為它體積小,通常都藏在被控機械的“肚子”里。它在整個裝置中,起著有如人類頭腦的作用?,F(xiàn)在,這種單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統(tǒng)、家用電器,電子萬年歷,到計時器,定時器,計數(shù)器,頻率計,電子秤,電子血壓表等。各種產(chǎn)品一旦用上了單片機,就能起到使產(chǎn)品升級換代的功效,

11、常在產(chǎn)品名稱前冠以形容詞“智能型”,“電腦型”,如智能型洗衣機,電腦溫控冰箱等?,F(xiàn)在有些工廠的技術人員或其它業(yè)余電子開發(fā)者搞出來的某些產(chǎn)品,不是電路太復雜,就是功能太簡單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機或其它可編程邏輯器件上。單片機是靠程序的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨特的一些功能,這是別的器件需要費很大力氣才能做到的,有些則是花大力氣 也很難做到的。一個不是很復雜的功能要是用美國50年代開發(fā)的74系列,或者60年代的cd4000系列這些純硬件來搞定的話,電路一定是一塊大pcb 板!但是如果要是用美國70年代成功投放市場的系列單片機,結果就會有

12、天壤之別!只因為單片機的通過你編寫的程序可以實現(xiàn)高智能,高效率,以及高可靠性!本設計選擇at89s51單片機(選擇理由見下章)。at89s51是一種帶4k字節(jié)閃爍可編程可擦除只讀存儲器(fperomfalsh programmable and erasable read only memory)的低電壓,高性能cmos8位微處理器,俗稱單片機。該器件采用atmel高密度非易失存儲器制造技術制造,與工業(yè)標準的mcs-51指令集和輸出管腳相兼容。由于將多功能8位cpu和閃爍存儲器組合在單個芯片中,atmel的at89s51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。圖2

13、.1 單片機at89s51引腳2.1.1主要特性: 8031 cpu與mcs-51 兼容 4k字節(jié)可編程flash存儲器(壽命:1000寫/擦循環(huán)) 全靜態(tài)工作:0hz-24khz 三級程序存儲器保密鎖定 128*8位內(nèi)部ram 32條可編程i/o線 兩個16位定時器/計數(shù)器 6個中斷源 可編程串行通道 低功耗的閑置和掉電模式 片內(nèi)振蕩器和時鐘電路2.1.2管腳說明: vcc:供電電壓。 gnd:接地。 p0口:p0口為一個8位漏級開路雙向i/o口,每腳可吸收8ttl門電流。當p1口的管腳第一次寫1時,被定義為高阻輸入。p0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在fia

14、sh編程時,p0 口作為原碼輸入口,當fiash進行校驗時,p0輸出原碼,此時p0外部必須被拉高。 p1口:p1口是一個內(nèi)部提供上拉電阻的8位雙向i/o口,p1口緩沖器能接收輸出4ttl門電流。p1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,p1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在flash編程和校驗時,p1口作為第八位地址接收。 p2口:p2口為一個內(nèi)部上拉電阻的8位雙向i/o口,p2口緩沖器可接收,輸出4個ttl門電流,當p2口被寫1時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,p2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。p2口當用于

15、外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,p2口輸出地址的高八位。在給出地址1時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,p2口輸出其特殊功能寄存器的內(nèi)容。p2口在flash編程和校驗時接收高八位地址信號和控制信號。p3口:p3口管腳是8個帶內(nèi)部上拉電阻的雙向i/o口,可接收輸出4個ttl門電流。當p3口寫入1后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,p3口將輸出電流(ill)這是由于上拉的緣故。p3口也可作為at89s51的一些特殊功能口,p3口管腳 備選功能如下表所示:p3.0 rxd(串行輸入口)p3.1 txd(串行輸出口)p3

16、.2 /int0(外部中斷0)p3.3 /int1(外部中斷1)p3.4 t0(記時器0外部輸入)p3.5 t1(記時器1外部輸入)p3.6 /wr(外部數(shù)據(jù)存儲器寫選通)p3.7 /rd(外部數(shù)據(jù)存儲器讀選通)p3口同時為閃爍編程和編程校驗接收一些控制信號。 rst:復位輸入。當振蕩器復位器件時,要保持rst腳兩個機器周期的高電平時間。ale/prog:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在flash編程期間,此引腳用于輸入編程脈沖。在平時,ale端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意

17、的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ale脈沖。如想禁止ale的輸出可在sfr8eh地址上置0。此時, ale只有在執(zhí)行movx,movc指令是ale才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ale禁止,置位無效。/psen:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/psen有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/psen信號將不出現(xiàn)。 /ea/vpp:當/ea保持低電平時,則在此期間外部程序存儲器(0000h-ffffh),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/ea將內(nèi)部鎖定為reset;當/ea端保持高電平時,此間內(nèi)部程序

18、存儲器。在flash編程期間,此引腳也用于施加12v編程電源(vpp)。 xtal1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。 xtal2:來自反向振蕩器的輸出。2.1.3振蕩器特性:xtal1和xtal2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,xtal2應不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。2.1.4芯片擦除:整個perom陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ale管腳處于低電平10ms 來完成。在芯片

19、擦操作中,代碼陣列全被寫1且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。此外,at89s51設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,cpu停止工作。但ram,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存ram的內(nèi)容并且凍結振蕩器,禁止所用其他芯片功能,直到下一個硬件復位為止。2.2步進電機簡介步進電機是一種將電脈沖轉(zhuǎn)換成相應角位移或線位移的電磁機械裝置,也是一種能把輸出機械位移增量和輸入數(shù)字脈沖對應的驅(qū)動器件。步進電機具有快速起停的能力,只要電機的負荷不超過它所能提供的動態(tài)轉(zhuǎn)矩,就能通過輸入脈沖來控制它在一瞬間啟動和停止,

20、步進電機的步距角和轉(zhuǎn)速只和輸入的脈沖頻率有關,和環(huán)境溫度、氣壓、沖擊以及振動無關,也不受電網(wǎng)電壓的波動和負載的變化的影響,它每轉(zhuǎn)一周都有固定的參數(shù)。步進精確和步距誤差不會長期積累。因此,步進電機在需要精確定位的場所應用廣泛。2.2.1步進電機的工作原理由于反應式步進電機工作原理比較簡單,因此,下面先敘述三相反應式步進電機的工作原理。三相反應式步進電機定子上均勻地分布有6個磁極,相臨兩個之間的夾角為60,線圈繞過相對的兩個磁極構成一相(、)。此外各磁極上還有個均勻分布的矩形小齒。電機轉(zhuǎn)子上沒有繞組,它上面有個矩形小齒均勻分布在圓周上,相鄰的兩個小齒之間的夾角為。當某相繞組通電時,相應的兩個磁極就

21、分別形成n-s極,產(chǎn)生磁場,并與轉(zhuǎn)子形成磁路。如果這時定子的小齒與轉(zhuǎn)子的小齒沒有對齊,則在磁場的作用下,轉(zhuǎn)子將轉(zhuǎn)動一定的角度,使轉(zhuǎn)子齒與定子齒對齊,從而使步進電機向前“走”一步。2.2.2步進電機的控制根據(jù)步進電機的工作原理,若按順序給步進電機的繞組施加有序的脈沖即可控制步進電機的轉(zhuǎn)動,從而進行數(shù)字到角度的轉(zhuǎn)換。轉(zhuǎn)動的角度大小與施加的脈沖數(shù)成正比,轉(zhuǎn)動的速度與脈沖的頻率成正比,而轉(zhuǎn)動的方向則與脈沖的順序有關。對于三相反應式步進電機來說,電流脈沖的施加有三種方式:(1)單相三拍方式:按單相繞組施加電流脈沖。正轉(zhuǎn):反轉(zhuǎn):(2)雙相三拍方式:按雙相繞組施加電流脈沖。正轉(zhuǎn):反轉(zhuǎn):(3)三相六拍方式:按

22、單相繞組和雙相繞組交替施加電流脈沖。正轉(zhuǎn):反轉(zhuǎn):單相三拍方式的每一拍步進角為3,三相六拍的步進角為1.5。因此,在三相六拍方式下,步進電機的運行要平穩(wěn)柔和一些,但在同樣的運行角度與速度下,三相六拍驅(qū)動脈沖的頻率需要提高一倍,對驅(qū)動開關管的開關特性要求較高。2.2.3步進電機的驅(qū)動方式步進電機常用的驅(qū)動方式是全電壓驅(qū)動,即在電機移步與鎖步時都加載額定電壓。為了防止電機過流及改善驅(qū)動特性,需加限流電阻。由于步進電機鎖步時,限流電阻要消耗掉大量的功率,故限流電阻要有較大的功率容量,并且開關管也要有較高的負載能力。此外,為防止驅(qū)動開關管關斷時步進電機繞組產(chǎn)生的感應電勢擊穿開關管,應在電機繞組兩端并聯(lián)續(xù)

23、流二極管。如:圖2.2。圖2.2 步進電機的全電壓驅(qū)動步進電機的另一種驅(qū)動方式是高低壓驅(qū)動,即在電機移步時,加額定或超過額定值的電壓,以便在較大的電流驅(qū)動下,使電機快速移步;而在鎖步時,則加低于額定值的電壓,只讓電機繞組流過鎖步所需的電流值。這樣,既可以減少限流電阻的功率消耗,又可以提高電機的運行速度,但這種驅(qū)動方式的電路要復雜一些。如:圖2.3。圖2.3 步進電機的高低電壓驅(qū)動電機移步時,單步機除向t2、t3、t4發(fā)出相應控制信號外,還通過p1.0使t1導通。+24v驅(qū)動電壓經(jīng)過t1加到步進電機的相應繞組上,實現(xiàn)高壓移步。經(jīng)過一段時間的延遲后,單片機將關閉,這樣,鎖步電壓就經(jīng)d1加到步進電機

24、相應繞組上,實現(xiàn)低壓鎖步。驅(qū)動脈沖的分配可以使用硬件方法,即用脈沖分配器實現(xiàn)。現(xiàn)在,脈沖分配器已經(jīng)標準化、芯片化、市場上可以買到。但硬件方法結構復雜,成本也較高。步進電機控制(包括控制脈沖的產(chǎn)生和分配)也可以使用單片機實現(xiàn),這樣既簡化了電路,也降低了成本。使用單片機這一軟件方式驅(qū)動步進電機,不但 可以 通過編程方法,在一定范圍內(nèi)自由設定步進電機的轉(zhuǎn)速、往返轉(zhuǎn)動的角度以及轉(zhuǎn)動次數(shù)等,而且還可以方便靈活地控制步進電機的運行狀態(tài),以滿足不同的用戶的要求,因此常把單片機步進電機控制電路稱為可編程步進電機控制驅(qū)動器。2.3步進電機的單片機控制步進電機控制的最大特點是開環(huán)控制,不需要反饋信號。因為步進電機

25、的運動不產(chǎn)生旋轉(zhuǎn)量的誤差積累。由單片機實現(xiàn)的步進電機控制系統(tǒng)如:圖2.4單片機系統(tǒng)驅(qū)動電路步進電機負載圖2.4 單片機控制步進電機3系統(tǒng)硬件選擇與設計本系統(tǒng)是以單片機為核心并選用必要的外圍設備構成單片機對步進電機的控制系統(tǒng)。在硬件設計中進行單片機和存儲器的配置、鍵盤和定時電路的設計、步進電機驅(qū)動電路的設計和存儲器地址映像等工作,生成步進電機控制系統(tǒng)的硬件原理圖。3.1系統(tǒng)硬件的選擇3.1.1 電源的選擇3.1.2 單片機的選擇采用at89s51單片機實現(xiàn),該單片機內(nèi)部資源豐富,集成了內(nèi)部看門狗、雙數(shù)據(jù)指針、在系統(tǒng)編程(串行下載目標程序)等功能,軟硬件調(diào)試方便,給電子設計帶來很多方便,故該系統(tǒng)設

26、計選用at89s51單片機。3.1.3 電機的選擇電機的選擇可以有兩種方案:方案一:采用直流電機控制升降國旗運動,直流電機力量大,能夠獲得較大的啟動轉(zhuǎn)矩,轉(zhuǎn)動速度較快,但由于存在機械觸點,直流電機容易產(chǎn)生噪聲,而且單獨使用時不能完成位置控制,需要配以傳感器才能控制定位。方案二:采用步進電機控制升降國旗運動,步進電機不需要使用傳感器就能精確定位,而且通過給定的脈沖周期,能夠以任意速度轉(zhuǎn)動,定矩運動較精確。雖然步進電機不能實現(xiàn)高速轉(zhuǎn)動,但根據(jù)時間和移動距離的要求,步進電機完全可以滿足本設計的要求。基于上述理論上的分析,采用步進電機控制國旗升降運動。3.2系統(tǒng)硬件設計根據(jù)系統(tǒng)設計要求及上面的論證,可

27、畫出本系統(tǒng)框圖如:圖3.1 微機處理系統(tǒng)步進電機按鍵發(fā)聲電路圖3.1 系統(tǒng)框圖本設計采用的是四相六拍反應式步進電機,運用單四拍控制方式,即通電方式為a-b-c-d-a,電機步距角為15。at89s51單片機控制步進電機運轉(zhuǎn)時,不采用脈沖分配器,而是使at89s51的1口循環(huán)輸出適當?shù)拇a,經(jīng)功放后送到步進電機的四相繞組。 圖3.2 系統(tǒng)電路圖圖3.2 12v直流穩(wěn)壓電源圖3.3 5v直流穩(wěn)壓電源lm386作音頻功率放大器電路r1,c1作阻容網(wǎng)絡是為了設定電路增益而加的。當與腳開路時,電路電壓增益為20。僅用c1=10uf時,增益為200;用1.2k時與10uf串接時,增益為50圖3.4 lm3

28、86作音頻功率放大器電路3.3系統(tǒng)的軟件設計在對該國旗升降系統(tǒng)的設計過程中,根據(jù)升降系統(tǒng)要完成的任務,以模塊化的設計思想,完成系統(tǒng)的設計。at89s51是整個系統(tǒng)的主cpu,它協(xié)調(diào)整個系統(tǒng)的工作。程序設計語言有三種:機器語言、匯編語言和高級語言。機器語言是機器唯一能“懂”的語言,用匯編語言或高級語言編寫的程序(源程序)最終都必須翻譯成機器語言的程序(目標程序),計算機才能“看懂”,然后逐一執(zhí)行。但是機器語言只是一種二進制代碼,人們很難用它來進行程序設計。用匯編語言編制程序時,程序的每一個語句都與計算機的某一種具體指令相對應,用匯編語言編出的程序其質(zhì)量優(yōu)于用高級語言編出的程序。故本設計采用匯編語

29、言編程。 總結通過本次設計,我們認識:(1)單片機的應用,有助于提高設計效率和精確率,減少有人為來控制所帶來不便。(2)單片機技術能降低系統(tǒng)設計的復雜性和難度,并顯著地增強設計的靈活性。(3)單片機技術獲取的軟件模擬仿真結果具有同傳統(tǒng)硬件實驗數(shù)據(jù)一樣的重要性和可信度。隨著單片機技術的進展,單片機系統(tǒng)設計的完整方案將越來越受人們的重視,從而取代傳統(tǒng)設計方案。本設計僅僅是對步進電機的簡單控制,現(xiàn)代生活中設計對鈴聲采用音頻壓縮技術,以mp3,wav,wma等格式存儲音頻數(shù)據(jù),可以根據(jù)用戶的需要更換音樂,徹底拋棄傳統(tǒng)的語音錄音芯片的種種缺陷,并且采用智能功放電源管理,延時開關等多種性能開始系統(tǒng)初始化有

30、鍵按下嗎?保持原工作狀態(tài)清除轉(zhuǎn)動標記是否處于轉(zhuǎn)動設置狀態(tài)標記設置狀態(tài)標記國旗正常降旗國旗正常升旗改變延時參數(shù)停止電機轉(zhuǎn)動國旗半旗狀態(tài)下升旗設置狀態(tài)標記設置狀態(tài)標記國旗半旗狀態(tài)下降旗謝辭本課題在選題及研究過程中得到馮老師的悉心指導。馮老師多次詢問研究進程,并為我指點迷津,幫助我開拓研究思路,精心點撥、熱忱鼓勵。這里,我要感謝在大學四年里所有指導、幫助過我的老師、同學,謝謝在這四年里與我同行。四年里我學會的不僅僅是課本上的東西,還有做人的道理,對生活的感悟。謝謝物理系為我們提供的良好的學習、生活環(huán)境。大四的這半年里,開發(fā)國旗升降系統(tǒng)得到了各個方面的幫助,在這里,我要感謝在畢業(yè)設計期間對我嚴格要求的

31、各位老師,更感謝給我提供了指導性意見的馮老師,感謝實驗室給予設計環(huán)境的提供,感謝小組其他成員在設計項目上的幫助,以及在代碼調(diào)試期間班上同學的幫助。最后,我要向我的父母致謝,感謝他們對我的養(yǎng)育,感謝他們給了我上大學的機會,感謝他們對我的理解和支持。參考文獻1.張永楓.單片機應用實訓教程.西安:西安電子科技大學出版社,2005年2月.125-135.2.胡學海.單片機原理及應用系統(tǒng)設計.北京:電子工業(yè)出版社,2004年4月.176180.3.胡輝.單片機應用系統(tǒng)設計與訓練.北京:中國水利水電出版社,2005年6月.80145.4.陳明義.電子技術課程設計應用教程.長沙:中南大學出版社,2004年8

32、月.130143.5.何希才.穩(wěn)壓電源電路的設計與應用.北京:中國電力出版社,2006年2月.34766.何應民.單片機初級教程。北京:北京航空航天大學出版社,2000年6月。251657.戶川治明(日).實用電源電路設計.北京: 科學出版社,2006年1月.31378.張洪潤,易濤.單片機應用技術教程(第二版).北京:清華大學出版社,2003年12月.1861929.馮育長,晉思孝.單片機系統(tǒng)設計及工程應用.西安:西安電子科技大學出版社,2005年5月.18124010.張紅潤,張亞凡.單片機原理及應用.北京:清華大學出版社,2005年4月.22425111.林伸茂.8051單片機徹底研究基

33、礎篇.北京:人民郵電出版社,2004年5月.15717312.林伸茂.8051單片機徹底研究實習篇.北京:人民郵電出版社,2004年5月.8999附錄1.源程序org 0000hajmp startorg 000bhljmp 0200horg 001bhljmp 0300hzzmk1 bit 00hfzmk1 bit 01hzzmk2 bit 02hfzmk1 bit 03h ;org 0100hstart: mov sp,#70h mov ie,#00h mov dptr,#port ;8155初始化 mov a,#43h movx dptr,a mov r7,#50 clr zzmk1 c

34、lr fzmk1 clr zzmk2 clr fzmk2main: lcall ks ;調(diào)按鍵查詢子程序,判斷是否有鍵按下 jnz k1 ;有鍵按下,轉(zhuǎn)移 lcall delay1 ;無鍵按下,調(diào)延時子程序 jnb zzmk1,main1 ;第0行無鍵按下,轉(zhuǎn)查第1行 ljmp zz1 ;國旗正常升至180cm處main1: jnb fzmk1,main2 ; 第1行無鍵按下,轉(zhuǎn)查第2行 ljmp fz1 ;國旗從旗桿頂降下main2: jnb zzmk2,main3 ; 第2行無鍵按下,轉(zhuǎn)查第3行 ljmp zz2 ;半旗狀態(tài)下升國旗main3: jnb fzmk2,main4 ; 第3行無

35、鍵按下,轉(zhuǎn)查第4行 ljmp fz2 ; 半旗狀態(tài)下國旗在旗桿上降下main4: ljmp tz;*按鍵判斷子程序*k1: lcall delay1 ;鍵盤去抖延時 mov a, #0feh ;首列掃描字送r3 mov dptr,#porta ;pa口地址送dptr,開始列掃描 movx dptr,a ;列掃描字送pa口 inc dptr ; inc dptr movx a,dptr ;讀取行掃描值 mov b,a jb acc.0,l1 ;第0行無鍵按下,轉(zhuǎn)查第1行 setb zzmk1 clr fzmk1 clr zzmk2 clr fzmk2 ljmp zz1 ;國旗正常升起 l1: j

36、b acc.1,l2 ;第1行無鍵按下,轉(zhuǎn)查2行 clr zzmk1 setb fzmk1 clr zzmk2 clr fzmk2 ljmp fz1 ;國旗正常狀態(tài)下從旗桿頂降下 l2: jb acc.2,l3 ;第2行無鍵按下,轉(zhuǎn)查3行 clr zzmk1 clr fzmk1 setb zzmk2 clr fzmk2 ljmp zz2 ;國旗在半旗狀態(tài)下升旗 l3: jb acc.3,l4 ;第3行無鍵按下,轉(zhuǎn)查4行 clr zzmk1 clr fzmk1 clr zzmk2 setb fzmk2 ljmp fz2 ;國旗在半旗狀態(tài)下降旗l4: l4:jb acc.4,l5 ; ljmp j

37、sl5:jb acc.5,next ; ljmp tz next:ljmp main; *按鍵查詢子程序* ks: mov dptr,#porta ;置8155pa口地址 mov a, #00h ;全掃描字#00h送pa口 movx dptr,a inc dptr inc dptr ;指向pc口 movx a,dptr ;讀入pc口狀態(tài) cpl a ;變正邏輯,高電平表示有鍵按下 anl a,#0fh ;屏蔽高4位 ret ; 返回 a0表示有鍵按下;*國旗正常升旗子程序*zz1: mov 30h,#00h ;設初始步序號 mov r3,#6 ;因步矩角為15,4*15=60,360/60=6

38、次,即要重復6次zz1a: mov r1,#4 ;4步相序 mov r0,30h ;取初始步序號zz1b: mov a,r0 ; mov dptr,#tab ; movc a,a+dptr ;查步序碼 mov p1,a ;送p1口驅(qū)動 setb p1.4 lcall delay2 ;延時 inc r0 ;修改步序 djnz r1,zz1b ;檢查步序數(shù) djnz r3,zz1a ;檢查相序重復次數(shù) ljmp main *國旗正常降旗子程序*fz1: mov 30h,#04h ;設初始步序號 mov r3,#6 ;因步矩角為15,4*15=60,360/60=6次,即要重復6次fz1a: mov

39、 r1,#4 ;4步相序 mov r0,30h ;取初始步序號fz1b: mov a,r0 ; mov dptr,#tab ; movc a,a+dptr ;查步序碼 mov p1,a ;送p1口驅(qū)動 lcall delay2 ;延時 inc r0 ;修改步序 djnz r1,fz1b ;檢查步序數(shù)djnz r3,fz1a ;檢查相序重復次數(shù)ljmp main;*國旗半旗狀態(tài)下升旗子程序*zz2: mov 30h,#00h ;設初始步序號 mov r3,#6 ;因步矩角為15,4*15=60,360/60=6次,即要重復6次zz2a: mov r1,#4 ;4步相序 mov r0,30h ;取

40、初始步序號zz2b: mov a,r0 ; mov dptr,#tab ; movc a,a+dptr ;查步序碼 mov p1,a ;送p1口驅(qū)動 setb p1.4 lcall delay2 ;延時 inc r0 ;修改步序 djnz r1,zz2b ;檢查步序數(shù) djnz r3,zz2a ;檢查相序重復次數(shù) zfz1: mov 30h,#04h ;設初始步序號 mov r3,#6 ;因步矩角為15,4*15=60,360/60=6次,即要重復6次zfz1a: mov r1,#4 ;4步相序 mov r0,30h ;取初始步序號zfz1b: mov a,r0 ; mov dptr,#tab ; movc a,a+dptr ;查步序碼 mov p1,a ;送p1口驅(qū)動 lcall delay3 ;延時 inc r0 ;修改步序 djnz r1,zfz1b ;檢查步序數(shù) djnz r3,zfz1a ;檢查相序重復次數(shù) ljmp main ; * 國旗在半旗狀態(tài)降旗子程序* fz2: mov 30h,#04h ;設初始步序號 mov r3,#6 ;因步矩角為15,4*15=60,360/60=6次,即要重復6次ffz1a: mov r1,#4 ;4步相序 mov r0,30h ;取

溫馨提示

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

評論

0/150

提交評論