單片機地鐵或公交自動報站器設計_第1頁
單片機地鐵或公交自動報站器設計_第2頁
單片機地鐵或公交自動報站器設計_第3頁
單片機地鐵或公交自動報站器設計_第4頁
單片機地鐵或公交自動報站器設計_第5頁
已閱讀5頁,還剩31頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

基于單片機的公交車自動報站系統設計

目錄

第一章緒論.................................................1

1.1本課題的研究意義.....................................1

1.2目前幾種公交車報站器詳細比較.........................1

1.2.1GPS公交車自動報站器............................2

1.2.2手動式公交車自動報站器.........................2

1.2.3基于單片機的公交車自動報站系統.................2

第二章系統功能模塊詳細介紹..................................4

2.1單片機AT89c51......................................4

2.1.1管腳說明.......................................6

2.1.2外部晶振的選擇.................................8

2.1.3復位電路.......................................8

2.1.4按鍵電路設計...................................9

2.2.PT2262/PT2272引腳圖................................10

2.2.1PT2262/2272接線圖以及工作原理.................11

2.2.2無線數傳模塊F05V/J05V.........................13

2.3顯示模塊LCD1602...................................14

2.3.1排阻Respack-8................................14

2.3.2LCD1602的引腳定義............................14

2.3.3液晶LCD1602常用的11條指令...................16

2.4蜂鳴器和LED指示燈..................................20

第三章系統程序設計.........................................22

3.1系統仿真主程序流程圖................................22

第四章系統仿真實現.........................................23

4.1開發環境KeilC51介紹................................23

4.2仿真環境PROTEUS介紹...............................24

4.3仿真運行結果截圖....................................24

4.4仿真結果............................................24

結束語....................................................25

附錄A系統仿真全部代碼......................................27

第一章緒論

1.1本課題的研究意義

近些年來,隨著城市人口的不斷增加,人們生活節奏的不斷加快,公交車

在大城市以及中小城市已經普及,并且有了日新月異的發展,在人民生活中

起著重要作用,因此,公交車的正常運行及人們的正常生活息息相關。傳統

公交車報站大多是由乘務人員來人工報站,但是因為方言的差異或者人多時

語音嘈雜,這種方式不利于人民生活的和諧。所以根據這種需要市面上產生

流行了多種公交車報站器也方便人們的生活。

目前雖然現在在一些大城市的公交車上已經采用GPS定位系統自動報站,

但其造價昂貴,難以在一些中小城市實現普及。另外,現在也有一些城市正

在使用的一種半自動語音報站系統,這種系統需要由司機在車子進出站的時

候人工操作,由于這兩個時間點往往是路面情況最復雜的時刻,因此也給行

駛中的車輛帶來了安全隱患。所以本設計針對目前常見公交車報站系統的主

要缺陷,研究介紹了一種基于單片機控制的公交車自動報站系統,實現在到

站時的自動語音報站和LCD液晶顯示,而且該系統造價廉價,可以在中小城

市中普及。

1.2目前幾種公交車報站器詳細比較

公交車對社會影響巨大,隨著公交車的不斷普及市面上也出現各種各樣的

公交車報站器,現在市面上流行的幾種報站器主要有下列幾種類型:

1.2.1GPS公交車自動報站器

利用GPS全球衛星定位系統的公交車報站系統,在司機座位后面隔板上,

安裝了一臺15英寸的液晶電視和GPS信號接收器,安裝了這套設備后,公交

車在語音報站的同時,通過液晶電視還可以顯示到站站名的字幕,這樣如果

沒聽清報站的話,通過顯示屏,乘客也可以一目了然。當出現緊急情況時,

調度中心將會給公交車發出相應的信息,以短信的形式傳送到顯示屏上,同

時車載臺會發出相應的提示音;目前在美國部分城市GPS衛星定位系統已經

投入使用,國內也有此類產品的研制開發,其功能強大,系統穩定,但其投

資昂貴,尤其是一些中小城市無法承受。

1.2.2手動式公交車自動報站器

