2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  公交車自動報站系統(tǒng)的設計</p><p><b>  前言 </b></p><p>  根據(jù)AT89C51單片機的特點和公交車報站器的特點,本文提出了一種用單片機控制語音芯片進行公交車語音自動報站的方法。同時給出了軟硬件設計的方法,設計過程中包括硬件電路設計和軟件程序編寫兩個方面,解釋了單片機在應用過程中的方法和可能出現(xiàn)的問題。本文主要介紹硬件

2、電路設計部分。利用AT89C51作為控制器,通過ISD4004語音芯片建立語音信息庫,形成變化多樣的語音信息,利用其功放播放語音信息以及提示語音,同時運用LED數(shù)碼管進行站數(shù)顯示。當公交車到達某站點,用鍵盤控制本系統(tǒng)工作,通過語音電路輸出語音信息和提示,同時站數(shù)信息在LED數(shù)碼管上顯示。整個系統(tǒng)硬件設計包括鍵盤電路、復位電路、顯示驅動電路、顯示電路、內存擴展電路模塊。本系統(tǒng)很大程度上提高公交車報站的準確性,可靠性。提高了公交系統(tǒng)的服務質

3、量。促進城市經(jīng)濟發(fā)展和交通變化的和諧發(fā)展。 </p><p><b>  1 方案論證</b></p><p><b>  1.1 方案1</b></p><p>  公交車站自動報站器的設計,對車輪軸的轉角的脈沖進行計數(shù),將計數(shù)值與預置值對比,即可確定報站時刻,達到準確自動的目的。以AT89C51為主控芯片,對外來脈

4、沖計數(shù),結合語音芯片ISD4004輸出語音。系統(tǒng)由脈沖檢測、脈沖計數(shù)、CPU控制、控制信號、語音芯片、輸出顯示等組成。原理框圖如圖所示。</p><p>  圖1.1-1 原理框圖</p><p>  ●脈沖檢測:該系統(tǒng)關鍵是對轉軸所轉過的圈數(shù)進行計數(shù),考慮到車輛將在復雜的 環(huán)境中運行,故采用可靠的霍爾元件DN6848作為信號的采集裝置,再經(jīng)光電耦合器4N25輸入給單片機。</p&g

5、t;<p>  ●脈沖計數(shù):光電耦合器的信號進入C51后,采用中斷方式對脈沖計數(shù)。外部晶振12MHz。</p><p>  ●CPU控制:程序中將計數(shù)值于預置值進行比較,判斷是否到站,當?shù)秸緯r就輸出信號控制語言芯片進行報站。</p><p>  ●控制按鍵:用于手動控制、手動調整、預置值的輸入等</p><p>  ●語言芯片:由專用語音芯片ISD40

6、04組成,可擦寫,便于在不同公交線上使用。</p><p>  ● 輸出顯示:LED點陣漢字顯示。</p><p>  ●預置存儲:采用兩種方式存儲,一種是在燒寫器上將數(shù)據(jù)寫入,另一種是在車上,單片機處于輸入狀態(tài),車輛行駛一遍,將站與站之間的脈沖數(shù)寫入片內。</p><p><b>  1.2 方案2</b></p><p

7、>  利用8031單片機作為CPU來進行總體控制,當汽車到達某站時,汽車司機通過鍵盤來控制本系統(tǒng)進行工作,并且,系統(tǒng)將使用狀態(tài)指示電路,向司機指示出當前的行駛方向及站號(如與實際方向不符,司機可通過鍵盤來調整)。原理圖如圖1.2-1所示。</p><p>  圖1.2-1 原理框圖</p><p>  本系統(tǒng)使用8031作為CPU,由CPU來控制語音合成芯片TC8830AF,使其工

8、作在CPU控制模式下。當系統(tǒng)進行語音再生時,由CPU控制語音合成電路中的語音芯片來讀取其外接的存儲器內部的語音信息,并合成語音信號,再通過語音輸出電路,進行語音報站和提示。CPU同時通過程序讀取漢字信息,送入LED點陣顯示電路來進行漢字提示。當系統(tǒng)進行語音錄制時,語音信號通過語音輸入電路輸入給語音合成電路中的語音合成芯片,由語音合成芯片進行數(shù)據(jù)處理,并將生成的數(shù)字語音信息存儲到語音存儲芯片中,從而建立語音庫。</p>&l

