版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、自動(dòng)控制升降旗系統(tǒng)的設(shè)計(jì)教 學(xué) 部工學(xué)一部專 業(yè)自動(dòng)化班 級(jí)b641301學(xué) 號(hào)b64130106姓 名袁菲指導(dǎo)教師王艷輝負(fù)責(zé)教師王艷輝沈陽(yáng)航空航天大學(xué)北方科技學(xué)院2010年6月沈陽(yáng)航空航天大學(xué)北方科技學(xué)院畢業(yè)設(shè)計(jì)(論文)摘 要本文設(shè)計(jì)了一個(gè)升降旗自動(dòng)控制系統(tǒng),可自動(dòng)完成升降旗過(guò)程,能避免人為升降國(guó)旗與國(guó)歌演奏時(shí)間不協(xié)調(diào)的問(wèn)題。系統(tǒng)有上升鍵和下降鍵,在按下上升鍵時(shí),國(guó)旗勻速上升,同時(shí)自動(dòng)演奏國(guó)歌,當(dāng)上升到最高端時(shí)自動(dòng)停止,國(guó)歌停奏;按下下降鍵時(shí),國(guó)旗勻速下降,降到最低端時(shí)自動(dòng)停止,下降過(guò)程中不演奏國(guó)歌。系統(tǒng)采用凌陽(yáng)公司的61板作為主控單元,以spgt62c19b電機(jī)模組作為運(yùn)動(dòng)驅(qū)動(dòng)電路,控制電
2、機(jī)轉(zhuǎn)動(dòng),再通過(guò)滑輪的傳動(dòng)完成升旗和降旗。在升降旗的過(guò)程中l(wèi)ed顯示器實(shí)時(shí)顯示出國(guó)旗所在的高度及所用時(shí)長(zhǎng)。該系統(tǒng)簡(jiǎn)單實(shí)用,可擴(kuò)展性較強(qiáng),稍有改動(dòng)即可實(shí)現(xiàn)半旗和不同國(guó)家升旗的功能。關(guān)鍵詞:61板;自動(dòng)控制;升降旗abstractthis paper illustrates the design of a automatic ascend or fall nation flag system, it can ascend or fall nation flag of the automatic system, while it can avoid the coordinate of human at
3、tempt or effort nation flag and play nation anthem. the system has the keys of ascend and fall. to press the key of ascend, flag ascends with well-distributed and play nation anthem. when nation flag go up the highest, the step motor will stop turn. to press the key of fall, flag falls with well-dis
4、tributed . when nation flag fall down the lowest, the step motor will stop turn. in the process of fall down, wont play nation anthem.this system uses spce061a(abbreviation“61board” )of sunplus single-chip as the main control unit. and use spgt62c19b dual full-bridge motor drive as the driving circu
5、it,which control turn of step motor and use the pulley to drive the national flag to rise or lower . in the process, the led shows the time and the height of the national flag. the system is simple and practical, the extend markup very robust , it can accomplish half-mast and rise flag of different
6、country if this system will little change.key words: 61board;automatical;raise and up the flag目 錄第1章 緒論11.1立題的意義11.2課題研究任務(wù)及目標(biāo)21.3課題主要內(nèi)容2第2章 自動(dòng)控制升降旗系統(tǒng)的方案論證42.1單片機(jī)的選擇及論證42.2電機(jī)的選擇及論證42.2顯示的選擇及論證5第3章 自動(dòng)控制升降旗系統(tǒng)的硬件設(shè)計(jì)63.1凌陽(yáng)spce061a單片機(jī)簡(jiǎn)介63.2步進(jìn)電機(jī)驅(qū)動(dòng)的設(shè)計(jì)103.2.1電機(jī)模組spgt62c19b簡(jiǎn)介103.2.2步進(jìn)電機(jī)驅(qū)動(dòng)電路的設(shè)計(jì)143.2.3步進(jìn)電機(jī)驅(qū)動(dòng)的脈沖數(shù)
7、的計(jì)算163.3顯示電路的設(shè)計(jì)183.4按鍵電路的設(shè)計(jì)18第4章 自動(dòng)控制升降旗系統(tǒng)的軟件設(shè)計(jì)204.1自動(dòng)控制升降旗系統(tǒng)的軟件設(shè)計(jì)方案204.2計(jì)時(shí)子程序的設(shè)計(jì)214.4顯示子程序的設(shè)計(jì)224.5語(yǔ)音子程序的設(shè)計(jì)23第5章 系統(tǒng)調(diào)試與結(jié)果分析255.1系統(tǒng)的硬件調(diào)試255.2系統(tǒng)的軟件調(diào)試255.3調(diào)試結(jié)果及分析27結(jié)論與創(chuàng)新29致 謝30參考文獻(xiàn)31附錄 自動(dòng)控制升降旗系統(tǒng)程序清單32附錄 自動(dòng)控制升降旗系統(tǒng)元器件清單65iv沈陽(yáng)航空工業(yè)學(xué)院畢業(yè)設(shè)計(jì)(論文)-i-沈陽(yáng)航空航天大學(xué)北方科技學(xué)院畢業(yè)設(shè)計(jì)(論文)第1章 緒論1.1立題的意義自動(dòng)升、降旗系統(tǒng)適應(yīng)領(lǐng)域廣泛,在許多政府部門、學(xué)校、廣場(chǎng)
8、和大型企業(yè)隨處可見(jiàn)到國(guó)旗的飄揚(yáng),隨著信息時(shí)代的飛速發(fā)展,人們物質(zhì)生活逐步提高,特別是伴隨著自動(dòng)控制和單片機(jī)測(cè)控技術(shù)發(fā)展,可以使用自動(dòng)控制系統(tǒng)來(lái)完成國(guó)旗的升、降控制、使升、降旗速度與國(guó)歌演奏時(shí)間準(zhǔn)確配合,從而避免了人為升,降國(guó)旗與國(guó)歌演奏時(shí)間不協(xié)調(diào)而出現(xiàn)的尷尬場(chǎng)面發(fā)生,保證了國(guó)旗升、降儀式的嚴(yán)肅性。凌陽(yáng)科技 (sunplus technology co., ltd.)是全球知名的芯片設(shè)計(jì)公司,致力于開(kāi)發(fā)高品質(zhì)的集成電路芯片。凌陽(yáng)科技運(yùn)用多媒體影音、單片微處理器、數(shù)字信號(hào)處理器(dsp)等核心技術(shù),發(fā)展出多樣化的產(chǎn)品線,包括液晶ic、微控器ic、多媒體ic、語(yǔ)音、音樂(lè)ic及各式asic,并逐年擴(kuò)增
9、中。 凌陽(yáng)科技的 16位單片機(jī)的cpu內(nèi)核采用凌陽(yáng)自主知識(shí)產(chǎn)權(quán)的nsp(microcontroller and signal processor)16位微處理器(以下簡(jiǎn)稱nsp)。而圍繞nsp所形成的16位nsp系列單片機(jī)采用的是模塊化集成結(jié)構(gòu),以nsp內(nèi)核為中心,集成不同規(guī)模的rom、ram和功能豐富的各種外設(shè)接口部件,將單片機(jī)應(yīng)用引領(lǐng)到soc(system on chip)領(lǐng)域。 凌陽(yáng)科技的nsp系列 16 位單片機(jī)主要產(chǎn)品有:帶語(yǔ)音功能的 spce 通用單片機(jī)系列,工業(yè)控制級(jí)控制型的spmc通用單片機(jī)系列,應(yīng)用于視頻游戲類產(chǎn)品的 spg系列單片機(jī),帶有l(wèi)cd顯示驅(qū)動(dòng)的spl16系列單片機(jī)
10、、專用于通訊產(chǎn)品的spt系列單片機(jī),應(yīng)用于高檔電子樂(lè)器、和弦發(fā)聲的spf系列單片機(jī)等等。凌陽(yáng)科技新近又推出了以nsp為內(nèi)核的spmc75f系列單片機(jī),用于變頻馬達(dá)驅(qū)動(dòng)控制,廣泛應(yīng)用于變頻家電、工業(yè)變頻器、工業(yè)控制等領(lǐng)域。 單片機(jī)的應(yīng)用領(lǐng)域越來(lái)越廣泛,無(wú)論是在生活、生產(chǎn)上,單片機(jī)無(wú)處不在。凌陽(yáng)spce061a單片機(jī)作為一款語(yǔ)音功能卓越16位單片機(jī)受到越來(lái)越多業(yè)內(nèi)人士的青睞,因此順應(yīng)單片機(jī)發(fā)展的要求,學(xué)習(xí)凌陽(yáng)單片機(jī)的軟件設(shè)計(jì)是我們學(xué)習(xí)的需求,也是適應(yīng)社會(huì)智能化、自動(dòng)化的趨勢(shì)。1.2課題研究任務(wù)及目標(biāo)本系統(tǒng)采用凌陽(yáng)公司的spce061a十六位單片機(jī)作為主控單元,步進(jìn)電機(jī)作為運(yùn)動(dòng)驅(qū)動(dòng)電路, spce0
11、61a自帶鍵盤作為系統(tǒng)的輸入,通過(guò)液晶顯示器輸出系統(tǒng)信息。本系統(tǒng)的工作過(guò)程首先在液晶顯示器上顯示操作的提示信息,通過(guò)鍵盤輸入單片機(jī),系統(tǒng)發(fā)出信號(hào)到電機(jī)控制器控制步進(jìn)電動(dòng)機(jī)的動(dòng)作,通過(guò)滑輪的傳動(dòng)完成升旗和降旗。升降旗過(guò)程中能實(shí)時(shí)顯示國(guó)旗的高度和時(shí)間,且升降旗均為勻速運(yùn)動(dòng);國(guó)旗能在指定位置自動(dòng)停止。本系統(tǒng)可實(shí)現(xiàn)以下功能:1) 按上升鍵后,國(guó)旗勻速上升,同時(shí)演奏國(guó)歌,上升到最高端自動(dòng)停止,國(guó)歌停奏。按下降鍵后,國(guó)旗勻速下降,下降到最低端自動(dòng)停止。國(guó)歌播放時(shí)間位43s;升降旗的時(shí)間均為43s。2) 可以避免誤動(dòng)作,國(guó)旗在最高端時(shí)按上升鍵不起作用;在最低端時(shí),按下降鍵不起作用。3) 旗幟的位置及升降旗的
12、時(shí)間可實(shí)時(shí)顯示。4) 關(guān)斷電源后再重新上電,旗幟所在的高度數(shù)據(jù)顯示不變。1.3課題主要內(nèi)容本文主要介紹了自動(dòng)控制升降旗系統(tǒng)的軟硬件設(shè)計(jì)及實(shí)現(xiàn)方法,相應(yīng)的電路原理、以及各元器件性能型號(hào)的選擇,內(nèi)容主要分為三部分:第一部分是硬件和軟件的設(shè)計(jì),包括硬件電路方案的設(shè)計(jì)、元器件的選擇等,具體的硬件電路包括步進(jìn)電機(jī)驅(qū)動(dòng)電路,spce061a單片機(jī)的最小系統(tǒng)電路。軟件設(shè)計(jì)采用模塊化的設(shè)計(jì),具體的模塊包括系統(tǒng)主程序,升降旗子程序,時(shí)間、位置顯示子程序等,繪制軟件流程圖后,用c語(yǔ)言和匯編語(yǔ)言混編的形式編程。第二部分是軟、硬件仿真,程序采用c語(yǔ)言和匯編語(yǔ)言混合編寫,通過(guò)61板自帶的編譯軟件進(jìn)行編譯調(diào)試,硬件電路用
13、ide軟件繪制。程序調(diào)好后,利用軟件生成61單片機(jī)能識(shí)別的后綴為“.s37”的機(jī)器碼文件,然后把程序下載到凌陽(yáng)spce061a sunplus軟件運(yùn)行環(huán)境下,運(yùn)行程序和ide環(huán)境下的電路來(lái)實(shí)現(xiàn)設(shè)計(jì)要求的各功能。 第三部分是搭接61板和spgt62c19b電機(jī)模組的各個(gè)模塊,用61板自帶仿真器調(diào)試,上電后一切運(yùn)行正常,系統(tǒng)實(shí)現(xiàn)預(yù)期的目標(biāo)。第2章 自動(dòng)控制升降旗系統(tǒng)的方案論證2.1單片機(jī)的選擇及論證單片機(jī)(即cpu)是本系統(tǒng)的工作核心,它的選擇不僅關(guān)系到系統(tǒng)的工作效率,同時(shí)也為系統(tǒng)的工作提供可靠的保障,因此cpu的選擇是系統(tǒng)的關(guān)鍵所在。方案一:采用at89c51單片機(jī)實(shí)現(xiàn),單片機(jī)軟件編程自由度大,
14、可用編程實(shí)現(xiàn)各種控制算法和邏輯控制。但是at89c51需外接模數(shù)轉(zhuǎn)換器來(lái)滿足數(shù)據(jù)采樣,硬件電路相對(duì)復(fù)雜。另外,增強(qiáng)型單片機(jī)在線操作不易掌握,需要用仿真器來(lái)實(shí)現(xiàn)軟硬件調(diào)試,較為繁瑣。方案二:采用凌陽(yáng)公司推出的spce061a語(yǔ)音單片機(jī)及其開(kāi)發(fā)板-61板作為控制模塊。spce061a的cpu時(shí)鐘為0.32mhz49.152mhz,速度可以滿足電機(jī)控制對(duì)實(shí)時(shí)性的要求;內(nèi)置2k words 的sram,為浮點(diǎn)運(yùn)算提供了足夠的數(shù)據(jù)存儲(chǔ)器空間;具有7個(gè)觸鍵喚醒中斷和2個(gè)外部中斷,可以滿足本系統(tǒng)中鍵盤和傳感器對(duì)外部中斷的要求;凌陽(yáng)自帶的三種格式的音樂(lè)播放格式能播放不同質(zhì)量,長(zhǎng)度的音樂(lè)。spce061a可以通
15、過(guò)在線調(diào)試器probe和ez_probe實(shí)現(xiàn)在線程序下載和調(diào)試,極大地提高了開(kāi)發(fā)效率。此外使用凌陽(yáng)公司提供的音頻函數(shù)庫(kù)和spce061a豐富的時(shí)基中斷可以方便地實(shí)現(xiàn)功能擴(kuò)展。具有保密能力watchdog功能。凌陽(yáng)61單片機(jī)耗電少,可以滿足很多手提設(shè)備、掌上設(shè)備低能耗的需求,低能耗也是電子技術(shù)一直在追求的一個(gè)目標(biāo)??煞奖愕挠脕?lái)實(shí)現(xiàn)聲音錄制、播放、midi音樂(lè)合成和語(yǔ)音識(shí)別,相比別的單片機(jī)比較有特色??煞奖愕耐瓿梢幌盗谐思拥倪\(yùn)數(shù),實(shí)現(xiàn)一些數(shù)據(jù)處理比較容易,別的單片機(jī)一般都不具備這種功能。芯片里具備在線仿真調(diào)試電路,使調(diào)試和程序下載更加方便,也把仿真器和燒錄器的成本給節(jié)省下來(lái)了。綜上所述,本次畢業(yè)設(shè)
16、計(jì)采用方案二。2.2電機(jī)的選擇及論證電機(jī)在本系統(tǒng)中是國(guó)旗升降的主要控制部件,它為系統(tǒng)提供動(dòng)力支持。從以下幾個(gè)方面闡述本系統(tǒng)的方案。方案一:采用直流電機(jī)控制升降旗運(yùn)動(dòng),直流電機(jī)力量大,能獲得較大的啟動(dòng)轉(zhuǎn)矩,相應(yīng)快,但控制復(fù)雜,不能自鎖。方案二:采用步進(jìn)電機(jī)控制升降旗運(yùn)動(dòng),步進(jìn)電機(jī)是一種作為控制用的特種電機(jī), 它的旋轉(zhuǎn)是以固定的角度(稱為“步距角”)一步一步運(yùn)行的, 其特點(diǎn)是沒(méi)有積累誤差(精度為100%), 所以廣泛應(yīng)用于各種開(kāi)環(huán)控制。步進(jìn)電機(jī)的運(yùn)行要有一電子裝置進(jìn)行驅(qū)動(dòng), 這種裝置就是步進(jìn)電機(jī)驅(qū)動(dòng)器, 它是把控制系統(tǒng)發(fā)出的脈沖信號(hào)轉(zhuǎn)化為步進(jìn)電機(jī)的角位移, 或者說(shuō): 控制系統(tǒng)每發(fā)一個(gè)脈沖信號(hào), 通
17、過(guò)驅(qū)動(dòng)器就使步進(jìn)電機(jī)旋轉(zhuǎn)一步距角。所以步進(jìn)電機(jī)的轉(zhuǎn)速與脈沖信號(hào)的頻率成正比。所以,控制步進(jìn)脈沖信號(hào)的頻率,可以對(duì)電機(jī)精確調(diào)速;控制步進(jìn)脈沖的個(gè)數(shù),可以對(duì)電機(jī)精確定位目的。步進(jìn)電機(jī)不需要使用傳感器就能精確定位,而且通過(guò)給定的脈沖周期,能夠以任意速度轉(zhuǎn)動(dòng),定矩運(yùn)動(dòng)較精確。雖然步進(jìn)電機(jī)不能高速轉(zhuǎn)動(dòng),但根據(jù)題目要求的時(shí)間和移動(dòng)距離,步進(jìn)電機(jī)完全能夠符合要求,是該種要求下廣泛使用的一種電機(jī)。綜上所述,本次畢業(yè)設(shè)計(jì)采用方案二。2.2顯示的選擇及論證方案一:用led數(shù)碼管顯示旗幟所在的高度和升降旗時(shí)間,本題中只需要4只led數(shù)碼管進(jìn)行動(dòng)態(tài)顯示高度、時(shí)間,優(yōu)點(diǎn)是接口簡(jiǎn)單,易于控制,而且比較直觀,可視化較強(qiáng)。方
18、案二:用lcd液晶顯示器顯示,優(yōu)點(diǎn)是能顯示更多的字符,有著良好的人機(jī)界面,缺點(diǎn)是控制比較復(fù)雜,性能價(jià)格比較高。基于上述分析,所以選擇方案一。第3章 自動(dòng)控制升降旗系統(tǒng)的硬件設(shè)計(jì)鑒于spgt62c19b電機(jī)控制模組是為學(xué)生以及單片機(jī)愛(ài)好者學(xué)習(xí)步進(jìn)電機(jī)和直流電機(jī)控制而設(shè)計(jì)的學(xué)習(xí)套件。且模組采用凌陽(yáng) spgt62c19b電機(jī)驅(qū)動(dòng)芯片,配置兩相步進(jìn)電機(jī)和直流電機(jī)各一臺(tái),使用該模組的步進(jìn)電機(jī)作為升降旗電機(jī),再通過(guò)滑輪的傳動(dòng)完成升旗和降旗,該模組提供4位led數(shù)碼管,可用來(lái)顯示升降國(guó)旗的所在高度及所用時(shí)長(zhǎng)。而且該模組針對(duì) spce061a 單片機(jī)設(shè)計(jì),可以方便地用排線與 spce061a 精簡(jiǎn)開(kāi)發(fā)板(即“
19、61 板” )連接,可作為單片機(jī)開(kāi)發(fā)前期,所以用spgt62c19b 電機(jī)控制模組作為畢業(yè)設(shè)計(jì)硬件,與凌陽(yáng)spce061a共同完成此次畢業(yè)設(shè)計(jì)。具體的電機(jī)模組簡(jiǎn)介在3.2.1節(jié)有詳細(xì)介紹。本系統(tǒng)硬件方框圖如圖3.1所示。凌陽(yáng)spce061a板spgt62c19b電機(jī)模組圖3.1 系統(tǒng)硬件方框圖3.1凌陽(yáng)spce061a單片機(jī)簡(jiǎn)介 傳統(tǒng)的單片機(jī)學(xué)習(xí)硬件方案是編程器+開(kāi)發(fā)系統(tǒng)+仿真器,由于這些設(shè)備相互之間各自獨(dú)立,在做畢業(yè)設(shè)計(jì)時(shí),需要反復(fù)不停地拔插電纜、芯片、電源等,其繁瑣的連線和復(fù)雜的操作,極大的降低了畢業(yè)設(shè)計(jì)的效率,如稍有不慎就有可能造成器件和設(shè)備的損壞,會(huì)帶來(lái)不必要的麻煩或損失。而且備齊這些
20、設(shè)備往往需要一筆昂貴的費(fèi)用。spce061a 單片機(jī)學(xué)習(xí)開(kāi)發(fā)系統(tǒng)將開(kāi)發(fā)軟件、單片機(jī)開(kāi)發(fā)系統(tǒng)(或稱“實(shí)驗(yàn)板” )、下載線 、編程器、仿真器進(jìn)行完美的結(jié)合。spce061a單片機(jī)里面整合了進(jìn)行在線編程控制的功能模塊,試驗(yàn)過(guò)程中無(wú)需拔插任何電纜和芯片,也無(wú)需切換電源,配合下載線,就可輕松地將編譯好的代碼下載到開(kāi)發(fā)系統(tǒng)上進(jìn) 行驗(yàn)證或演示,整個(gè)過(guò)程只需利用鼠標(biāo)操作即可。當(dāng)然也可以使用配套的開(kāi)發(fā)環(huán)境直接對(duì)實(shí)驗(yàn)板上的資源進(jìn)行在線仿真。該開(kāi)發(fā)系統(tǒng)擺脫了傳統(tǒng)、繁鎖的單片機(jī)學(xué)習(xí)方式,將當(dāng)今最流行、最經(jīng)濟(jì)有效的學(xué)習(xí)方案完美地整合在了同一個(gè)系統(tǒng)中,是一個(gè)快捷、高效、靈活的單片機(jī)學(xué)習(xí)、開(kāi)發(fā)方案。有了這個(gè)開(kāi)發(fā) 系統(tǒng)就同時(shí)
21、擁有了學(xué)習(xí)實(shí)驗(yàn)板、下載線、編程器、仿真器,具有非凡的性價(jià)比,因此很適合我們大學(xué)生學(xué)習(xí)和開(kāi)發(fā)。所以,采用 spce061a 單片機(jī)進(jìn)行開(kāi)發(fā)比采用傳統(tǒng)單片機(jī)進(jìn)行開(kāi)發(fā)的過(guò)程簡(jiǎn)化很多,簡(jiǎn)單的說(shuō)它的 開(kāi)發(fā)過(guò)程就是首先在開(kāi)發(fā)環(huán)境中編程,把編好的程序下載到開(kāi)發(fā)系統(tǒng)上,通過(guò)開(kāi)發(fā)環(huán)境提供的各類調(diào)試窗口進(jìn)行仿真調(diào)試或者直接運(yùn)行?!?1 板”是 spce061a emu board 的簡(jiǎn)稱,是 spce061a 單片機(jī)的開(kāi)發(fā)系統(tǒng),通過(guò)掛接不同的硬件和下載不同的程序就可實(shí)現(xiàn)各類特定功能的系統(tǒng)。由于具有語(yǔ)音處理的特色,即便是不掛接額外的硬件,下載一些開(kāi)發(fā)環(huán)境下提供的程序就可以實(shí)現(xiàn)一個(gè)復(fù)讀機(jī)、語(yǔ)音萬(wàn)年歷之類的系統(tǒng), 因此
22、可以完成國(guó)歌的播放。凌陽(yáng)spce061a單片機(jī)性能:l 16 位nsp微處理器;l 工作電壓(cpu) vdd 為 2.43.6v (i/o) vddh 為 2.45.5vl cpu 時(shí)鐘:0.32mhz49.152mhz;l 內(nèi)置 2k字 sram;l 內(nèi)置 32kflash;l 可編程音頻處理;l 晶體振蕩器;l 系統(tǒng)處于備用狀態(tài)下(時(shí)鐘處于停止?fàn)顟B(tài)),耗電僅為 2a3.6v;l 2個(gè) 16位可編程定時(shí)器/計(jì)數(shù)器(可自動(dòng)預(yù)置初始計(jì)數(shù)值);l 2個(gè) 10位 dac(數(shù)-模轉(zhuǎn)換)輸出通道;l 32位通用可編程輸入/輸出端口;l 14個(gè)中斷源可來(lái)自定時(shí)器 a / b,時(shí)基,2個(gè)外部時(shí)鐘源輸入鍵喚
23、醒;l 具備觸鍵喚醒的功能;l 使用凌陽(yáng)音頻編碼 sacm_s240 方式(2.4k 位/秒),能容納 210 秒的語(yǔ)音數(shù)據(jù);l 鎖相環(huán) pll 振蕩器提供系統(tǒng)時(shí)鐘信號(hào);l 32768hz 實(shí)時(shí)時(shí)鐘;l 7 通道 10 位電壓模-數(shù)轉(zhuǎn)換器(adc)和單通道聲音模-數(shù)轉(zhuǎn)換器;l 聲音模-數(shù)轉(zhuǎn)換器輸入通道內(nèi)置麥克風(fēng)放大器和自動(dòng)增益控制(agc)功能;l 具備串行設(shè)備接口;l 具有低電壓復(fù)位(lvr)功能和低電壓監(jiān)測(cè)(lvd)功能;l 內(nèi)置在線仿真電路 ice(in- circuit emulator)接口;l 具有保密能力;l 具有 watchdog 功能。61板核心芯片spce061a注腳圖如圖
24、3.2所示:圖3.2spce061a注腳圖spce061a主要管腳描述表如下表3.1所示:表3.1 spce061a管腳描述表管腳名稱編號(hào)類型描述 ioa 15:84639輸入輸出ioa15:8:雙向 io 端口ioa 7:03427輸入輸出ioa7:0:通過(guò)編程,可設(shè)置成喚醒管腳ioa6:0:與 adc line_in 輸入共用iob 15:11 iob10iob9iob8iob7iob6iob5iob4iob3iob2iob1iob05054 5758596061626364656667輸入輸出輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸出 輸入輸
25、出iob15:11 :雙向 io 端口。iob100 除用作普通的io 端口,還可作為: iob10:通用異步串行數(shù)據(jù)發(fā)送管腳 txiob9:timerb 脈寬調(diào)制輸出管腳 bpwmo iob8:timera 脈寬調(diào)制輸出管腳 apwmo iob7:通用異步串行數(shù)據(jù)接收管腳 rx iob6:雙向 io 端口iob5:外部中斷源 ext2 的反饋管腳 iob4:外部中斷源 ext1 的反饋管腳 iob3:外部中斷源 ext2iob2:外部中斷源 ext1iob1:串行接口的數(shù)據(jù)傳送管腳iob0:串行接口的時(shí)鐘信號(hào)dac112 輸出dac1 數(shù)據(jù)輸出管腳dac213 輸出dac2 數(shù)據(jù)輸出管腳x3
26、2i2 輸入32768hz 晶振輸入管腳x32o1 輸出32768hz 晶振輸出管腳vcoin70 輸入pll 的 rc 濾波器連接管腳agc16 輸入agc 的控制管腳micn19 輸入麥克風(fēng)負(fù)向輸入管腳micp21 輸入麥克風(fēng)正向輸入管腳micout18 輸出麥克風(fēng) 1 階放大器輸出管腳,管腳外接電阻決定 agc增益倍數(shù)opi17 輸入麥克風(fēng) 2 階放大器輸入管腳3.2步進(jìn)電機(jī)驅(qū)動(dòng)的設(shè)計(jì)3.2.1電機(jī)模組spgt62c19b簡(jiǎn)介模組的平面圖如圖 3.3 所示:電機(jī)控制接口 外接電源插座外接電源指示燈 紅外對(duì)管spgt62c19b輸出選擇跳線直流電機(jī)直流電機(jī)接口 光柵轉(zhuǎn)盤uln2003a步進(jìn)
27、電機(jī)步進(jìn)電機(jī)接口 4位數(shù)碼管數(shù)碼管控制 接口 圖3.3 spgt62c19b電機(jī)模組平面圖上述結(jié)構(gòu)圖中各部分說(shuō)明如下:電機(jī)控制接口:模組與單片機(jī)的接口,為 10pin 排針,可以直接與“61 板”連接,實(shí)現(xiàn)電機(jī)控制。數(shù)碼管控制接口:模組與單片機(jī)的接口,為兩組 10pin 排針,可以直接與“61 板”連接,實(shí)現(xiàn) 對(duì) 4 位 led 數(shù)碼管的控制。spgt62c19b:電機(jī)驅(qū)動(dòng)芯片,可驅(qū)動(dòng)一臺(tái)雙極性兩相步進(jìn)電機(jī),或者兩臺(tái)直流電機(jī)。外接電源指示燈:spgt62c19b電機(jī)驅(qū)動(dòng)芯片的邏輯控制電源與電機(jī)驅(qū)動(dòng)電源是各自獨(dú)立供電的,可以外接 5v12v 的電機(jī)驅(qū)動(dòng)電源。當(dāng)接通了電機(jī)驅(qū)動(dòng)電源時(shí),外接電源指示燈
28、會(huì)點(diǎn)亮。外接電源插座:為 spgt62c19b提供電機(jī)驅(qū)動(dòng)電源的插座。共有兩組電源插座,分別為 2pin 針座(可接 61 板電池盒或其他直流電源)和 dc 穩(wěn)壓電源插座(可接直流穩(wěn)壓電源)。使用時(shí)可選擇其中一組插座作為電機(jī)驅(qū)動(dòng)電源輸入端。輸出選擇跳線:該組跳線用來(lái)選擇 spgt62c19b 芯片控制的電機(jī)。模組提供了步進(jìn)電機(jī)和直流電機(jī)各一臺(tái),可通過(guò)對(duì)輸出選擇跳線的設(shè)定來(lái)切換當(dāng)前工作的電機(jī)類型。步進(jìn)電機(jī)接口:該接口為 4pin 插針形式,用于連接 spgt62c19b 驅(qū)動(dòng)芯片和兩相步進(jìn)電機(jī)。步進(jìn)電機(jī):35byj26 型號(hào)永磁式步進(jìn)減速電機(jī),工作方式為兩相四拍。在步進(jìn)電機(jī)面板上安裝有刻度盤,以
29、便于在實(shí)驗(yàn)中觀察電機(jī)的轉(zhuǎn)動(dòng)狀態(tài)。直流電機(jī)接口:由于 spgt62c19b 可同時(shí)驅(qū)動(dòng)兩臺(tái)直流電機(jī),因此留出了兩組直流電機(jī)接口, 在模組上分別標(biāo)示為 j11 和 j12??梢詫⒛=M提供的直流電機(jī)接在其中一組接口上。直流電機(jī):電機(jī)型號(hào)為 310ca,工作電壓 3v12v,在 5v 電壓下空載轉(zhuǎn)速約 4000 轉(zhuǎn)/分。光柵轉(zhuǎn)盤和紅外對(duì)管:在直流電機(jī)的轉(zhuǎn)軸上安置了光柵轉(zhuǎn)盤,光柵轉(zhuǎn)盤的兩側(cè)分別裝有鼠標(biāo)用紅外發(fā)射和接收管。當(dāng)直流電機(jī)轉(zhuǎn)動(dòng)時(shí),光柵將不斷改變紅外對(duì)管的通斷狀態(tài),從而實(shí)現(xiàn)對(duì)直流電機(jī)轉(zhuǎn)速的測(cè)量。uln2003a:uln2003a 是單片式 7 路達(dá)林頓三極管陣列,在本模組中用來(lái)驅(qū)動(dòng) 4 位 led
30、 數(shù)碼管。4 位數(shù)碼管:4位 8段共陽(yáng)極 led 數(shù)碼管,可用作電機(jī)轉(zhuǎn)速顯示,也可用于顯示其他內(nèi)容。根據(jù)畢業(yè)設(shè)計(jì)題目的要求,用凌陽(yáng)spce061a板自帶的語(yǔ)音芯片及喇叭播放國(guó)歌,spgt62c19b電機(jī)模組的步進(jìn)電機(jī)作為國(guó)旗升降的運(yùn)動(dòng)支持,4位數(shù)碼管顯示國(guó)旗升降的高度和時(shí)間顯示。spgt62c19b 是低電壓?jiǎn)纹讲竭M(jìn)電機(jī)驅(qū)動(dòng)器集成電路芯片,可驅(qū)動(dòng)一臺(tái)兩相步進(jìn)電機(jī),或者 兩臺(tái)直流電機(jī)。它帶有雙路 h 橋,可分別驅(qū)動(dòng)兩個(gè)獨(dú)立的 pnp功率管。每一個(gè) h橋都有各自獨(dú)立的使能引腳,因此非常適合于需要獨(dú)立控制的步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)。spgt62c19b輸出電壓可達(dá) 40v,輸出電流可達(dá) 750ma,由輸入
31、的邏輯電平來(lái)決定輸出脈沖的寬度及頻率,所以由這款芯片組成的電機(jī)驅(qū)動(dòng)系統(tǒng)將脈沖發(fā)生器、脈沖分配器、脈沖放大器合 為一體,省去了很多外圍器件。spgt62c19 的內(nèi)部由兩組完全相同的控制電路組成了兩路輸出通道。 輸入控制信號(hào)經(jīng)前級(jí)緩沖后送入片內(nèi)控制器,然后由控制部分進(jìn)行處理并驅(qū)動(dòng)晶體管,最后由 out 端口輸出驅(qū)動(dòng)信號(hào)以控制電機(jī)的運(yùn)行。spgt62c19b原理如圖3.4所示:圖3.4 spgt62c19b工作原理圖spgt62c19b的控制腳有如下 6 個(gè),如表3.2所示:表3.2 spgt62c19b 的控制引腳引腳名稱用途20 i01通道 1 的電流大小控制17 i11通道 1 的電流大小控
32、制16 phase1通道 1 的電流方向控制8 i02通道 2 的電流大小控制9 i12通道 2 的電流大小控制10 phase2通道 2 的電流方向控制以通道 1為例,控制口 i01與 i11的不同邏輯組合可使通道 1 輸出端產(chǎn)生不同大小的電流輸出,控制腳 i01與 i11邏輯組合與輸出電流的關(guān)系為表3.3所示:表 3.3 控制腳 i01與 i11邏輯組合與輸出電流的關(guān)系i01 邏輯值 i11 邏輯值輸出電流0 0 imax1 0 2/3*imax0 1 1/3*imax1 1 0 上表中,imax 是輸出電流的上限值,它與圖 3.3 中 vref 和 rs 的值有關(guān)。其關(guān)系式為:imax
33、= vref /10*rs:phase1 的邏輯電平值決定了該通道的電流輸出方向。phase1 與電流方向的對(duì)應(yīng)關(guān)系式如表3.4所示:表 3.4 控制腳 phase1 與輸出電流的關(guān)系i01 邏輯值 i11 邏輯值輸出電流0 0 imax1 0 2/3*imax0 1 1/3*imax1 1 0 3.2.2步進(jìn)電機(jī)驅(qū)動(dòng)電路的設(shè)計(jì)spgt62c19b 與61板之間的接口在模組上標(biāo)示為“j3” ,是 10pin 排針的形式。其中 ph1、ph2、i01、i02、i11、i12 對(duì)應(yīng)著 spgt62c19b 的 6個(gè)控制引腳;而 speed則是速度檢測(cè)信號(hào)輸出腳 。 可以直接用 10pin 排線將
34、j3 接口與 61 板 iob 的低 8 位(即 61 板的 j6)相連。 應(yīng)注意的是,模組接口標(biāo)示為“vdd”的腳應(yīng)與 61 板接口標(biāo) 示為“ +”的腳相對(duì)應(yīng),不能接反。另外,61 板的 i/o 供電電壓應(yīng)在 4.5v5.5v 之間。因此,要把 61 板的 i/o 電壓選擇跳線(61 板的 j5)跳至“5v”位置,并保證 61 板供電電壓在 4.5v 以上,建議使用 5v 穩(wěn)壓電源給 61 板供電。步進(jìn)電機(jī)和直流電機(jī)驅(qū)動(dòng)輸出接口是 spgt62c19b 驅(qū)動(dòng)芯片與電機(jī)之間的連接端口。 步進(jìn)電機(jī)接口在模組上標(biāo)示為 j10,是 4pin 排針形式,對(duì)應(yīng)著步進(jìn)電機(jī)的 4 根引線,以及 spgt62
35、c19b 的 out1a、out1b、out2a、out2b 這 4個(gè)輸出端。直流電機(jī)接口共有兩組,在模組上標(biāo)示為 j11 和 j12,分別對(duì)應(yīng) spgt62c19b的 out1和 out2兩個(gè)輸出通道;直流電機(jī)的兩根引 線可以與其中一組接口相接。spgt62c19b 芯片有兩個(gè)電源輸入口,分別給邏輯控制電路和電機(jī)驅(qū)動(dòng)電路供電。因此,需要外接獨(dú)立的電源給電機(jī)供電,要求外接電源的電壓在 5v12v 之間,并可以提供 750ma 以上 的電流。模組提供了兩種形式的電機(jī)供電電源接口,分別是 2pin 針座和直流穩(wěn)壓電源插座; 可以將外部電源連接在其中一組電源接口上。由于 spgt62c19b 支持一
36、臺(tái)步進(jìn)電機(jī)或兩臺(tái)直流電機(jī),而不能同時(shí)控制步進(jìn)電機(jī)與直流電機(jī),因此設(shè)置了“輸出選擇跳線”用于在步進(jìn)電機(jī)與直流電機(jī)之間切當(dāng)使用直流電機(jī)時(shí),要將 4個(gè)短接帽都跳接到“dc motor”一端;使用步進(jìn)電機(jī)時(shí),要將 4個(gè)短接帽跳接到“step motor”一端。利用spgt62c19b控制步進(jìn)電機(jī),兩相步進(jìn)電機(jī)的 4 根引線分為兩組,可分別連接spgt62c19b的兩個(gè)輸出通道。這樣就可以通過(guò) spgt62c19b的6個(gè)控制引腳使兩個(gè)輸出通道發(fā)出驅(qū)動(dòng)步進(jìn)電機(jī)所需的脈沖信號(hào)。步進(jìn)電機(jī)的工作原理如圖3.5所示,:圖3.5 步進(jìn)電機(jī)工作原理圖步進(jìn)電機(jī)與 spgt62c19b 的連接方法如表3.5所示:表 3.
37、5 步進(jìn)電機(jī)與 spgt62c19b 的連接方法 電機(jī)引線顏色 電機(jī)引線名稱 spgt62c19b引腳序號(hào) spgt62c19b引腳名稱 藍(lán) 1a 1 out1a 黃 1b 21 out1b 粉 2a 2 out2a 橙 2b 5 out2b每通道的輸出電流可以有 4 種狀態(tài),這為步進(jìn)電機(jī)提供了多種控制方式,可實(shí) 現(xiàn)“ 整步(full-step)” 、“ 半步(half-step)” 、“優(yōu)化半步(modified half-step)”等工作模式。這幾種工作模式的控制時(shí)序如下圖3.6所示:圖 3.6 步進(jìn)電機(jī)不同控制模式的時(shí)序圖本次畢業(yè)設(shè)計(jì)采用“整步(full-step)”工作方式。3.2.
38、3步進(jìn)電機(jī)驅(qū)動(dòng)的脈沖數(shù)的計(jì)算實(shí)現(xiàn)本系統(tǒng)的控制,關(guān)鍵在于將國(guó)旗升降高度與控制電機(jī)的轉(zhuǎn)向及回轉(zhuǎn)角度對(duì)應(yīng)起來(lái),二者緊密配合,最終實(shí)現(xiàn)對(duì)國(guó)旗升降的運(yùn)動(dòng)控制??刂齐姍C(jī)的轉(zhuǎn)向就可以控制國(guó)旗上升和下降,為了準(zhǔn)確實(shí)現(xiàn)可變的時(shí)間和高度控制的勻速升降,需要精確計(jì)算在一定人眼不能識(shí)別的時(shí)間內(nèi)的步進(jìn)電機(jī)的脈沖數(shù)。步進(jìn)電機(jī)我們選用“整步”工作方式,步進(jìn)電機(jī)的定軸直徑為1.27324cm,則每步拉出的線長(zhǎng)為0.02,完全符合精度的要求。高度可調(diào)步長(zhǎng)為1,可調(diào)時(shí)間間隔為1s。在程序設(shè)計(jì)中,我們運(yùn)用時(shí)間精度很高的spgt62c19b產(chǎn)生4khz的中斷脈沖送給單片機(jī)的外部中斷irq4。在整個(gè)上升或下降過(guò)程中,高度(high)為
39、總高度,可通過(guò)公式:步進(jìn)電機(jī)要轉(zhuǎn)動(dòng)的總步數(shù): 總步數(shù)=高度(high)/0.02;分次轉(zhuǎn)動(dòng)的次數(shù)為: 次數(shù)=總時(shí)間(time)*32;每(1/32s)走的步數(shù): 步數(shù)=總步數(shù)/次數(shù);除后余數(shù)的步數(shù)為: 余步數(shù)=總步數(shù)%次數(shù)。這樣步進(jìn)電機(jī)在轉(zhuǎn)動(dòng)時(shí)需要沒(méi)1/32s走一次,系統(tǒng)不可避免地會(huì)出現(xiàn)余數(shù)的現(xiàn)象,這里我們采用插補(bǔ)補(bǔ)償?shù)姆椒▉?lái)解決這個(gè)問(wèn)題。處理思路為:我們分兩種情況考慮,當(dāng)余步數(shù)為0時(shí),每次按計(jì)算的步數(shù)運(yùn)轉(zhuǎn)一定的次數(shù)就能滿足要求;當(dāng)余步數(shù)不為0時(shí),先在循環(huán)程序中分余步數(shù)次運(yùn)轉(zhuǎn)步數(shù)的基礎(chǔ)上再加一次,然后再按正常的步數(shù)轉(zhuǎn)動(dòng)。開(kāi)始運(yùn)動(dòng)時(shí)打開(kāi)外部中斷,結(jié)束后等待中斷到來(lái)再進(jìn)入下一次循環(huán)。上升和下降的原
40、理類似。在步進(jìn)電機(jī)運(yùn)動(dòng)的過(guò)程中,實(shí)時(shí)顯示運(yùn)動(dòng)時(shí)間和所在位置,并不斷保護(hù)現(xiàn)場(chǎng)數(shù)據(jù),存放于spgt62c19b中。國(guó)旗運(yùn)動(dòng)的控制:在主程序中,系統(tǒng)的按鍵共有3個(gè),其中上升鍵、下降鍵為優(yōu)先掃描鍵,開(kāi)始鍵則為高級(jí)中斷鍵。1)“上升鍵”按下時(shí),對(duì)spce061a輸出播音控制信號(hào)播放國(guó)歌,國(guó)旗經(jīng)43s的時(shí)間勻速上升至旗桿頂端,國(guó)歌播放完畢。此時(shí)程序只掃描下降鍵,下降鍵按下有效時(shí),國(guó)旗經(jīng)43s的時(shí)間勻速下降至地端。2)“下降鍵”按下時(shí),此時(shí)程序只掃描下降鍵,下降鍵按下有效時(shí),國(guó)旗經(jīng)43s的時(shí)間勻速下降至地端。3)“開(kāi)始鍵”何條件下都有效,當(dāng)按下時(shí),系統(tǒng)會(huì)恢復(fù)原始狀態(tài)。此鍵主要用于程序跑飛的情況下。上述的按鍵
41、,不同的優(yōu)先級(jí)是它們具有不同的使能有效時(shí)段,這樣在操作過(guò)程中不會(huì)因?yàn)檎`操作而產(chǎn)生影響。掉電現(xiàn)場(chǎng)的保護(hù)主要包括兩個(gè)方面:一是斷掉電后國(guó)旗位置不變,二是斷掉電之后重新合上電源,旗幟所在的高度數(shù)據(jù)顯示不變。前者的保護(hù)措施是通過(guò)使用電磁閥緊急滯動(dòng)來(lái)實(shí)現(xiàn),為了保障斷電后再次加電時(shí),國(guó)旗所在的高度和數(shù)據(jù)顯示不變。在每次中斷數(shù)據(jù)改變時(shí),把國(guó)旗所在的精確位置和狀態(tài)寫在spgt62c19b芯片中。在下次上電時(shí),首先讀spgt62c19b芯片的數(shù)據(jù),檢查國(guó)旗所在的位置。細(xì)分狀態(tài)如下:1)如果在0cm位置,不做處理。2)如果在86cm位置,此時(shí)為升旗狀態(tài)上升的最高點(diǎn),查詢下降鍵,等待下降鍵按下。當(dāng)下降鍵按下時(shí),國(guó)旗
42、經(jīng)過(guò)43s的時(shí)間勻速下降至0cm最低端處。3)當(dāng)下降鍵按下時(shí),國(guó)旗從最高點(diǎn)86cm,后經(jīng)過(guò)43s的時(shí)間下降至0cm最低端處。這整個(gè)過(guò)程中,所存的位置數(shù)據(jù)一定要精確,確保不出現(xiàn)誤差積累現(xiàn)象。3.3顯示電路的設(shè)計(jì)用spgt62c19b模組提供的 4位共陰極 led 數(shù)碼管做顯示器,數(shù)碼管采用 uln2003a 為其提供驅(qū)動(dòng)電流uln2003a 是 7路達(dá)林頓三極管陣列,這里用到了其中的 4路,分別連接到數(shù)碼管的 4個(gè)位選腳 g1g4。g1g4設(shè)置列表如表3.6所示:表3.6 數(shù)碼管設(shè)置列表g1g2g3 g4 時(shí)間十位時(shí)間個(gè)位高度十位高度個(gè)位1) g1、g2數(shù)碼管分別顯示在某一種運(yùn)行狀態(tài)下,運(yùn)動(dòng)的時(shí)
43、間,上升和下降時(shí)間不累計(jì)。時(shí)間以s為單位,當(dāng)高位為零時(shí)自動(dòng)消隱。2) g3、g4數(shù)碼管顯示此時(shí)國(guó)旗所在高度,以cm為單位。當(dāng)高位為“0”時(shí),只顯示中間的行線,不消隱。數(shù)碼管顯示接口包括 “段控制” 接口和“位控制” 接口。它們?cè)谀=M中被標(biāo)示為 “j1” 和“j2”??梢杂?10pin 排線將模組的 j1與 61 板的 ioa 低 8 位(即 61 板的 j8)相連,模組的 j2 與 61 板的 ioa 高 8 位(即 61 板的 j9) 相連。連接時(shí)要注意模組接口標(biāo)示為“vdd”的腳應(yīng)與 61 板接口標(biāo)示為“+”的腳相對(duì)應(yīng),不能接反。3.4按鍵電路的設(shè)計(jì)用凌陽(yáng)spce061a板的三位按鍵,作為
44、鍵盤輸入寄存器,并入串出接口芯片串行接入到單片機(jī)。按鍵操作說(shuō)明如表3.7所示:表3.7 按鍵操作說(shuō)明表1號(hào)2號(hào)3號(hào)開(kāi)始鍵上升鍵下降鍵當(dāng)按下key1開(kāi)始鍵時(shí)位置顯示為0,則不處理可以按鍵;當(dāng)位置顯示86cm,表示上次斷電時(shí)國(guó)旗在頂端,此時(shí)升旗無(wú)效;必須先按下下降鍵把國(guó)旗降下,才能進(jìn)行其它功能操作;按下下降鍵,國(guó)旗降至底端,才能進(jìn)行其它功能操作;開(kāi)機(jī)后,國(guó)旗自動(dòng)下降至底端,開(kāi)始進(jìn)行其它功能操作。1)升旗國(guó)旗在非運(yùn)動(dòng)狀態(tài)下的最底端時(shí),按下key2上升按鍵后,國(guó)歌起,國(guó)旗緩緩上升, g1、g2兩位數(shù)碼管顯示工作時(shí)間,g3、g4兩位數(shù)碼管顯示國(guó)旗所在位置,43s后到達(dá)頂點(diǎn),國(guó)歌停,國(guó)旗停止,運(yùn)動(dòng)時(shí)間顯示
45、43s,位置顯示86cm,鍵號(hào)只顯示中間的橫線。此時(shí)除下降鍵以外的其它鍵都不工作,等待下降鍵按下。2)降旗當(dāng)key3下降鍵按下時(shí),運(yùn)動(dòng)時(shí)間顯示0s,國(guó)旗開(kāi)始勻速下降,43s后到達(dá)低端,下降時(shí)國(guó)歌不播放。第4章 自動(dòng)控制升降旗系統(tǒng)的軟件設(shè)計(jì)4.1自動(dòng)控制升降旗系統(tǒng)的軟件設(shè)計(jì)方案整個(gè)系統(tǒng)的主要任務(wù)是執(zhí)行升旗、降旗、國(guó)歌播放、計(jì)時(shí),計(jì)算高度并顯示國(guó)旗實(shí)時(shí)運(yùn)行時(shí)間及所在高度等功能,這樣系統(tǒng)軟件設(shè)計(jì)就可以分塊完成。系統(tǒng)上電后進(jìn)行初始化,上升鍵按下時(shí),電機(jī)正轉(zhuǎn),裝載國(guó)歌語(yǔ)音模型,定時(shí)計(jì)數(shù)器timera開(kāi)始計(jì)數(shù),計(jì)數(shù)器每加1s,國(guó)旗高度計(jì)算一次,高度加2cm,時(shí)間高度數(shù)據(jù)送入顯示子程序,led顯示子程序開(kāi)始
46、掃描數(shù)據(jù)并顯示,上升到最高處86cm處,電機(jī)停轉(zhuǎn),國(guó)歌停奏,按下下降鍵時(shí),電機(jī)反轉(zhuǎn)到最低位置0cm處停止,并實(shí)時(shí)顯示國(guó)旗運(yùn)行時(shí)間及所在高度。本系統(tǒng)軟件主流程圖如圖4.1所示:圖4.1 系統(tǒng)主流程圖4.2計(jì)時(shí)子程序的設(shè)計(jì)該子程序的主要功能是實(shí)現(xiàn)國(guó)旗運(yùn)行的計(jì)時(shí),寄存器irq5入棧讀入數(shù)據(jù),判斷是否為2khz中斷,是則對(duì)升降國(guó)旗的時(shí)間進(jìn)行計(jì)時(shí),同時(shí)可作為國(guó)歌播放時(shí)間,使用定時(shí)計(jì)數(shù)器timera進(jìn)行計(jì)數(shù),計(jì)數(shù)到43s時(shí)電機(jī)停轉(zhuǎn),中斷返回到主程序。計(jì)時(shí)子程序流程圖如圖4.2所示:圖4.2 計(jì)時(shí)子程序流程圖4.4顯示子程序的設(shè)計(jì)該子程序的主要功能是實(shí)現(xiàn)國(guó)旗時(shí)間及高度的顯示,由于led顯示為段碼的顯示,所以
47、處理后的十進(jìn)制數(shù)要首先取段碼,然后送顯示單元。在發(fā)生中斷和等待中斷時(shí),都對(duì)顯示子程序進(jìn)行了調(diào)用,完成了實(shí)時(shí)顯示的要求。本設(shè)計(jì)的顯緩單元為ox702d存儲(chǔ)單元ox0040,采用四位led顯示,先把要顯示的數(shù)據(jù)存入對(duì)應(yīng)的顯緩單元,然后查表取段碼,將段碼經(jīng)iob1iob4口送給led顯示,四位位選碼由iob5iob8控制。顯示子程序流程圖如圖4.3所示:圖4.3 顯示子程序流程圖4.5語(yǔ)音子程序的設(shè)計(jì)該語(yǔ)音子程序要求演奏國(guó)歌,其時(shí)間為43秒鐘,所以選用的語(yǔ)音芯片其錄放時(shí)間應(yīng)大于43秒鐘,即在此選用語(yǔ)音芯片spy0300,其錄放時(shí)間為60秒,完全符合本設(shè)計(jì)的要求,我們把國(guó)歌音樂(lè)裝載在spy0300語(yǔ)音
48、芯片中,然后初始化語(yǔ)音子程序,獲取國(guó)歌語(yǔ)音數(shù)據(jù),在運(yùn)行環(huán)境下初始化sacm_s480類型語(yǔ)音模式,就緒后播放國(guó)歌,解碼并填充隊(duì)列將國(guó)歌的語(yǔ)音數(shù)據(jù)加載到sacm_s480播放文件中,否則沒(méi)有數(shù)據(jù)。等待國(guó)歌播放完畢中斷返回主程序。語(yǔ)音子程序流程圖如圖4.4所示: 圖4.4 語(yǔ)音子程序流程圖第5章 系統(tǒng)調(diào)試與結(jié)果分析5.1系統(tǒng)的硬件調(diào)試整個(gè)系統(tǒng)搭接完畢,首先對(duì)硬件進(jìn)行檢查聯(lián)線有無(wú)錯(cuò)誤,再逐步對(duì)各模塊進(jìn)行硬件調(diào)試。由于本設(shè)計(jì)采用的是整體的61板及電機(jī)模組,因此,在硬件調(diào)試部分只要將61板自檢程序及電機(jī)模組自檢程序下載到各自的核心芯片中,運(yùn)行后61板可以進(jìn)行國(guó)歌播放,電機(jī)模組的電機(jī)可以正反轉(zhuǎn),led可以
49、顯示時(shí)間高度就證明硬件調(diào)試成功。5.2系統(tǒng)的軟件調(diào)試首先寫入電機(jī)控制小程序,控制其正反轉(zhuǎn),停機(jī)均正常。根據(jù)高度加入步長(zhǎng)脈沖調(diào)試,其控制升、降旗以及與語(yǔ)音子程序同步均符合要求。加入按鍵和顯示時(shí)間、高度子程序,均正常工作,通過(guò)編碼,可實(shí)現(xiàn)升降旗與停止功能。音樂(lè)播放程序調(diào)試過(guò)程:1) 在網(wǎng)絡(luò)上找到播放一遍的國(guó)歌,把音樂(lè)文件格式轉(zhuǎn)換為.wave格式的文件,再用凌陽(yáng)公司提供的compress tool裝換工具將.wave的音樂(lè)文件轉(zhuǎn)換為61板能是別的.72k的音樂(lè)文件2) 新建一個(gè)工程 ex3_s480_auto,在工程里新建 main.c 文件和 isr.asm 文件。 3) 拷貝頭文件:把 s480
50、.h 和 s480.inc 兩個(gè)文件拷貝到 ex3_s480_auto 工程文件夾。 4) 拷貝支持文件:把 hardware.h、hardware.inc 兩個(gè)頭文件和 hardware.asm 匯編語(yǔ)言文件拷貝到 ex3_s480_auto 工程文件夾。 5) 拷貝庫(kù)文件:把 sacmv26e 語(yǔ)音庫(kù)文件(文件名為:sacmv26e.lib)拷貝到ex3_s480_auto 工程文件夾。 6) 拷貝資源文件:可以在 ide 的安裝路徑 spce061avoiceexaex3_s480_autovoice 找到.72k的音樂(lè)文件,把這個(gè)語(yǔ)音資源文件拷貝到 ex3_s480_auto 工程文件
51、夾。 7) 從工程文件夾當(dāng)中,添加剛剛拷貝的音樂(lè)資源文件到 ex3_s480_auto 工程。 8) 包含 sacmv26e.lib 庫(kù)到 ex3_s480_auto 工程中。 9) 添加 hardware.asm文件到資源文件夾。 10) 在main.c文件開(kāi)始包含頭文件s480.h和hardware.h,在isr.asm文件開(kāi)始包含s480.inc和 hardware.inc。11) 按照程序流程圖編寫程序。 12) rebuild all,出現(xiàn)沒(méi)有定義 t_sacm_s480_speechtable 的錯(cuò)誤。 13) 在 resource.asm 文件中定義語(yǔ)音資源表和語(yǔ)音播放順序。 14) rebuild all,如果沒(méi)有其他錯(cuò)誤,下載程序到實(shí)驗(yàn)箱。把 j8 中(dac1)的跳線設(shè)置為靠近
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度生態(tài)園區(qū)代建工程合同模板4篇
- 2025年度殯儀館遺體運(yùn)輸與悼念活動(dòng)全程服務(wù)合同書(shū)3篇
- 2024年版婚內(nèi)共同財(cái)產(chǎn)管理及使用合同
- 2025年度新能源儲(chǔ)能項(xiàng)目搭建與銷售合同4篇
- 2025年度化工企業(yè)環(huán)境風(fēng)險(xiǎn)防控合同3篇
- 2025年度大豆國(guó)際貿(mào)易結(jié)算與清算服務(wù)合同3篇
- 2025年度土地承包經(jīng)營(yíng)權(quán)評(píng)估服務(wù)承包合同示范文本3篇
- 2025年農(nóng)業(yè)綠色發(fā)展土地種植承包合同4篇
- 2024綜藝節(jié)目制作與發(fā)行合同
- 2025年度水上運(yùn)輸安全生產(chǎn)責(zé)任與保障協(xié)議3篇
- 直播帶貨助農(nóng)現(xiàn)狀及發(fā)展對(duì)策研究-以抖音直播為例(開(kāi)題)
- 腰椎間盤突出疑難病例討論
- 《光伏發(fā)電工程工程量清單計(jì)價(jià)規(guī)范》
- 2023-2024學(xué)年度人教版四年級(jí)語(yǔ)文上冊(cè)寒假作業(yè)
- (完整版)保證藥品信息來(lái)源合法、真實(shí)、安全的管理措施、情況說(shuō)明及相關(guān)證明
- 營(yíng)銷專員績(jī)效考核指標(biāo)
- 陜西麟游風(fēng)電吊裝方案專家論證版
- 供應(yīng)商審核培訓(xùn)教程
- 【盒馬鮮生生鮮類產(chǎn)品配送服務(wù)問(wèn)題及優(yōu)化建議分析10000字(論文)】
- 肝硬化心衰患者的護(hù)理查房課件
- 2023年四川省樂(lè)山市中考數(shù)學(xué)試卷
評(píng)論
0/150
提交評(píng)論