手動式公交車自動報站器通過主機上的漢字顯示器,顯示當前車站名稱,

即將達到站名指示功能;通過主機屏幕的顯示,可直觀的觀察到進站和下一

站信息;通過按鍵,可播放進站,出站,服務用語等語音。但是該種報站器

需要由司機在車子進出站的時候人工操作,由于這兩個時間點往往是路面情

況最復雜的時刻,因此也給行駛中的車輛帶來了安全隱患,不利于公交車的

安全行駛。

1.2.3基于單片機的公交車自動報站系統

基于單片機的公交車自動報站系統就是利用編碼解碼芯片PT2262/PT2272

進行解碼編碼,利用無線數傳模塊F05V/J05V和天線進行發射和接收來實現

的。在每個站牌上設置一個編碼發送裝置PT2262和無線數傳模塊F05V,通過

公交車上設置的接收裝置J05V和譯碼裝置PT2272進行譯碼并傳輸到單片機。

發送裝置按照延時3到5秒不斷發送信號,公交車在距離站牌10到20米的

時候就能接收到信號,然后根據程序來實現語音報站,LCD液晶顯示。這種報

站系統軟件編寫比較簡單,也容易修改,并且芯片價格低廉,大批生產能夠

獲得比GPS系統達到更高的性價比,是公交車自動報站系統的較佳選擇。

系統各部分框圖如下圖所示

AT89C51PT2662無線數傳通過天線

單片機產A信號發射—?模塊------->(Antenna)

生周期信F05V發射信號,

號間隔5秒。

圖2-1公交車站牌發射部分方框圖

圖2公交車車載接收部分方框圖

第二章系統功能模塊詳細介紹

2.1單片機AT89c51

隨著計算機技術的發展,單片機技術已成為計算機技術中的一個獨特的分

支,單片機的應用領域也越來越廣泛,特別是在工業控制和儀器儀表智能化

中扮演著極其重要的角色。縱觀單片機發展的30多年來,單片機正往多功能、

高性能、高速度、低電壓、低價格、低噪聲、低功耗、小體積、大容量、專

用化和外圍電路內裝化的方向發展。單片機的出現使的過去經常采用模擬電

路、數字電路實現的電路系統,轉變成現在用單片機予以實現,并且傳統的

電路設計方法演變成硬件和軟件相結合的設計方法,并且許多電路設計問題

將轉化為純粹的程序設計問題。

主要特性:

1、一個CPU,一個片內振蕩器以及時鐘電路,

2、4K(RAM)程序存儲器,

3、128B(ROM)數據存儲器

4、21個特殊功能寄存器

5、數據能夠保存的時間:10年

6、及MCS-51指令相兼容

7、32個可編程I/O線(4個8位并行I/O端口)

8、16位定時器/計數器有兩個

9、5個中斷源,兩個優先級嵌套結構

10、一個可編程全雙工串行接口

11、低功耗的閑置和掉電模式

12、片內振蕩器和時鐘電路

盡管目前單片機種類多,各類單片機的指令系統各不相同,功能各有所長,

但市場占有率最高的是51系列單片機。

單片機體積小,重量輕,具有很強的靈活性而且價格便宜,得到越來越廣

泛的運用。例如工業控制領域、家電產品,智能化儀器儀表,計算機外部設

備,特別是機電一體化產品中都有重要的用途,其中的51單片機系列發展規

模最大。

51單片的運用廣泛,并且具有優異的性能價格比,集成度高,體積小,有

很高的可靠性,并且控制功能強。所以是核心控制期間的最佳選擇。

U1

JZ

XTAL1POQADOJZ

PO.I/^DI35

PO2AD2

34一

XTAL2PO.3/333

32

P0.4AD4-M

PO.5/AD5T

PO.6/AD6T

RSTP0.7/AD7-

P2.0/A8T

P2.1/A6F

P2.2A10

PSENP2.3A11-

z=:

ALEP24Al2

EAP2.5-A131FO

P2aAi4

P2.7/A15dMr

1F

-

2-

-P3.WRXD

3T

-P3.1/TXD-

4