9、t;p>  2 硬件電路的設計</p><p>  2.1 單片機的原理</p><p>  AT89C51單片機的結構框圖如圖2.1-1所示。它主要由下面幾個部分組成:1個8位中央處理單元(CPU)、片內Flash存儲器、片內RAM、4個8位的雙向可尋址I/O口、1個全雙工UART(通用異步接收發(fā)送器)的串行接口、2個16位的定時器/計數(shù)器、多個優(yōu)先級的嵌套中斷結構,以及一個片

10、內振蕩器和時鐘電路。在AT89C51單片機結構中,最顯著的特點是內部含有Flash存儲器,而在其他方面的結構,則和某公司的8051的結構沒有太大的區(qū)別。</p><p>  圖2.1-1 AT89C51單片機的結構框圖</p><p>  2.2 振蕩器電路的設計</p><p>  圖2.2-1 外部時鐘接法</p><p>  在圖

11、中給出了外接元件,即外接晶體及電容C1,C2,并組成并聯(lián)諧振電路。在電路中,對電容C1和C2的值要求不是很嚴格,如果用高質的晶振,則不管頻率為多少,C1,C2通常都選擇30pF。有時,在某些應用場合,為了降低成本,晶體振蕩器可用陶瓷振蕩器代替。如果使用陶瓷振蕩器,則電容C1,C2的值取47pF。</p><p>  圖2.2-2 AT89C51單片機內部振蕩器電路</p><p>  2

12、.3 復位電路的設計</p><p>  圖2.3-1 手動復位電路</p><p>  一般采用的辦法是在RST端和正電源VCC之間接一個按鈕。當人為按下按鈕時,則VCC的+5V電平就會直接加到RST端。由于人的動作很快也會使按鈕保持接通達數(shù)十毫秒,所以,保證能滿足復位的時間要求。手動復位的電路如圖2.3-1所示。</p><p>  通常,在單片機中對所使用的

13、振蕩晶體的參數(shù)要求如下:</p><p>  ESR(等效串聯(lián)電阻):根據(jù)所需頻率按圖2.3-2選取。</p><p>  C0(并聯(lián)電容):最大7.0pF。</p><p>  CL(負載電容):30pF+3pF。</p><p>  通常,其誤差及溫度變化的范圍要按系統(tǒng)的要求來確定。</p><p>  在本設計中

14、,采用的是內部方式,在XTAL1和XTAL2引腳上外接一個12MHZ的晶振及兩個47pF的電容組成。</p><p>  圖2.3-2 片內振蕩器等效電路</p><p>  2.4 脈沖檢測電路的設計</p><p>  圖2.4-1 脈沖檢測電路</p><p>  本設計的關鍵是對轉軸所轉過的圈數(shù)進行計數(shù),考慮到車輛將在復雜的環(huán)境中運

15、行,而霍爾元件具有耐震動,不怕灰塵、油污、水汽及鹽霧等的污染或腐蝕的優(yōu)點,故采用可靠的霍爾元件DN6848作為信號采集裝置,再經(jīng)過光電耦合器4N25輸入給單片機。光電耦合器的電流傳輸比為10%~250%,響應時間小于10us,其電路如圖2.4-1所示。</p><p>  2.5 LED顯示</p><p>  圖2.5-1 LED點陣漢字顯示電路</p><p&g

16、t;  LED顯示器是用發(fā)光二極管構成的顯示器。構成方式有兩大類:一是筆段字符式,一般又有三種:7段(/8段)數(shù)碼管、15段(/17段)數(shù)碼管和6段符號顯示器;二是點陣字符式,一般有5×7、5×8、8×8和16×16等若干種點陣結構。為了適應不同電路的需要,根據(jù)構成LED顯示器的發(fā)光二極管公共極的極性,有共陰極和共陽極兩種形式。對共陰極數(shù)碼管,公共陰極接地,當各段陽極上的電平為高電平時,該段接通亮

17、,電平為0時,該段關斷不亮。對共陽極數(shù)碼管則剛好相反,高電平時不亮,低電平時亮。這種器件根據(jù)顯示數(shù)位分類,可以分為一位、雙位和多位LED顯示器,一位LED顯示器就稱作LED數(shù)碼管,兩位以上的一般就稱作LED顯示器。</p><p>  7段(/8段)數(shù)碼管顯示器</p><p>  7段(/8段)數(shù)碼顯示器的每個數(shù)位都是由7段筆段組成,通過不同筆段的組合就可以顯示不同的數(shù)字和部分字母以及其

