




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、鄭州科技學院單片機原理及應用課程設計1 課程設計的目的12 課程設計的任務與要求22.1 設計目的22.2 設計要求23 設計方案與論證33.1 LED燈的選擇33.2 外部中斷信號產生方式33.3 抗重影方案的選擇33.4 單元電路設計53.5 主程序流程圖64 硬件電路設計84.1 基本原理圖84.2 各部分功能94.3 系統(tǒng)硬件104.4 傳感器系統(tǒng)105 系統(tǒng)軟件設計115.1 軟件設計思路115.2 主程序流程125.3 軟件實現(xiàn)功能的完善136 試驗與仿真136.1 硬件調試方法136.2 軟件調試方法147 結論16參考文獻18附錄1:總體電路原理圖19附錄2:源程序201 課程
2、設計的目的單片機是隨著大規(guī)模集成電路的出現(xiàn)極其發(fā)展,將計算機的CPU,RAM,ROM,定時/計數(shù)器和多種I/O接口集成在一片芯片上,形成了芯片級的計算機,因此單片機早期的含義稱為單片微型計算機.它擁有優(yōu)異的性價比、集成度高、體積小、可靠性高、控制功能強、低電壓、低功耗的顯著優(yōu)點.主要應用于智能儀器儀表、工業(yè)檢測控制、機電一體化等方面,并且取得了顯著的成果.單片機應用系統(tǒng)可以分為:(1)最小應用系統(tǒng)是指能維持單片機運行的最簡單配置的系統(tǒng)。這種系統(tǒng)成本低廉,結構簡單,常構成一些簡單的控制系統(tǒng),如開關狀態(tài)的輸入/輸出控制等。片內有ROM/EPROM的單片機,其最小應用系統(tǒng)即為配有晶振,復位電路,電源
3、的單個單片機。片內無ROM/EPROM的單片機,其最小應用系統(tǒng)除了外部配置晶振,復位電路,電源外,還應外接EPROM或EEPROM作為程序存儲器用。(2)最小功耗應用系統(tǒng)是指為了保證正常運行,系統(tǒng)的功耗最小。(3)典型應用系統(tǒng)是指單片機要完成工業(yè)測控功能所必須的硬件結構系統(tǒng)。本文將使用單片機對搖動顯示進行實例化,設計一個LED搖動顯示器來顯示文字、圖像等信息。掌握利用8051型單片機對發(fā)光二極管陣列進行搖動控制的方法。輸出信號頻率的控制通過單片機來實現(xiàn),用搖動傳感器檢測當前搖動狀態(tài),用16個發(fā)光二極管進行不同頻率的亮滅刷新,通過手動搖動可顯示輸出文字及圖案等信息。當進行搖動時,由于人的視覺暫留
4、原理,會在發(fā)光二極管搖動區(qū)域產生一個視覺平面,在視覺平面內的二極管通過不同頻率的刷新,會在搖動區(qū)域內產生圖像,從而達到在該視覺平面上傳達信息的作用。LED顯示棒,又稱搖搖棒,是一種利用視覺暫留效應制作的“高科技”玩具??梢杂谩办o如處子,動如脫兔”來形容它,即當靜止時,它只是幾個LED發(fā)光二極管(后簡稱LED),而一旦按照一定的頻率去搖晃它,它就會隨著位置的變化而變化(亮或滅),最終顯示一幅圖片或字符串。隨著人們物質生活水平的提高,人們對精神生活的追求也愈加強烈,對信息的渴求已成為了人們必不可少的需要,更加簡捷與新穎的信息傳遞方式無疑會給人們帶來耳目一新的感受。而現(xiàn)代工具務求簡捷化、便攜化,因此
5、,搖動顯示裝置的到來,必將會給人們帶來一種新的方便的文化傳遞方式。讓你的心聲閃爍在夜空LED搖搖棒橫空出世!LED搖搖棒又叫搖搖棒、魔棒、閃光棒、閃字棒、閃圖棒、星光棒。LED搖搖棒的誕生是閃光系列產品中的一大革命,它最大的神奇之處,是在手中左右搖晃LED搖搖棒,就會在棒子劃過的軌跡上留下清析的文字或圖案。目前市場上,這是最新,價格最低,可遠距離觀看的一款電子產品。設計具有市場前景,可滿足各種大型演出、集會、游行等宣傳需要,為人們的生活提供便利。2 課程設計的任務與要求2.1 設計目的本次設計制作的是一個顯示棒,基本要求就是要小巧、輕便,所以要將單片機的系統(tǒng)板簡化設計。通過本次設計,加強學生對
6、MCS-51單片機的深刻理解,提高學生的設計能力和動手能力。2.2 設計要求設計一個16只高亮度LED發(fā)光二極管構成的搖搖棒,通過單片機編程配合手的左右搖晃就可呈現(xiàn)一幅完整的畫面,可以顯示字符、圖片。3 設計方案與論證3.1 LED燈的選擇方案一:傳統(tǒng)LED發(fā)光二極管。顏色多樣,在可以同樣顯示圖案的前提下使用它更為經濟,但是顏色較為黯淡,不鮮亮。方案二:高亮LED發(fā)光二極管。正如其名,它的亮度比傳統(tǒng)二極管要亮,而且同樣也有很多顏色,但是高亮LED的工作電流也要大于傳統(tǒng)二極管。為了使顯示的圖案清晰、明了,我們選擇方案二,經過比較,使用紅色的LED使得顯示畫面更為明顯、突出,使用兩片CR2032紐
7、扣電池為其供電,提供足夠的電流。3.2 外部中斷信號產生方式通過外部中斷可以控制數(shù)據(jù)開始傳輸?shù)臅r刻。選擇好外部中斷來源是本次制作的難點及重點。方案一:使用水銀開關。通過搖晃使得水銀開關與焊接的左右兩個觸點接觸,利用這種接觸產生的電平變化來觸發(fā)中斷,結合軟件控制顯示,制作簡單,使用方便。方案二:使用光遮斷器。在棒上裝一個可以擺動的用來遮擋光遮斷器光線的細桿,細桿每左右擺動一次這個桿就會通過一次光遮斷器,發(fā)生電平變化。同樣通過這種電平變化,結合軟件控制顯示。本次設計中產生的中斷是為了實現(xiàn)數(shù)據(jù)的單程傳輸。如果使用光遮斷器,其觸發(fā)單片機的時刻處于正中間,不能解決畫面因為返回與原來圖片重疊的現(xiàn)象。而使用
8、水銀開關,因為在左右都有觸點,所以很容易的在往返途中產生兩次中斷,方便指令控制,所以選擇使用方案一。3.3 抗重影方案的選擇方案一:使用外部中斷控制數(shù)據(jù)傳輸時刻。外部中斷信號由慣性開關產生,觸發(fā)方式為下降沿觸發(fā)。水銀開關左右兩邊的觸點分別與單片機兩個外部中斷接口相連,默認為高電平,搖動的擺桿接地。水銀開關處于不同位置進入不同的中斷,從而決定何時送數(shù)據(jù)。該方案簡單易行,可以保證數(shù)據(jù)是單程傳輸?shù)?,避免了重影。慣性開關左右兩邊的觸點分別與單片機兩個外部中斷接口相連,默認為高電平,搖動的擺桿接地。慣性開關處于不同位置進入不同的中斷,從而決定何時送數(shù)據(jù)。該方案簡單易行,可以保證數(shù)據(jù)是單程傳輸?shù)?,避免了?/p>
9、影。不搖動時把慣性開關處在左邊就可以使LED棒熄滅,可以達到省電的效果。 方案二:使用定時器與外部中斷。當我們在擺動手臂的時候,短時間內擺動位置和左右幅度不會有太大變化,利用我們手臂的這個運動規(guī)律,只要能得到棒從一側擺動到另一側的時間,然后把這個時間分成N份,在每一份的時間里顯示不同的花樣就能實現(xiàn)圖形的顯示。設計中搖動的擺子與左右兩個觸點接觸各一次的時間可以通過外部中斷和定時器計算出來,然后用單片機的另一個定時器T1,其定時時間是T0 的N 分之一,每次中斷依次顯示一列,就可以得到預期顯示的圖案了。該方法可以控制搖動頻率低的時候不顯示圖形。但程序的穩(wěn)定性不高,圖形之間的間隔不易確定,只要電源開
10、關開著LED始終是點亮的。本次設計要求顯示的字符長度較短,使用方案一中的外部中斷方法只要控制好延時就可以達到完整顯示圖案的目的,而且方案一中只使用了外部中斷,它所占用的內存比方案二中既使用外部中斷又使用兩個定時器所占用的單片機資源要少,所以選擇使用方案一。具體地說,已知搖搖棒從一側擺動到另一側所需的時間是0.8秒,把0.8秒分成64份,則每一列的圖形顯示時間為0.0125秒。每一列對應兩個八位的字節(jié),16位字節(jié)對應16個LED發(fā)光二極管,然后在這每一份的時間里顯示圖形的相應一列,則可以得到完整的圖形顯示。(1) LED顯示部分由:16個高亮度的發(fā)光二極管,16個270歐姆的電阻以及水銀開關組成
11、。其中水銀開關的作用:棒在搖動時,只能在朝某一方向搖動時顯示,否則會出現(xiàn)鏡像字或鏡像畫面,所以通過接一只水銀開關來控制,使搖搖棒從左向右搖動時將內容顯示出來。圖3-1 水銀開關(2) 單片機部分由:一個11.059MHz的晶振以及兩個30pf的電容構成的晶振電路、一個23uF的電容,10K的電阻以及復位開關構成的復位電路、芯片AT89s52構成。3.4 單元電路設計 圖3-2 復位電路 圖3-3 時鐘電路單片機在啟動時都需要復位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。89系列單片機的復位信號是從RST引腳輸入到芯片內的施密特觸發(fā)器中的。當系統(tǒng)處于正常工作狀態(tài)時,且振蕩器穩(wěn)
12、定后,如果RST引腳上有一個高電平并維持2個機器周期24個振蕩周期以上,則CPU就可以響應并將系統(tǒng)復位。單片機系統(tǒng)的復位方式有:手動按鈕復位和上電復位。手動按鈕復位需要人為在復位輸入端RST上加入高電平(如圖4-1)。一般采用的辦法是在RST端和正電源Vcc之間接一個按鈕。當人為按下按鈕時,則Vcc的+5V電平就會直接加到RST端。由于人的動作再快也會使按鈕保持接通達數(shù)十毫秒,所以,完全能夠滿足復位的時間要求。單片機在啟動時都需要復位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。89系列單片機的復位信號是從RST引腳輸入到芯片內的施密特觸發(fā)器中的。當系統(tǒng)處于正常工作狀態(tài)時,且振
13、蕩器穩(wěn)定后,如果RST引腳上有一個高電平并維持2個機器周期(24個振蕩周期)以上,則CPU就可以響應并將系統(tǒng)復位。單片機系統(tǒng)的復位方式有:手動按鈕復位和上電復位。時鐘在引腳XTAL1和XTAL2外接晶體振蕩器(簡稱晶振)或陶瓷諧振器,就構成了內部振蕩方式(如圖4-2)。由于單片機內部有一個高增益反相放大器,當外接晶振后,就構成了自激振蕩器并產生振蕩時鐘脈沖。內部振蕩方式的外部電路如下圖所示。外部振蕩方式是把外部已有的時鐘信號引入單片機內。這種方式適宜用來使單片機的時鐘與外部信號保持同步。外部振蕩方式的外部電路如圖所示。圖4-2中,電容器C01,C02起穩(wěn)定振蕩頻率、快速起振的作用,其電容值一般
14、在5-30pF。晶振頻率的典型值為12MHz,采用6MHz的情況也比較多。內部振蕩方式所得的時鐘情號比較穩(wěn)定,實用電路中使用較多。3.5 主程序流程圖通過軟件設計思路分析,得到該系統(tǒng)的主程序流程圖如3-4所示開始系統(tǒng)初始化開關在左邊嗎?外部中斷T1外部中斷T0送數(shù)據(jù)讀取數(shù)據(jù)LED燈熄滅NY圖3-4 主程序流程圖系統(tǒng)開始運行,內部進行初始化后,等待外部中斷。當搖動到指定位置時,由滾珠開關出觸發(fā)外部中斷,再經過一段時間延時后開始顯示。顯示完成返回主程序,等待下一個搖動周期的到來。4 硬件電路設計4.1 基本原理圖圖4-1 基本原理圖與硬件電路設計16只LED發(fā)光管作為畫面每一列的顯示,左右搖晃起到
15、了掃描的作用,人眼的視覺暫留現(xiàn)象看到的是一幅完整的畫面。與LED點陣的顯示有幾分相仿。其硬件電路如圖4.1所示:系統(tǒng)電源VCC為5V,下載程序和調試時一定要保證5V電壓,MCS-51單片機作為控制器,在它的P1,P2口接有16只以共陽的方式連接的高亮度LED,由單片機輸出低電平點亮。P1口,P2口的上拉電阻不能少。串在LED公共端的二極管D1會產生一定的壓降,用來保護LED,經試驗測試LED點亮時兩端電壓為3V左右,在LED的安全承受范圍之內。4.2 各部分功能(1) 按鍵模塊使用一個按鍵對顯示的所有內容進行切換,通過按鈕按下的次數(shù)確定顯示的內容。S1:水銀開關功能為棒在搖動時,只能在朝某一方
16、向搖動時顯示,否則會出現(xiàn)鏡像字或鏡像畫面,所以通過接一支水銀開關來控制,使搖搖棒從左向右搖動時將內容顯示出來。S2:畫面切換開關功能為用于切換顯示不同內容。S3:手動復位開關功能為可以控制系統(tǒng)的啟停(2) LED顯示模塊首先,我們根據(jù)LED點陣屏的顯示原理:點陣屏的顯示分為行掃描與列掃描兩種,列掃描是將我們的字模數(shù)組通過點陣屏的行驅動進行輸入,然后通過列對每一行進行掃描,當列為低(高)電平、行為高(低)電平時則表示該點為圖案的一部分,將其讀出、顯示。它的順序可以總結為:行不斷的送數(shù)據(jù),每送完設置的信息后列進行讀取,然后行再次送數(shù)據(jù),列再次讀取依次循環(huán)下去,一幅完整的圖案就顯示在了顯示屏上。而本
17、次設計的LED顯示棒數(shù)據(jù)傳輸原理與LED點陣屏相似??梢园袻ED顯示棒看成是LED點陣屏中的一列。為了使顯示的圖案清晰,我們使用了16個LED管將它們排成一列,整個屏在靜止時也就相當于16行10×1列。數(shù)據(jù)傳輸時我們同樣使用行送數(shù)據(jù)、列掃描。在擺動過程中,應用視覺暫留原理,我們點亮的列不會很快的消失,而是隨著擺動的方向繼續(xù)向前移動,只要移動的速度高于視覺暫留的最短時間顯示內容就不會熄滅,至此,一幅圖案也就可以這樣被“擺動”出來了。4.3 系統(tǒng)硬件(1) 單片機控制(STC89C051)本裝置采用了STC12C2051單片機,它支持直接通過串口線下載程,對于本設計而言,顯示文字需經常改
18、變,STC12C2051方便許多,因此選擇STC12C2051作為本設計所用的單片機。(2) 顯示功能。(D1D16)信息傳遞主要由顯示來完成,本設計顯示功能由16個發(fā)光二極管來完成。16個發(fā)光二極管分為4組,以共陽的方式連接,共用P1口和P2口作為輸出口。4.4 傳感器系統(tǒng)硬件傳感器主要為搖動傳感器,本設計的搖動傳感器由滾珠開關構成。可選搖動開關有水銀搖動開關和滾珠開關兩種。水銀搖動開關穩(wěn)定性較高,但容易發(fā)生破裂,水銀外泄,安全性較差。滾珠開關穩(wěn)定性稍差,但不容易損壞,安全度很高??紤]到實際應用環(huán)境,故選用滾珠開關作為系統(tǒng)的搖動傳感器。由滾珠開關帶來的不穩(wěn)定性可以通過軟件進行彌補。經過分析論
19、證,我們決定了系統(tǒng)各模塊的最終方案,流程圖如下:圖4-2 傳感器系統(tǒng)流程圖整套系統(tǒng)以STC12C2051單片機為核心控制系統(tǒng),使用16只LED燈作為顯示屏,其中16只直接與單片機I/O口相連。當慣性開關觸發(fā)中斷T1時,單片機向16只LED傳送數(shù)據(jù),依據(jù)人體的視覺暫留原理,隨著顯示棒的擺動前進,輸出數(shù)據(jù)的列也不會立刻消失而是隨著擺動逐漸顯示在了形成的扇形區(qū)域。5 系統(tǒng)軟件設計5.1 軟件設計思路在搖動LED棒的時候單片機必須單程傳送數(shù)據(jù)否則顯示的圖形會產生重影,影響視覺效果。因此當系統(tǒng)開始工作后通過慣性開關的位置來使單片機實現(xiàn)單程傳送數(shù)據(jù)給LED。如果慣性開關位于右邊,則進入外部中斷1并將一變量
20、置1,。在變量為1期間讓單片機以一定的頻率將數(shù)據(jù)傳送給LED。如果慣性開關位于左邊,則進入外部中斷0并將變量置0,。在這期間單片機不會傳送數(shù)據(jù)給LED。在送數(shù)據(jù)時,數(shù)據(jù)送完后應延時一段時間來使搖動時顯示的每個字不會太擁擠。之后再立刻熄滅LED并開始重新判斷慣性開關的位置。5.2 主程序流程通過軟件設計思路分析,得到該系統(tǒng)的主程序流程圖3.1如下:圖4-1 主程序流程圖系統(tǒng)開始運行,內部進行初始化后,等待外部中斷。當搖動到指定位置時,由滾珠開關出觸發(fā)外部中斷,再經過一段時間延時后開始顯示。顯示完成返回主程序,等待下一個搖動周期的到來。經過文字取模后,系統(tǒng)的源程序編制參考附錄2:5.3 軟件實現(xiàn)功
21、能的完善本次設計的一個難點是去除重影,我們的解決方法是使用外部中斷讓數(shù)據(jù)單程傳輸。第二個難點是當顯示較長字符時不能完整的顯示在一次搖擺的扇形區(qū)域內。通過反復試驗,我們改變了送數(shù)據(jù)方式:由一個字符接一個字符傳送改為一組字符一起傳送,傳送結束后再延時,通過不斷調試實現(xiàn)了完整顯示的功能,同時也解決了畫面連續(xù)出現(xiàn)沒有間斷的問題。綜上,只要控制好數(shù)據(jù)傳輸方式以及每次傳輸數(shù)據(jù)間的延時就可以實現(xiàn)多種數(shù)據(jù)的顯示方法。6 試驗與仿真單片機應用系統(tǒng)的硬件調試和軟件調試是分不可的,許多硬件故障是在調試軟件時才發(fā)現(xiàn)的。但通常是先排除系統(tǒng)中明顯的硬件故障后才和軟件結合起來調試的。其一般的調試過程如下:6.1 硬件調試方
22、法脫機調試是在電路板加電之前,先用萬用表等工具,根據(jù)硬件電氣原理圖和裝配圖仔細檢查樣機線路的正確性,并核對元器件的型號,規(guī)格和安裝是否符合要求。應特別注意電源的走線,防止電源之間的短路和極性錯誤,并重點檢查拓展系統(tǒng)總線是否存在相互間的短路或其他信號線的短路。對于樣機所用的電源事先必須單獨調試,調試好后,檢查其電壓值,負載能力,極性等均符合要求,才能加到系統(tǒng)的各個部件上。在不插片子的情況下,加電檢查各插件上引腳的電位,仔細檢查各地點電位是否正常,尤其應注意單片機插座上的各點電位是否正常,若有高壓,聯(lián)機時將會損壞開發(fā)機。聯(lián)機調試通過脫機調試可排除一些明顯的硬件故障。有些硬件故障還是要通過聯(lián)機調試才
23、能發(fā)現(xiàn)和排除。聯(lián)機前先斷電,把開發(fā)系統(tǒng)的仿真插頭插到樣機的單片機插座上,檢查一下開發(fā)機與樣機之間的電源、接地是否良好。一切正常,即可打開電源。通電后執(zhí)行開發(fā)機讀寫指令,對用戶機的存儲器、I/O端口進行讀寫操作、邏輯檢查,若有故障,可用示波器觀察波形。通過對波形的觀察分析,尋找故障原因,并進一步排除故障??赡艿墓收嫌校壕€路連接上的邏輯錯誤、有斷線或短路現(xiàn)象、集成電路失效等。6.2 軟件調試方法軟件調試與所選用的軟件結構和程序設計技術有關。如果采用模塊程序設計技術,則逐個模塊調試好以后,再進行系統(tǒng)程序總調試。如果采用實時多任務操作系統(tǒng),一般是逐個任務,下面進一步予以說明。對于模塊結構程序,要一個個
24、子程序分別調試。調試子程序時,一定要符合現(xiàn)場環(huán)境,即入口條件和出口條件。調試的手段可采用單步運行方式和斷點運行方式,通過檢查用戶系統(tǒng)CPU的現(xiàn)場、RAM的內容和I/O口的狀態(tài),檢測程序執(zhí)行結果是否符合設計要求。通過檢測,可以發(fā)現(xiàn)程序中的死循環(huán)錯誤、機器碼錯誤及轉移地址的錯誤,同時也可以發(fā)現(xiàn)用戶系統(tǒng)中的硬件故障、軟件算法及硬件設計錯誤。在調試過程中不斷調整用戶系統(tǒng)的軟件和硬件,逐步通過一個個程序模塊。各程序模塊通過后,可以把各功能塊聯(lián)系起來一起進行整體程序綜合調試。在這階段若發(fā)生故障,可以考慮各子程序在運行時是否破壞現(xiàn)場,緩沖單元是否發(fā)生沖突,零位的建立和清除在設計上有否失誤,堆棧區(qū)域有否溢出,
25、輸入設備的狀態(tài)是否正常,等等。若用戶系統(tǒng)是在開發(fā)系統(tǒng)的監(jiān)控程序下運行時,還要考慮用戶緩沖單元是否和監(jiān)控程序的工作單元發(fā)生沖突。單步和斷點調試后,還應進行連續(xù)調試,這是因為單步運行只能驗證程序的正確與否,而不能確定定時精度、CPU的實時響應等問題。待全部完成后,應反復運行多次,除了觀察穩(wěn)定性之外,還要觀察用戶系統(tǒng)的操作是否符合原始設計要求、安排的用戶操作是否合理等,必要時還要做適當修正。對于實時多任務操作系統(tǒng)的應用程序是由若干個任務程序組成,一般是逐個任務進行調試,在調試某一個任務時,同時也調試相關的子程序、中斷服務程序和一些操作系統(tǒng)的程序。逐個任務調試好以后,再使各個任務同時運行,如果操作系統(tǒng)
26、中沒有錯誤,一般情況下系統(tǒng)就能正常運轉。在全部調試修改完成后,將用戶軟件固化于EPROM中,插入用戶樣機后,用戶系統(tǒng)即能離開發(fā)機獨立工作,至此系統(tǒng)研制完成。在開始實驗設計前,根據(jù)實驗要求,分析實驗所涉及的相關知識點,查閱身邊的資料,并根據(jù)自己以前所學的理論知識,有了大概設計框圖后,在PROTEL中畫出原理圖,然后根據(jù)原理圖分析模塊焊出電路板,并對模塊進行測試。 第一步,測試LED顯示電路和C51單片機最小系統(tǒng)。首先測試LED,輸入一個簡單程序(#include<reg51.h>main()p1=0*00;p2=0*00;),發(fā)現(xiàn)有一個LED不亮,于是檢查該LED的引腳,發(fā)現(xiàn)線路斷了
27、,接好后LED亮了。于是輸入搖搖棒程序,但LED燈不閃,猜測是數(shù)碼管芯片與插槽接觸不良的問題,就把插槽重新焊接,之后,再次檢測時,發(fā)現(xiàn)有時閃爍有時燈不亮。說明不是插槽的問題,于是反復檢查最小系統(tǒng)模塊,通過用電壓表最數(shù)碼管的每個引腳進行高低電平測試,最總發(fā)現(xiàn)原來是接線問題,即是一根線忘了連接。使得硬件與軟件的設置不匹配,從而導致了LED顯示不正常。改正后重新測試。手動搖晃可呈現(xiàn)圖像。第二步,測試驅動電路,該模塊完好。第三步,軟件測試。在軟件方面,改部分主要調延時函數(shù),調試過程簡單但費時。于是,多次耐心嘗試后軟件調試才成功,能夠完整并較為清晰地完整圖像。最終,實現(xiàn)搖搖棒功能7 結論在王老師的指導下
28、,通過一段時間完成了搖搖棒的設計,本次設計以水銀開關和單片機的實際應用為背景,介紹了以單片機為核心顯示設計的基本結構和基本原理。本次將使用單片機對搖動顯示進行實例化,設計一個LED搖動顯示器來顯示文字、圖像等信息。掌握利用8051型單片機對發(fā)光二極管陣列進行搖動控制的方法。輸出信號頻率的控制通過單片機來實現(xiàn),用水銀開關擺動狀態(tài)和16個發(fā)光二極管進行不同頻率的亮滅刷新,通過手動搖動可顯示輸出文字及圖案等信息。當進行搖動時,由于人的視覺暫留原理,會在發(fā)光二極管搖動區(qū)域產生一個視覺平面,在視覺平面內的二極管通過不同頻率的刷新,會在搖動區(qū)域內產生圖像,從而達到在該視覺平面上傳達信息的作用。設計綜合運用
29、了字模轉換軟件。同時查閱了大量相關資料,包括查閱相關書籍和網上的資料,獲得了一些相關信息。在設計方面,采用了在變量自加的原理,在經過逐個讀取的方法來顯示要顯示的內容。最后還得出以下幾點:準備越充分,實做越順利在做設計前了解相關知識、材料、方法可以避免許多沒有必要的麻煩,一步一個腳印就不必“從頭再來”。最不能容忍的是在開始的幾步偷懶,造成后面總有一些無法排除的障礙。溫故而知新課程設計發(fā)端之始,思緒全無,舉步維艱,對于理論知識學習不夠扎實的我深感知識的不夠,便重拾教材對知識系統(tǒng)而全面進行了梳理,終于熟練掌握了基本理論知識,而且領悟諸多平時學習難以理解掌握的較難知識。思路即出路當初沒有思路,誠如舉步
30、維艱,茫茫大地,不見道路。在對理論知識梳理掌握之后,茅塞頓開,柳暗花明,思路如泉涌,高歌“條條大路通羅馬”。頓悟,沒有思路便無出路,原來思路即出路。設計具有市場前景,可滿足各種大型演出、集會、游行等宣傳需要,為人們的生活提供便利,通過這次課程設計,使我學會了編寫程序,焊接電路板,增強了我的動手能力,為以后打下了堅實的基礎!通過這次課程設計,使我學會了編寫程序,焊接電路板,增強了我的動手能力,為以后參加工作打下了堅實的基礎。參考文獻1 鄒逢興,陳立剛,計算機意見技術基礎(第二版),高等教育出版社,2003.2 余錫存,曹國華,單片機原理與接口技術(第二版),西安電子科技大學出版社,2007.3
31、馮博琴,吳寧,微型計算機原理與接口技術(第三版),清華大學出版社,2004.4 張毅剛,MCS-51單片機應用設計,哈爾濱工業(yè)大學出版社,2004.1 楊振江,馮軍.單片機原理與實踐指導,中國電力出版社,2008,8.2 姜志海. 單片微型計算機原理及應用,機械工業(yè)出版社,2007,3.3 陳桂友,柴遠彬. 單片機應用技術,機械工業(yè)出版社,2008,1.4 馮先成. 單片機應用系統(tǒng)設計,北京航空大學出版社,2009.5 何宏. 微型計算機原理與接口技術,西安電子科技大學出版社,2009,4.6 劉海成.單片機及應用系統(tǒng)設計原理與實踐,北京航空大學出版社,2009,8.7 金杰. 單片機應用技術
32、基本功,人民郵電出版社,2009.8 韓志軍. 單片機系統(tǒng)設計與應用實例,機械工業(yè)出版社,2010.9 李廣弟. 單片機基礎,北京航空大學出版社,2007.10 劉同法,陳忠平,眭仁武. 單片機基礎與最小系統(tǒng)實踐,北京航空大學出版社,2007.11 李群芳. 單片微型計算機接口技術及應用,電子工業(yè)出版社,2005.12 嚴天峰. 單片機應用系統(tǒng)設計與仿真調試,北京航空航天大學出版社,2005.13 廖雷. C語言程序設計,高等教育出版社,2008.附錄1:總體電路原理圖附錄2:源程序#include <reg52.h>#define uchar unsigned char#defi
33、ne uint unsigned int /宏定義sbit KEY=P34; /定義畫面切換按鍵uchar KY; /KY作用在后面說明 uchar disp; /顯示漢字指針uchar pic=0,num=0; /pic為按鍵次數(shù);num為中斷次數(shù)/*顯示編碼部分*/uchar code love = 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x00,0x20,0x00,0x
34、20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,0x04,0x10,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x04,0x10,0xF8,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x07,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x20,0x00,0x10,0x00,0x08,0xFE,0x07,0x00,0x00,0x00,0x00,0x00,0x
35、00,0xFE,0x3F,0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*LOVE*/;/LOVE圖案的編碼 uchar code loveyou = 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0
36、x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x00,0xFC,0x00,0xFE,0x01,0xFE,0x03,0xFE,0x07,0xFE,0x0F,0xFE,0x1F,0xFC,0x3F,0xF8,0x7F,0xFC,0x3F,0xFE,0x1F,0xFE,0x0F,0xFE,0
37、x07,0xFE,0x03,0xFE,0x01,0xFC,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00/*心形圖案*/;/心形圖案的編碼uchar code
38、 hehe = 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x01,0x40,0x01,0xC0,0x01,0x00,0x00,0x00,0x00,0xF0,0x0F,0x08,0x10,0x04,0x20,0x00,0x00,0x00,0x00,0xF0,0x3F,0x08,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x08,0x00,0xF0,0x3F,0x00,0x00,0x
39、00,0x00,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0xF0,0x3F,0x08,0x00,0x04,0x00,0x04,0x00,0x04,0x00,0x08,0x00,0xF0,0x3F,0x00,0x00,0x00,0x00,0x04,0x20,0x08,0x10,0xF0,0x0F,0x00,0x00,0x00,0x00,0xC0,0x01,0x40,0x01,0xC0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x
40、00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00/*呵呵o(_)o圖案*/;/笑臉圖案的編碼unsigned char code hanzi = 0x80,0x40,0x40,0x40,0x30,0x42,0x1E,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0xFF,0x7F,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x40,0x00,0x40,0x00,0x00,/*"生",0*/* (16 X 16 , 宋體 ) */0x00,
41、0x00,0x00,0x00,0x00,0x00,0xFE,0xFF,0x82,0x40,0x82,0x40,0x82,0x40,0x82,0x40,0x82,0x40,0x82,0x40,0x82,0x40,0xFE,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"日",1*/* (16 X 16 , 宋體 ) */0x00,0x01,0xE0,0x00,0x00,0x00,0xFF,0xFF,0x10,0x00,0x20,0x81,0x08,0x41,0x08,0x31,0x08,0x0D,0xFF,0x03,0x08,0
42、x0D,0x08,0x31,0xF8,0x41,0x00,0x81,0x00,0x81,0x00,0x00,/*"快",2*/* (16 X 16 , 宋體 ) */0x00,0x00,0x00,0x20,0xE0,0x10,0x9C,0x08,0x84,0x06,0x84,0x40,0x84,0x80,0xF4,0x7F,0x82,0x00,0x82,0x00,0x83,0x02,0x82,0x04,0x80,0x08,0x80,0x30,0x00,0x00,0x00,0x00,/*"樂",3*/* (16 X 16 , 宋體 ) */0x20,0x0
43、0,0x24,0x08,0x24,0x48,0x24,0x84,0xFE,0x7F,0x23,0x02,0x22,0x41,0x20,0x40,0x20,0x20,0xFF,0x13,0x20,0x0C,0x22,0x14,0x2C,0x22,0xA0,0x41,0x20,0xF8,0x00,0x00,/*"我",4*/* (16 X 16 , 宋體 ) */0x80,0x00,0x64,0x41,0x2C,0x21,0x34,0x91,0x24,0x89,0x24,0x87,0xEC,0x4D,0x32,0x55,0x22,0x25,0x22,0x25,0x32,0x55
44、,0x2E,0x4D,0x23,0x81,0xA2,0x80,0x60,0x80,0x00,0x00,/*"愛",5*/* (16 X 16 , 宋體 ) */0x00,0x01,0x80,0x00,0x60,0x00,0xF8,0xFF,0x07,0x00,0x40,0x10,0x20,0x0C,0x18,0x03,0x0F,0x40,0x08,0x80,0xC8,0x7F,0x08,0x00,0x08,0x01,0x28,0x06,0x18,0x18,0x00,0x00,/*"你",6*/* (16 X 16 , 宋體 ) */0x00,0x00,0x00,0x0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 和物業(yè)有效溝通
- 結構設計管理流程
- 4S店安全生產培訓工作總結
- 廢物回收面試題及答案
- 幼兒園小班三八節(jié)活動教案
- 未來潛力測試題及答案
- 電視攝影考試題及答案
- 內容規(guī)范測試題及答案
- 消化道息肉切除術后護理
- 憲法論述試題及答案
- 2025年重癥醫(yī)學科ICU護理質量控制計劃
- 校園安全教育培訓課件
- 泥漿消納協(xié)議書
- 機場口語面試題及答案
- 職業(yè)技術學院2024級智能交通技術專業(yè)人才培養(yǎng)方案
- 第15課 明朝的統(tǒng)治 課件 統(tǒng)編版七年級歷史下冊
- 2025年統(tǒng)計學期末考試題庫:數(shù)據(jù)分析基礎計算與應用試題
- 【北京市人社局】2025年北京市人力資源市場薪酬數(shù)據(jù)報告(一季度)
- 工藝管道氣壓實驗方案
- 20噸雙梁行車標準尺寸
- 過敏性皮炎個案護理
評論
0/150
提交評論