-P321NTO

5

-P3.3/1NT1

6

-P3.VT0

7

-PI.5P3.5TT1

8

-P1.6P36WR

PI.7P3.7/RD

圖3-1AT89c51單片機引腳圖

2.1.1管腳說明

下面對設計中用到的?些管腳進行簡要的介紹:

VCC:供電電壓,一般接+5V電源正端。

GND:接地,一般接+5V電源地端。

P0□(39~32腳):輸入輸出線PO.O~PO.7統稱為P0口。可以用作準雙向

輸入/輸出口使用,但由于內部無上拉電阻,一般外加上拉電阻:在進行片外

存儲器擴展或1/()擴展時,P0口作為分時服用的低8位地址總線和雙向數據

總線。

P1口(廣8腳):P1口作為準雙向I/O口使用。P1口管腳寫入1后,被內

部上拉為高,可用作輸入,Pl口被外部下拉為低電平時,將輸出電流,這是

由于內部上拉的緣故。

P2口(21?28腳):P2口也可作為準雙向I/O口,當進行片外村春氣擴展

或I/O口擴展時,P2口用作高8位地址總線c

P3□(10~17腳):P3口作為準雙向I/O口使用外,每一個端口還具有第

二功能。

P3口也可作為AT89c51的一些特殊功能口,如下表所示:

口管腳備選功能

P3.0RXD(串行口輸入端)

P3.1TXD(串行口輸出端)

P3.2/INTO(外部中斷0)

P3.3/INT1(外部中斷1)

P3.4T0(定時器/計時器0計數脈沖輸入)

P3.5T1(定時器/計時器1計數脈沖輸入)

P3.6/WR(外部數據存儲器寫選通信號輸出)

P3.7/RD(外部數據存儲器讀選通信號輸出)

RST(9腳):復位輸入。當振蕩器復位器件時,要保持10ms高弓平時間

才能保證有效的復位。

ALE/PROG(30腳):地址鎖存允許/編程線。采用了地址/數據總線復用技

術。

/PSEN(29腳):片外程序存儲器讀選通信號輸出端,低電平有效。

/EA/VPP(31腳):片外程序存儲器選用端,低電平有效。注意加密方式1

時,/EA將內部鎖定為RESET;當/EA端保持高電平時,此間內部程序存儲器。

在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)o

XTAL1:外接晶體振蕩器一端。

XTAL2:外接晶體振蕩器另一端。

2.1.2外部晶振的選擇

AT89C51的內部有一個用于構成振蕩器的高增益反相放大器。通過XTAL1,

ATAL2外部接上一片作為反饋元件的晶體,及C1和C2構成了并聯詣振電路,

使其構成白激振蕩器。電容的值通常30PF。具體的接線電路如圖3—2外部晶

振電路:

AT89C51單片機外接的是12MHz的晶振,則機器周期為lus0

圖3-2外部晶振電路

2.1.3復位電路

復位的作用是使程序自動從0000H開始執行,因此我們只要在AT89c51單

片機的RST端加上一個高電平信號,并持續10ms以上即可,RST端接有一個

上電復位電路,它是由一個小的電容和一個接地的電阻組成的。按鍵復位電

路另外采用一個按鈕來給RST端加上高電平信號。

本設計采用放電型的進行人工復位的電路,如圖按鍵復位電路,上電時

C3通過R2充電,維持寬度大于10ms的正脈沖,就可以完成復位操作。當C3

結束充電后,RST端出現低電平,這是CPU將正常的工作。

在本次設計中如果需要按鍵進行復位,就按下按鈕BUTT0N3,C3通過

BUTT0N3和R2放電,RST端電位將會上升到高電平,從而實現人工復位,

BUTT0N3松開后C3重新充電,當結束充電后,CPU將會重新工作。下圖中,

R2是限流電阻,阻值不可以過大,否則不能起到復位作用。

+5v

A'

31

r|-LC3

'No"I"OuF

I-o

|R2

i100

圖3-3按鍵復位電路

2.1.4按鍵電路設計