18、他符號。其第8筆段一小數(shù)點形式位于字符的右下方。</p><p>  15段(/17段)數(shù)碼管顯示器</p><p>  15段(/17段)數(shù)碼顯示器的每個數(shù)位都是由14(/16)段數(shù)碼管組成外框加“米”構成,通過不同筆段的組合,不但可以顯示所有的數(shù)字,還可以顯示所有的26個英文字母和其他符號。15段與17段顯示器的區(qū)別在于外框上下兩橫結構不一樣,17段顯示器的上橫和下橫分別被分成兩個筆段

19、,而15段顯示器則分別為一個筆段。17段顯示器可以顯示兩種尺寸不同的數(shù)字,一種為半尺寸瘦型數(shù)字,另一種為全尺寸的寬型數(shù)字;而15段顯示器則只能顯示全尺寸的數(shù)字。</p><p>  本電路采用16*256的LED點陣顯示屏來顯示16個16*16的漢字,采用顯存U14來存放漢字點陣信息。顯示屏分32頁,每頁由16行8列LED發(fā)光二極管構成,在LED點陣顯示屏中,用一片4-16譯碼器74LS154進行行譯碼,將地址A

20、0-A3譯碼形成行信號,用兩片4-16譯碼器74LS154組成一個5-32譯碼器,進行頁譯碼,將地址A4-A8譯碼形成頁選通信號,分別用以選通一片74LS244,系統(tǒng)通過此74LS244的數(shù)據(jù)線向該頁的某行(由A0-A3譯碼選通)上的8個發(fā)光二極管送入顯示信息。九位地址線A0—A8的地址范圍為0—511,分別對應顯示屏的第1頁的第1行到第32頁的第16行,地址線A0—A8與顯存U14的地址輸入管腳相連接,因此U14中的第1到第512字節(jié)

21、中的數(shù)據(jù)存放的是對應顯示屏中第1頁的第1行到第32頁的第16行的顯示數(shù)據(jù)信息。系統(tǒng)通過循環(huán)地址的方法將U14中的每個單元的數(shù)據(jù)送入顯示屏的第1頁的第1行到第32頁的第16行,適當選擇循環(huán)周期,即可實現(xiàn)漢字的顯示。循環(huán)的地址信號由計數(shù)器U13所構成的九位二進制循環(huán)計數(shù)器產(chǎn)生,并通過緩沖器U7和U9的第1組通道送給U14和上述三</p><p><b>  3 軟件設計</b></p>

22、;<p>  3.1 主程序圖:</p><p>  圖3.1-1 整體流程圖</p><p>  3.2 主程序清單</p><p>  MOV TMOD, #0F8H; 外部中斷0工作在方式1</p><p>  MOV TH0, #0FFH ;設計數(shù)初值</p><p

23、>  MOV TL0, #0FEH;</p><p>  SETB EA ;開放中斷</p><p>  SETB TR0</p><p>  SETB IE0 </p><p>  MOV R0, #20H ;軟件計數(shù)器地址值</p><

24、p>  MOV R1, #11</p><p>  MOV A, #0</p><p>  MOVX @R0, A ;軟件計數(shù)器清零</p><p>  SETB 21H.0 ;設中斷標志位</p><p>  AJMP $

25、;等待中斷</p><p><b>  RET</b></p><p>  L1: CPL 21H</p><p>  MOV TH0, #0FFH</p><p>  MOV TL0, #0FEH</p><p>  MOVX A, @R0</p>

26、<p><b>  CLR C</b></p><p>  CJNE A, #0FFH, L2 ;計滿,轉移</p><p>  INC A ;未滿,計數(shù)值加1</p><p>  MOVX @R0, A</p><p><b>

27、  INC R0</b></p><p>  L2: INC R0 ;計數(shù)器地址值加1</p><p><b>  INC A</b></p><p><b>  INC R1</b></p><p>  MOVX @R0,

28、 A ;計數(shù)值加1</p><p><b>  RETI</b></p><p>  ORG 1000H</p><p>  JNB P1.0, P0 ;P1.0=0,手動</p><p>  MOV DPTR, #2000H</p><

29、p>  P0: JB P1.1, $ ;未到站,等待</p><p>  MOVX A, @R0 ;讀入高位計數(shù)值</p><p>  MOVX @DPTR, A</p><p>  MOV A, #0</p><p>  MOVX @R0,