對于此設計來說要準確的顯示設計所要對應的信息,每按下一次按鍵要顯

示所要顯示的信息。這按鍵是主要用來模擬無線信號的收發而設計的,即

PT2262/PT2272的無線信號收發。

功能的實現主要是通過程序來實現,BUTT0N1控制順向報站,當報站系統

啟動后,按下BUTT0N1開始按預先設置好的站名進行順向報站,本設計設置

的是從站名“AAAAAAA”到“EEEEEEE”依次報站,每次按鍵按下時實現LED

提示燈亮,蜂鳴器連續鳴叫7次。

BUTT0N2按鍵是實現公交車逆向返回時的報站,即從站名“EEEEEEE”到

“AAAAAAA”的依次報站,也滿足每次按鍵按下時實現LED提示燈亮,蜂鳴器

連續鳴叫7次。

P3.3/INT1BUTT0N2

P3.4/T01①

P3.5/T1>—O0—1

P3.6/WRJ=L?

P3.7/RD—OO—I

BUTT0N1T

圖3-4按鍵設置

如果使用過程中出現錯誤時,可以使用按鍵復位,重現選擇正向或者逆向

報站。同時,為了防止一次按鍵產生站名的漏報,在軟件設計中使用了延時

函數,防止站名的漏報。

2.2.PT2262/PT2272引腳圖

在PT2262/2272這種器件的使用,根據資料一般將會使用8位的地址碼和

4位的數據碼。PT2262編碼電路引腳的選擇是:第1?8腳作為地址的設定腳,

他可以選擇三種狀態:懸空、接正電源、接地。3的8次方為6561,即地址

編碼的不重復度是6561組。

PT2262/2272的配對使用是要求發射端PT2262和接收端PT2272的地址編

碼需要完全相同,用戶如果想改變地址編碼,只要將PT2262和PT2272設置

相同即可,兩者的地址的編碼相同時,PT2272輸出端將會輸出大約4V左右的

互鎖的高電平的控制信號。

V/18

18-VDDAo-1"VDD

A|-217~DOUTA]-717-VT

216-OSC|

A2316-OSCi3

、3一415-OSC2A廠4PT227215-OSC2

PT2262-IR

』一

A514-TEA4-514-DI

613-D5

613~A||/D5-

”/D()一712-A10/D4Do-712-D4

8-A9/D38

A7/D1一IID「IIn

-D)

Vss-910-A8/D2Vss-910J

圖3-5PT2262/PT2272引腳圖

2.2.1PT2262/2272接線圖以及工作原理

發射電路主要由AT89c51、編碼模塊PT2262、無線數傳模塊F05v和一片

74LS04(六輸入非門,實際上就是六個非門集成在一塊74LS04里面了)構成,

發射部分電路如圖3-6所示。接收電路主要由AT89c51、譯碼模塊PT2272、

無線數傳模塊J05V和一片74LS04構成,接收部分模擬電路如圖3-7所示

圖3-6PT2262發射部分模擬接線圖

圖3-7PT2272接收部分模擬接線圖

發射的部分主要用于形成一個周期的編萬馬信號。編碼信號的內容包括三個

部分,分別是起始標志、數據編碼和結束標志,而無線收發模塊是四路的,

即因為每次收發半個字節的數據,所以一幀數據至少是16位的,其編碼數據

格式如表3-4所示。

表3-416位編碼數據格式

DODID2D3°

D1D2D3DOD1D2D3DODID2D3

0

4位起始標志8位編碼數據4位起始標志

2.2.2無線數傳模塊F05V/J05V

無線數傳模塊F05V/J05V(典型遙控應用電路):FO5V采用的SMT工藝,

優點是低電壓微功率、體積小、低功耗發射模塊,適合單片機數據傳輸以及

短距離無線遙控報警。JO5V作為接收模塊優點是低電壓、體積小,兩者連接

在PT2262/2272配合使用

FO5V引腳定義:1-正弓源3V;2-接地;3-數據信號輸入;Y-外接天線。

JO5V引腳定義:1二正電源3V;2二接地;3二數據信號輸出;Y二外接天線.

圖3-8f05V/J05V引腳接線圖

2.3顯示模塊LCD1602

我們知道的用來顯示的器件很多。比如數碼管、LCD、點陣式LED。數碼

管只能顯示數字,LCD可以顯示漢字、符號、數字和圖形,為了報站器的人性

LCD1602能夠同時顯示16列2行的字符,可以顯示數字、字母、以及各

種符號。這種液晶模塊由若干個5X7或者5X11等點陣字符位組成,這種點陣

字符顯示字符并且自帶間隔,也就是有自然的間距和行間距,也是因為這個

特性不能很好地顯示圖形(用自定義CGRAM,顯示效果也不好)。

2.3.1排阻Respack-8

Respack-8接在51單片機的P0口,因為P0口內部沒有上拉電阻,不能

輸出高電平,所以要接上拉電阻,1端為公共端接VCC。

2.3.2LCD1602的引腳定義

字符型LCD一般是16條引腳線14條引腳線,多出來的兩條線是背光電源

線VCC(15腳)和地線GND(16腳),及14腳LCD的控制原理基本完全一樣,

定義如下表所示:

表3-5LCD1602引腳定義

引腳號引腳名電平輸入/輸出作用

1VSS電源地

2VCC電源(+5V)

3VEE進行對比的調整電壓

0進行輸入I指令

4RS0/1輸入

1進行輸入()數據

O向LCD寫入指令以及

5R/W0/1輸入數據

1二從LCD中來讀取信息

使能信號,1是進行讀取

6E1,i—o輸入信息

1—0下降沿執行指令

7DBO0/11/0數據總線line。(最低位)

8DB10/11/0數據總線lineO

9DB20/11/0數據總線lineO

10DB30/1I/O數據總線lineO

11DB40/11/0數據總線lineO

12DB50/11/0數據總線line。

13DB60/1I/O數據總線line。

14DB70/11/0數據總線lineO

15A+VCCLCD背光燈電源正極

16K接地LCD背光燈電源負極

LCD1

LM016L

RP1

RESPACK-8

(/)pUSMObZSTS雯z

>>>HHUJQQQQOOOO

PO.O/ADO

PO.1/AD1

PO.2/AD2

PO.3/AD3

P0.4/AD4

P0.HAD5

P0GAD6

P0.7/AD7

LCD1602引腳接線圖

在LCD模塊上固化了字模存儲器,這就是CGROM和CGRAM,HD44780內置

了192個常用字符的字模,存于字符產生器CGROM中,另外還有8個允許用

戶自定義的字符產生RAM,成為CGRAMo下圖3-10說明了CGROM和CGRAM及

科位

字低心CMXX)OOIO<X)11()100OIO1O1IOO1111OIO1O111IOO11O1111O1111符的對

<X;RAM

xxxx(XXX)Oap\—夕三CXP

(1)P

xxxx<XX)1(2)t1Aaq口T+X*Uq

應**不關;刀豕、O詩以

xxxxOOlO<3>2BhrrXPe

xxxxOOI1(4)3c<TOO

xxxxOiOO(5)s4L>Tdt工卜七降£1

的xxxxOlO1(6)%5Eu<!U口才十-3.O時候,先

xxxxOlIO(7)X6FVfV千力3£

xxxxO111<K)>7GwKwT豐X-V,7T

xxxx1O(M)(8HXhX夕木?)X

讀xxxx1OO1<2)_L_91Yiy,7勺y左邊那

xxxxIOIO<3).JZjX工n*)r

xxxx1OI1(4)?K1k(才-V-eO

xxxxIIOO5)<L¥11七r

xxxx11OI(6)—=Mm)XV夕1」,冉1頭

xxxx11IO(7)>Nnat/、

xxxx1111(8)/O一<>TD

上面那行。

圖3CGROM和CGRAM中字符代碼及字符圖形對應關系

2.3.3液晶LCD1602常用的11條指令

表3-6液晶LCD1602常用指令

執行

指令功能RSR/WDB7DB6DB5DB4DB3DB2DR1DBO