30、A</p><p><b>  DEC R0</b></p><p>  INC DPTR</p><p>  MOVX A, @R0 ;讀入低位計數(shù)值</p><p>  MOVX @DPTR, A</p><p>  MOV A, #0

31、</p><p>  MOVX @R0, A</p><p>  INC DPTR</p><p><b>  LJMP P0</b></p><p>  T0: JNB P1.2, T1 ;P1.2=0,反向</p><p>  LCALL

32、 C0 ;正向</p><p><b>  RET</b></p><p>  T1: MOVX A, @R0 ;取計數(shù)值高位</p><p>  DEC DPTR</p><p>  MOVX 30H, @DPTR

33、 ;路程值高位</p><p><b>  CLR C</b></p><p>  T2: CJNE A, 30H, T3 ;高位相等</p><p>  LJMP T3 ;不等繼續(xù)比較</p><p>  T3: INC DP

34、TR</p><p><b>  DEC R0</b></p><p>  MOVX 31H, @DPTR ;路程值低位</p><p>  MOVX A, @R0 ;計數(shù)值低位</p><p><b>  CLR C</b>&

35、lt;/p><p>  T4: CJNE A, 31H, T5 ;低位不相等</p><p><b>  LJMP T4</b></p><p>  T5: LCALL PLAY ;調用語音報站程序</p><p>  DEC DPTR<

36、/p><p><b>  LJMP T1</b></p><p><b>  RET</b></p><p>  C0: MOVX A, @R0 ;取計數(shù)值高位</p><p>  MOVX 32H, @DPTR ;路程高位<

37、/p><p><b>  CLR C</b></p><p>  C1: CJNE A, 32H, C2 ;高位相等</p><p>  LJMP C2 ;不等繼續(xù)比較</p><p>  C2: INC DPTR</p>

38、<p><b>  DEC R0</b></p><p>  MOVX A, @R0</p><p>  MOVX 33H, @DPTR</p><p><b>  CLR C</b></p><p>  C3: CJNE A, 33H, C4

39、 ;相等轉移</p><p><b>  LJMP C3</b></p><p>  C4: LCALL PLAY ;調用語音程序</p><p>  INC DPTR</p><p><b>  RET;</b></p>&

40、lt;p>  3.3 LED漢子顯示程序的設計</p><p>  LED漢字顯示過程:首先P1.6置低電平(平時為高電平),封鎖計數(shù)器U13的計數(shù)脈沖CP,同時選通緩沖器U8和U9的第2組通道,使單片機送入的地址信號A0—A8通過緩沖器(U8、U9)作為顯存的地址信號,單片機送來的數(shù)據(jù)(P0.0—P0.7)就可以通過緩沖器U12寫入顯存(P1.6已為低電平)中的對應地址單元內,顯示信息完全寫入后,P1.

41、6被置成高電平,計數(shù)脈沖CP開鎖,計數(shù)器U13工作,循環(huán)提供9位地址信號,使顯存中的點陣數(shù)據(jù)被循環(huán)送入顯示屏),以實現(xiàn)漢字提示信息的顯示輸出。</p><p>  LED漢字顯示程序:</p><p>  MOV R2, #16 ;16個字</p><p>  MOV DPTR, #CDATD ;字模庫首

42、地址</p><p>  SHU1: MOV A, #DAT ;要顯示字的代碼首地址</p><p>  MOV B, #16 ;每個字符占16個字節(jié)</p><p>  MUL AB ;代碼*16</p><p>  

43、ADD A, DPL</p><p>  MOV DPL, A</p><p>  MOV A, B</p><p>  ADDC A, DPH</p><p>  MOV DPH, A</p><p>  MOV R0, 16 ;每個字符16

44、個字節(jié)</p><p>  CLR P1.6 ;寫入顯存數(shù)據(jù)</p><p><b>  CLR CP</b></p><p>  MOV R1, #00H ;顯存數(shù)據(jù)存儲首地址</p><p>  SHU2: MOVX R1,

45、@DPTR</p><p>  INC R1 ;地址值加1</p><p>  INC DPTR</p><p>  DJNZ R0, SHU2 ;第一個字的顯存存完否</p><p><b>  INC DAT</b></p&g

46、t;<p>  DJNZ R2, SHU1 ;16個字存完否</p><p>  SETB P1.6 ;送數(shù)、顯示</p><p><b>  SETB CP</b></p><p><b>  RET</b></p>