時間

清屏.64ms

功能詳解:清除液晶顯示器的內容。

1.64m

光標歸位000000001X

S

功能詳解:光標撤回到顯示器的左上方,地址計數器(AC)值為0,DDRAM值

不變

進入模式

00000001I/DS40us

設置

功能詳解:"D當為0時寫入數據后光標左移,當為1時寫入數據后光標右移

S為0時寫入新數據后顯示屏不移動,為1時寫入新數據后顯示屏整體右移1

字符

顯示開關

0000001DCB40us

控制

功能詳解:D為0時顯示功能關,為1時顯示功能開

C為0時無光標。1時有光標

B為。時光標閃爍,1時光標不閃爍

設定顯示

屏或光標000001S/CR/LXX40us

移動方向

功能詳解:

S/CR/L設定的情況

00光標左移1格,且AC值減1

01光標右移1格,旦AC值加1

10顯示器上字符全部左移一格,但光標不移動

11顯示器上字符全部右移一格,但光標不移動

功能設定00001DLNFXX40us

功能詳解:DL為0時數據總線為4位,1時數據總線為8位

N為0時顯示1行,1時顯示兩行

F為0時5*7點陣/每個字符,1時5*10點陣/每個字符

設定

CGRAM地0001CGRAM的地址(6位)40us

址指令

功能詳解:設定下個要存入的數據的CGRAM的地址

設定

DDRAM地001CGRAM的地址(7位)40us

址指令

功能詳解:設定下個學存入的數據的DDRAM的地址

讀取忙碌

信號或01BFAC內容(7位)40us

AC地址||_____________________________

功能詳解:BF為1表示液晶顯示器忙,為0時,液晶顯示器可以接收單片機

送來的數據或指令

數據寫入

至I」、

10要寫入的數據D7DO40us

DDRAMH

或CGRAM________________________________________________

功能詳解:(1)將字符碼寫入DDRAM,液晶顯示屏并顯示對應的字符

?)使用者翼計的圖形存入CGRAM

從CARAM|

或DDRAM11要讀出的數據D7、DO40us

讀取數據|____________________________________

功能詳解:讀取DDRAM或CGRAM的內容

在本次設計后續設計中,也可以利用AT89c51控制該芯片,實現語音的存儲

以及語音報站。

1、電源端(VCCA,VCCD):為了使噪聲最小,芯片內部的數字和模擬電路要

使用不同的電源的總線,,并且分別引出到外封裝的不同的管腳上。數字和模

擬電源端最好走不同的線,比如,選擇在離供電端相近的地方相連,而去耦

電容就應盡量選擇離器件近。

2、地線(VSSD,VSSA):芯片的內部的模擬和數字電路也使用不同的地線。

3、同相的模擬輸入(ANAIN+):即錄音信號同相輸入端。這時輸入放大器

采用單端或差分驅動。當采用單端時,在耦合電容中輸入信號,最大的幅度

是32mV峰峰值,芯片頻帶的低端截止頻率決定耦合電容和本端的3KQ電阻的

輸入阻抗。作為差分的驅動時,信號最大幅度是16mV峰峰值,這是和1SD33

000系列一樣的。

4、反相的模擬輸入(ANAIN-):作為差分驅動是錄音信號的反相的輸入端。

信號是通過耦合電容來輸入,最大幅度是16mV峰峰值

5、音頻輸出(AUDOUT):作用是提供音頻的輸出,可以驅動5KQ的負載。

6、片選(SS):此端為低電平,在向ISD4004芯片發送指令時,并且該兩

條指令間應該為高電平。

7、串行輸入(MOSI):此端是串行的輸入端。主控制器應該在串行時鐘的

上升沿前半周期把數據放到這個端口,來讓ISD輸入。

8、串行輸出(MISO):作為ISD的串行的輸出端。當TSD沒有選中時本端

會呈高阻態。

9、串行時鐘(SCLK):作為ISD的時鐘的輸入端。從主控制器中產生,可

以用于同步的MOSI和MISO的數據傳輸。

10、中斷(/INT):本端作為漏極的開路輸出。ISD在任何操作過程(比如

快進)中檢測到了EOM或OVF時,本端會變低電平并保持。并且中斷的狀態

在下一個SPI周期開始時清除。中斷狀態也可以用RINT的指令讀取。

OVF標志--指示ISD的錄放操作是否己經到存儲器未尾狀態。

EOM標志-一只在放音過程中檢測到內部的EOM標志時,狀態才會置1。

11、行地址時鐘(RAC):漏極的開路輸出。每經過一個RAC周期,表示I

SD存儲器操作進行了一行。該端口并且可以用于存儲的管理技術。

12、外部時鐘(XCLK):本端內部帶有下拉元件。工業級的芯片在整個溫度

和電壓范圍內,頻率變化范圍在-6/+4%內,此時建議使用穩壓電源。如果要

求更高精度,可從本端來輸入外部時鐘(如前邊所描述)。并且由于內部的防

混淆及平滑濾波器已經設定好,所以上述推薦時鐘頻率不應該再改變。輸入

時鐘占空比是無關緊要的,因為內部首先進行了分頻。并且在不外接地時鐘

時,此端是必須接地的。

13、自動靜噪(AMCAP):一般本端對地會接ImF的電容,來構成內部信號

的電平峰值檢測電路一部分。并且及內部設定閾值和峰值電平來作比較,從

而決定自動靜噪的功能的翻轉點。大信號時,自動靜噪的電路不衰減,靜音

時衰減6dB。ImF的電容也影響自動靜噪的電路對信號幅度的響應速度。本端

接VCCA則應該禁止自動靜噪。

2.4蜂鳴器和LED指示燈

蜂鳴器

鑒于用Proteus仿真,語音模塊用蜂鳴器代替如圖3-7,采用三極管NPN,

當PU為高電平時電路導通,通過程序使P11進行短時間內高低電平轉換,

以達到斷續蜂鳴提示的效果。

圖3T1蜂鳴器接線圖

到站LED提示燈

鑒于用Proteus仿真,語音模塊用蜂鳴器代替如圖3-7,采用三極管PNP,

Q2

1-

PNP

由D4

7yLED-BIBY

pMOWa

當Pl.0為低電平時電路導通,到站提示燈亮。

圖372LED提示燈接線圖

第三章系統程序設計

3.1系統仿真主程序流程圖

圖3-1系統仿真主程序流程圖

系統仿真,初始化運行程序時,LCD第一行顯示歡迎字符,蜂鳴器蜂鳴,

選擇BUTT0N1或者BUTT0N2(通過控制P35,P34)選擇順序或者逆序報站,按

下按鍵之后,蜂鳴器提示,LED指示燈亮,延遲一段時間后顯示站名。隨后可

以每到一個站依次顯示公交車站名,如果出現錯誤或者重新選擇另一順序報

站,可以使用按鍵復位,重新選擇報站方式。

第四章系統仿真實現

4.1開發環境KeilC51介紹

KeilC51是集編輯,編譯,仿真于一體,支持匯編,PLM語言和C語言

的程序設計-易學易用。在KeilC51集成開發環境下使用工程的方法來管

理文件,所有的源文件、頭文件甚至說明性文檔都可以放在工程項目文件里

統一管理。

本次設計使用KeilC51的開發工具大致流程如下:

(1)運行KeilC51軟件,進入KeilC51集成開發環境。

(2)選擇工具欄的Project選項,彈出下拉菜單,選擇NewProject命

令建立一個新的uVision2工程。這時會彈出所示的工程文件保存對話框,

選擇工程目錄并輸入文件名后,單擊保存。

(3)本次設計建立好一個空白工程,現在需要人工為工程添加程序文件,

如果還沒有程序文件則必須建立它,可以選擇工具欄的File選項,在彈出

的下拉菜單中選擇New目錄。這次設計我采用的是將.c的文件導入工程。

(4)輸入程序,完畢后點擊“保存”命令保存源程序,KeilC51支持匯

編和C語言,uVision2會根據文件后綴判斷文件的類型,進行自動處理。