47、<p><b>  4 結束語</b></p><p>  此次設計的公交車自動報站器初始值存入的方式是在車上,單片機處于輸入狀態(tài),車輛行駛一遍,將站與站之間的脈沖數(shù)寫入片內,該方式在公交車改變路線時便于修改。系統(tǒng)選用ISD4004語音芯片,它的錄音數(shù)據(jù)被存放方法是通過ISD多級存儲專利技術實現(xiàn)的,用聲音和聲頻信號的自然形式直接存放在故態(tài)存儲器,從而提供高質量回放語音的保真度

48、,使得該系統(tǒng)與其他語音報站系統(tǒng)相比較,語音質量較好。另外,本設計仍然存在的許多的不足之處,比如,對知識的了解還不是那么的深刻,不能很好的運用于實踐。</p><p>  在設計過程中,我得到了周圍許多人的幫助,在此我對他們表示忠心的感謝。首先我要感謝的是我的指導老師XX老師和XX老師,這個設計的每個細節(jié)和每個數(shù)據(jù),都離不開你的細心指導,你嚴謹細致、一絲不茍的作風一直是我學習的榜樣;你循循善誘的教導和不拘一格的思路

49、給予我無盡的啟迪。其次,我要感謝XX等同學在軟件設計方面給予我的幫助。再次我要感謝我的室友們,從遙遠的家來到這個陌生的城市里,是你們和我共同維系著彼此之間姐妹般的感情,維系著寢室那份家的融洽。三年了,仿佛就在昨天。三年里,我們沒有紅過臉,沒有吵過嘴,沒有發(fā)生上大學前所擔心的任何不開心的事情。感謝你們,一路有你!</p><p><b>  參考文獻:</b></p><p

50、>  [1] 謝淵: 電路分析, 清華大學出版社, 2003.4, P90-93</p><p>  [2] 韋宏利: 語音芯片在報站器中的應用, 現(xiàn)代電子技術, 2003.13, P30-P31</p><p>  [3] 袁成: 自動報站設備, 城市公用事業(yè), 2003.17, P42-P43</p><p>  [4] 余永權: ATMEL89系

51、列單片機應用技術, 北京航空航天出版社,2003.4 P45-P47</p><p>  [5] 張俊謨: 單片機中級教程, 北京航空航天大學出版社,1999, P74-P76</p><p>  [6] 竇振中: 單片機外圍器件實用手冊, 北京航空航天大學出版社,2003,P39-P41</p><p>  [7] 蘇文平: 新型電子電路應用實例精選, 北京

52、航空航天大學出版社,2004, P23-P24</p><p>  [8] 付麗輝: 汽車自動報站器的設計, 世界電子元器件, 2003.3, P70-P71 </p><p>  [9] 梁子伊: ISD4004系列語音芯片的單片機控制技術, 單片機與嵌入式系統(tǒng)應用, </p><p>  2003.7, P61-P62</p><p>

53、;  [10] 付蓉: LED點陣漢字顯示, 實用無線電, 1998.2, P7-P9</p><p>  [11] 李群芳: 單片機原理接口與應用, 清華大學出版社, 2005.4 P90-P92</p><p>  [12] 馬忠梅: 單片機C語言應用程序設計, 北京航空航天大學出版社, 2001.5 P45-P46</p>&l

54、t;p>  [13] 謝瑞和: 串行技術大全, 清華大學出版社, 2003.4, P23-P24</p><p>  [14] 高峰: 單片微機應用系統(tǒng)設計及實用技術, 機械工業(yè)出版社, 2003.5, P67-P69</p><p>  [15] 謝自美: 電子線路設計, 華中科技大學出版社, 2003.9, P108-P109</p><p>  [

55、16] 任哲: 嵌入式操作系統(tǒng)原理及應用, 北京航空航天大學出版社, 2005.4, P3-P5</p><p>  [17] 張迎新: 單片微型計算機原理與接口應用, 國防工業(yè)出版社,1999.7, P9-P11</p><p>  [18] 林小軍: 城市公交車自動報站設計, 蘭州工業(yè)高等??茖W校學報出版社, 2008.12, P35-36

56、</p><p>  [19] 眭相林: 基于GPS定位的公交車自動報站系統(tǒng)研究與設計, 江西理工大學出版</p><p>  社, 2008.12, P46-68</p><p>  [20] 吳占華: 列車廣播與信息顯示系統(tǒng)的設計與實現(xiàn), 吉林大學出版社, 2011.5, </p><p><b>  P33-P35<

溫馨提示

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

評論

0/150

提交評論