(5)不斷糾正源文件錯誤,檢查無誤后生成HEX文件,并將HEX文件導

入Proteus中的51單片機來運行實現。

4.2仿真環境PROTEUS介紹

Proteus是英國Labcenter公司開發的電路分析及實物仿真軟件(EDA工

具軟件)。它運行于Windows操作系統上,可以仿真、分析(SPICE)各種模擬

器件和集成電路,該軟件的十分適用于仿真設計。

4.3仿真運行結果截圖

初始化運行界面

圖4T初始化運行界面

4.4仿真結果

本次課題用Proteus設計出硬件電路,用KeilC5i編寫程序共同完成課題

的仿真,基本完成了公交車的模擬報站。

功能的實現主要是通過程序來實現,BUTT0N1控制順向報站,當報站系統

啟動后,按下BUTT0N1開始按預先設置好的站名進行順向報站,每次按鍵按

下時實現LED提示燈亮,蜂鳴器連續鳴叫7次。

BUTT0N2按鍵是實現公交車逆向返回時的報站,也滿足每次按鍵按下時實

現LED提示燈亮,蜂鳴器連續鳴叫7次。如果使用過程中出現錯誤時,可以

使用機械復位,重現選擇正向或者逆向報站。同時,為了防止一次按鍵產生

站名的漏報,在軟件設計中使用了延時函數,防止站名的漏報

?

3炳

0

>

/

0

|

/

?

?

8

9

*

圖4-2系統正向報站

結束語

通過了這次設計,我知道了在做一個系統之前很重要的是要做好需求分

析,為此,我在網上查看了大量的相關資料,對目前市面上流行的幾種公交

車報站器進行了分析和比較,來為此次設計個方案確定來做了充足的準備。

我深入了解了單片機的工作原理和機制,對它的各個模塊功能有了更深層認

識和更本質的理解,并且在這個過程中,我更加深入認識了Proteus和Kei1C51

這兩個軟件,對這軟件的基本操作能夠熟練的使用,了解了軟件的優缺點,

并且熟練了對C語言的使用和LCD1602程序設計。在做課程設計的過程中我

遇到了很多困難,很多方案確定不下來,編寫代碼時也總是出現這樣或者那

樣的錯誤,并且有些功能自己也不知道該用什么方法來實現,經過向同學的

請教和討論,我克服了這一些困難。最終基本完成了用Proteus來實現公交

車的模擬報站,但是模塊還是很簡陋,也需要進一步的優化。

該系統還存在著一些不足,主要體現在:仿真過程沒有辦法使用

PT2262/2272和ISD4004語音模塊,用了按鍵和蜂鳴器來代替,只對這兩個模

塊根據資料進行了相應的介紹。如果以后做實物的過程,那應該完善這兩部

分。并且在設計過程中也暴露了很多的缺點,比如編程能力有待提高,需要

通過不斷的編譯仿真調整才能最終得到想要的結果。

附錄A系統仿真全部代碼

#include<reg51.h>

#include<intrins.h>

tidefineucharunsignedchar

itdefineuintunsignedint

ttdefineportPO//DB0-DB7數據口

sbitP31=P3N;〃無線信號接收端(控制反向)

sbitP32=P3'5;〃無線信號接收端(控制正向)

sbitled=P1P;〃到站指示燈

sbitfmp=Pl/1;//蜂鳴器

sbite=P2A2;〃使能

sbitrw=P2」;〃讀寫

sbitrs=P2-0;〃數據/命令

sbitbusy=P(T7;〃檢測

ucharcodedisl口=“beijing〃;

ucharcodedis2口二〃shanghai〃

ucharcodedis3口二〃tianjing〃;

ucharcodedis4口二〃cangzhou〃;

ucharcodedis5[]=,,huanhua”;

ucharnum口=“welcometo〃;

/*******延時***/

voiddelay(uintn)

uinti;

for(;n>0;n一)

for(i=200;i>0;i--);

/****判斷是否忙*

溫馨提示

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

評論

0/150

提交評論