單片機(jī)地鐵或公交自動(dòng)報(bào)站器設(shè)計(jì)說(shuō)明_第1頁(yè)
單片機(jī)地鐵或公交自動(dòng)報(bào)站器設(shè)計(jì)說(shuō)明_第2頁(yè)
單片機(jī)地鐵或公交自動(dòng)報(bào)站器設(shè)計(jì)說(shuō)明_第3頁(yè)
單片機(jī)地鐵或公交自動(dòng)報(bào)站器設(shè)計(jì)說(shuō)明_第4頁(yè)
單片機(jī)地鐵或公交自動(dòng)報(bào)站器設(shè)計(jì)說(shuō)明_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于單片機(jī)的公交車(chē)自動(dòng)報(bào)站系統(tǒng)設(shè)計(jì)目錄第一章 緒 論11.1 本課題的研究意義11.2 目前幾種公交車(chē)報(bào)站器詳細(xì)比較11.2.1 GPS公交車(chē)自動(dòng)報(bào)站器11.2.2 手動(dòng)式公交車(chē)自動(dòng)報(bào)站器21.2.3 基于單片機(jī)的公交車(chē)自動(dòng)報(bào)站系統(tǒng)2第二章 系統(tǒng)功能模塊詳細(xì)介紹32.1 單片機(jī)AT89C5132.1.1 管腳說(shuō)明52.1.2 外部晶振的選擇62.1.3 復(fù)位電路62.1.4 按鍵電路設(shè)計(jì)72.2. PT2262/PT2272引腳圖82.2.1 PT2262/2272接線圖以及工作原理92.2.2 無(wú)線數(shù)傳模塊F05V/J05V102.3 顯示模塊LCD1602102.3.1 排阻Respack

2、-8112.3.2 LCD1602的引腳定義112.3.3 液晶LCD1602常用的11條指令132.4 蜂鳴器和LED指示燈15第三章 系統(tǒng)程序設(shè)計(jì)173.1 系統(tǒng)仿真主程序流程圖17第四章 系統(tǒng)仿真實(shí)現(xiàn)184.1 開(kāi)發(fā)環(huán)境KeilC51介紹184.2 仿真環(huán)境PROTEUS介紹184.3 仿真運(yùn)行結(jié)果截圖194.4 仿真結(jié)果19結(jié) 束 語(yǔ)20附錄A 系統(tǒng)仿真全部代碼21第一章 緒 論1.1 本課題的研究意義近些年來(lái),隨著城市人口的不斷增加,人們生活節(jié)奏的不斷加快,公交車(chē)在大城市以及中小城市已經(jīng)普及,并且有了日新月異的發(fā)展,在人民生活中起著重要作用,因此,公交車(chē)的正常運(yùn)行與人們的正常生活息息

3、相關(guān)。傳統(tǒng)公交車(chē)報(bào)站大多是由乘務(wù)人員來(lái)人工報(bào)站,但是因?yàn)榉窖缘牟町惢蛘呷硕鄷r(shí)語(yǔ)音嘈雜,這種方式不利于人民生活的和諧。所以根據(jù)這種需要市面上產(chǎn)生流行了多種公交車(chē)報(bào)站器也方便人們的生活。目前雖然現(xiàn)在在一些大城市的公交車(chē)上已經(jīng)采用GPS定位系統(tǒng)自動(dòng)報(bào)站,但其造價(jià)昂貴,難以在一些中小城市實(shí)現(xiàn)普及。另外,現(xiàn)在也有一些城市正在使用的一種半自動(dòng)語(yǔ)音報(bào)站系統(tǒng),這種系統(tǒng)需要由司機(jī)在車(chē)子進(jìn)出站的時(shí)候人工操作,由于這兩個(gè)時(shí)間點(diǎn)往往是路面情況最復(fù)雜的時(shí)刻,因此也給行駛中的車(chē)輛帶來(lái)了安全隱患。所以本設(shè)計(jì)針對(duì)目前常見(jiàn)公交車(chē)報(bào)站系統(tǒng)的主要缺陷,研究介紹了一種基于單片機(jī)控制的公交車(chē)自動(dòng)報(bào)站系統(tǒng),實(shí)現(xiàn)在到站時(shí)的自動(dòng)語(yǔ)音報(bào)站和L

4、CD液晶顯示,而且該系統(tǒng)造價(jià)廉價(jià),可以在中小城市中普及。1.2 目前幾種公交車(chē)報(bào)站器詳細(xì)比較公交車(chē)對(duì)社會(huì)影響巨大,隨著公交車(chē)的不斷普及市面上也出現(xiàn)各種各樣的公交車(chē)報(bào)站器,現(xiàn)在市面上流行的幾種報(bào)站器主要有下列幾種類(lèi)型:1.2.1 GPS公交車(chē)自動(dòng)報(bào)站器利用GPS全球衛(wèi)星定位系統(tǒng)的公交車(chē)報(bào)站系統(tǒng),在司機(jī)座位后面隔板上,安裝了一臺(tái)15英寸的液晶電視和 GPS信號(hào)接收器,安裝了這套設(shè)備后,公交車(chē)在語(yǔ)音報(bào)站的同時(shí),通過(guò)液晶電視還可以顯示到站站名的字幕,這樣如果沒(méi)聽(tīng)清報(bào)站的話,通過(guò)顯示屏,乘客也可以一目了然。當(dāng)出現(xiàn)緊急情況時(shí),調(diào)度中心將會(huì)給公交車(chē)發(fā)出相應(yīng)的信息,以短信的形式傳送到顯示屏上,同時(shí)車(chē)載臺(tái)會(huì)發(fā)出

5、相應(yīng)的提示音;目前在美國(guó)部分城市GPS衛(wèi)星定位系統(tǒng)已經(jīng)投入使用,國(guó)也有此類(lèi)產(chǎn)品的研制開(kāi)發(fā),其功能強(qiáng)大,系統(tǒng)穩(wěn)定,但其投資昂貴,尤其是一些中小城市無(wú)法承受。1.2.2 手動(dòng)式公交車(chē)自動(dòng)報(bào)站器手動(dòng)式公交車(chē)自動(dòng)報(bào)站器通過(guò)主機(jī)上的漢字顯示器,顯示當(dāng)前車(chē)站名稱(chēng),即將達(dá)到站名指示功能;通過(guò)主機(jī)屏幕的顯示,可直觀的觀察到進(jìn)站和下一站信息;通過(guò)按鍵,可播放進(jìn)站,出站,服務(wù)用語(yǔ)等語(yǔ)音。但是該種報(bào)站器需要由司機(jī)在車(chē)子進(jìn)出站的時(shí)候人工操作,由于這兩個(gè)時(shí)間點(diǎn)往往是路面情況最復(fù)雜的時(shí)刻,因此也給行駛中的車(chē)輛帶來(lái)了安全隱患,不利于公交車(chē)的安全行駛。1.2.3 基于單片機(jī)的公交車(chē)自動(dòng)報(bào)站系統(tǒng)基于單片機(jī)的公交車(chē)自動(dòng)報(bào)站系統(tǒng)就

6、是利用編碼解碼芯片PT2262/PT2272進(jìn)行解碼編碼,利用無(wú)線數(shù)傳模塊F05V/J05V和天線進(jìn)行發(fā)射和接收來(lái)實(shí)現(xiàn)的。在每個(gè)站牌上設(shè)置一個(gè)編碼發(fā)送裝置PT2262和無(wú)線數(shù)傳模塊F05V,通過(guò)公交車(chē)上設(shè)置的接收裝置J05V和譯碼裝置PT2272進(jìn)行譯碼并傳輸?shù)絾纹瑱C(jī)。發(fā)送裝置按照延時(shí)3到5秒不斷發(fā)送信號(hào),公交車(chē)在距離站牌10到20米的時(shí)候就能接收到信號(hào),然后根據(jù)程序來(lái)實(shí)現(xiàn)語(yǔ)音報(bào)站,LCD液晶顯示。這種報(bào)站系統(tǒng)軟件編寫(xiě)比較簡(jiǎn)單,也容易修改,并且芯片價(jià)格低廉,大批生產(chǎn)能夠獲得比GPS系統(tǒng)達(dá)到更高的性?xún)r(jià)比,是公交車(chē)自動(dòng)報(bào)站系統(tǒng)的較佳選擇。系統(tǒng)各部分框圖如下圖所示通過(guò)天線(Antenna)發(fā)射信號(hào),

7、間隔5秒。無(wú)線數(shù)傳模塊F05VPT2662信號(hào)發(fā)射AT89C51單片機(jī)產(chǎn)生周期信號(hào)圖2-1 公交車(chē)站牌發(fā)射部分方框圖接收天線接收無(wú)線數(shù)傳模塊J05VLCD1602液晶顯示PT2272信號(hào)接收AT89C51單片機(jī)控制ISD4004語(yǔ)音模塊晶振,外部中斷復(fù)位電路按鍵控制圖2 公交車(chē)車(chē)載接收部分方框圖第二章 系統(tǒng)功能模塊詳細(xì)介紹2.1 單片機(jī)AT89C51隨著計(jì)算機(jī)技術(shù)的發(fā)展,單片機(jī)技術(shù)已成為計(jì)算機(jī)技術(shù)中的一個(gè)獨(dú)特的分支,單片機(jī)的應(yīng)用領(lǐng)域也越來(lái)越廣泛,特別是在工業(yè)控制和儀器儀表智能化中扮演著極其重要的角色??v觀單片機(jī)發(fā)展的30多年來(lái),單片機(jī)正往多功能、高性能、高速度、低電壓、低價(jià)格、低噪聲、低功耗、

8、小體積、大容量、專(zhuān)用化和外圍電路裝化的方向發(fā)展。單片機(jī)的出現(xiàn)使的過(guò)去經(jīng)常采用模擬電路、數(shù)字電路實(shí)現(xiàn)的電路系統(tǒng),轉(zhuǎn)變成現(xiàn)在用單片機(jī)予以實(shí)現(xiàn),并且傳統(tǒng)的電路設(shè)計(jì)方法演變成硬件和軟件相結(jié)合的設(shè)計(jì)方法,并且許多電路設(shè)計(jì)問(wèn)題將轉(zhuǎn)化為純粹的程序設(shè)計(jì)問(wèn)題。主要特性:1、一個(gè)CPU,一個(gè)片振蕩器以及時(shí)鐘電路, 2、4K(RAM)程序存儲(chǔ)器,3、128B(ROM)數(shù)據(jù)存儲(chǔ)器4、21個(gè)特殊功能寄存器5、數(shù)據(jù)能夠保存的時(shí)間:10年6、與MCS-51指令相兼容7、32個(gè)可編程I/O線(4個(gè)8位并行I/O端口)8、16位定時(shí)器/計(jì)數(shù)器有兩個(gè)9、5個(gè)中斷源,兩個(gè)優(yōu)先級(jí)嵌套結(jié)構(gòu)10、一個(gè)可編程全雙工串行接口11、低功耗的閑

9、置和掉電模式12、片振蕩器和時(shí)鐘電路盡管目前單片機(jī)種類(lèi)多,各類(lèi)單片機(jī)的指令系統(tǒng)各不相同,功能各有所長(zhǎng),但市場(chǎng)占有率最高的是51系列單片機(jī)。單片機(jī)體積小,重量輕,具有很強(qiáng)的靈活性而且價(jià)格便宜,得到越來(lái)越廣泛的運(yùn)用。例如工業(yè)控制領(lǐng)域、家電產(chǎn)品,智能化儀器儀表,計(jì)算機(jī)外部設(shè)備,特別是機(jī)電一體化產(chǎn)品中都有重要的用途,其中的51單片機(jī)系列發(fā)展規(guī)模最大。51單片的運(yùn)用廣泛,并且具有優(yōu)異的性能價(jià)格比,集成度高,體積小,有很高的可靠性,并且控制功能強(qiáng)。所以是核心控制期間的最佳選擇。圖3-1 AT89C51單片機(jī)引腳圖2.1.1 管腳說(shuō)明下面對(duì)設(shè)計(jì)中用到的一些管腳進(jìn)行簡(jiǎn)要的介紹:VCC:供電電壓,一般接+5V電

10、源正端。GND:接地,一般接+5V電源地端。P0口(3932腳):輸入輸出線P0.0P0.7統(tǒng)稱(chēng)為P0口??梢杂米鳒?zhǔn)雙向輸入/輸出口使用,但由于部無(wú)上拉電阻,一般外加上拉電阻:在進(jìn)行片外存儲(chǔ)器擴(kuò)展或I/O擴(kuò)展時(shí),P0口作為分時(shí)服用的低8位地址總線和雙向數(shù)據(jù)總線。P1口(18腳):P1口作為準(zhǔn)雙向I/O口使用。P1口管腳寫(xiě)入1后,被部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于部上拉的緣故。 P2口(2128腳):P2口也可作為準(zhǔn)雙向I/O口,當(dāng)進(jìn)行片外村春氣擴(kuò)展或I/O口擴(kuò)展時(shí),P2口用作高8位地址總線。P3口(1017腳):P3口作為準(zhǔn)雙向I/O口使用外,每一個(gè)端口

11、還具有第二功能。P3口也可作為AT89C51的一些特殊功能口,如下表所示:口管腳 備選功能P3.0 RXD(串行口輸入端)P3.1 TXD(串行口輸出端)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(定時(shí)器/計(jì)時(shí)器0計(jì)數(shù)脈沖輸入)P3.5 T1(定時(shí)器/計(jì)時(shí)器1計(jì)數(shù)脈沖輸入)P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通信號(hào)輸出)P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通信號(hào)輸出)RST(9腳):復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持10ms高電平時(shí)間才能保證有效的復(fù)位。ALE/PROG(30腳):地址鎖存允許/編程線。采用了地址/數(shù)據(jù)總線復(fù)用技術(shù)。/PSEN(29腳)

12、:片外程序存儲(chǔ)器讀選通信號(hào)輸出端,低電平有效。/EA/VPP(31腳):片外程序存儲(chǔ)器選用端,低電平有效。注意加密方式1時(shí),/EA將部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:外接晶體振蕩器一端。XTAL2:外接晶體振蕩器另一端。2.1.2 外部晶振的選擇AT89C51的部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器。通過(guò)XTAL1,ATAL2外部接上一片作為反饋元件的晶體,與C1和C2構(gòu)成了并聯(lián)諧振電路,使其構(gòu)成自激振蕩器。電容的值通常30PF。具體的接線電路如圖32外部晶振電路:AT89C51單片機(jī)外接

13、的是12MHZ的晶振,則機(jī)器周期為1us。圖3-2 外部晶振電路2.1.3 復(fù)位電路復(fù)位的作用是使程序自動(dòng)從0000H開(kāi)始執(zhí)行,因此我們只要在AT89C51單片機(jī)的RST端加上一個(gè)高電平信號(hào),并持續(xù)10ms以上即可,RST端接有一個(gè)上電復(fù)位電路,它是由一個(gè)小的電容和一個(gè)接地的電阻組成的。按鍵復(fù)位電路另外采用一個(gè)按鈕來(lái)給RST端加上高電平信號(hào)。本設(shè)計(jì)采用放電型的進(jìn)行人工復(fù)位的電路,如圖按鍵復(fù)位電路,上電時(shí)C3通過(guò)R2充電,維持寬度大于10ms的正脈沖,就可以完成復(fù)位操作。當(dāng)C3結(jié)束充電后,RST端出現(xiàn)低電平,這是CPU將正常的工作。在本次設(shè)計(jì)中如果需要按鍵進(jìn)行復(fù)位,就按下按鈕BUTTON3,C3

14、通過(guò)BUTTON3和R2放電,RST端電位將會(huì)上升到高電平,從而實(shí)現(xiàn)人工復(fù)位,BUTTON3松開(kāi)后C3重新充電,當(dāng)結(jié)束充電后,CPU將會(huì)重新工作。下圖中,R2是限流電阻,阻值不可以過(guò)大,否則不能起到復(fù)位作用。圖3-3 按鍵復(fù)位電路2.1.4 按鍵電路設(shè)計(jì)對(duì)于此設(shè)計(jì)來(lái)說(shuō)要準(zhǔn)確的顯示設(shè)計(jì)所要對(duì)應(yīng)的信息,每按下一次按鍵要顯示所要顯示的信息。這按鍵是主要用來(lái)模擬無(wú)線信號(hào)的收發(fā)而設(shè)計(jì)的,即PT2262/PT2272的無(wú)線信號(hào)收發(fā)。功能的實(shí)現(xiàn)主要是通過(guò)程序來(lái)實(shí)現(xiàn),BUTTON1控制順向報(bào)站,當(dāng)報(bào)站系統(tǒng)啟動(dòng)后,按下BUTTON1開(kāi)始按預(yù)先設(shè)置好的站名進(jìn)行順向報(bào)站,本設(shè)計(jì)設(shè)置的是從站名“AAAAAAA”到“E

15、EEEEEE”依次報(bào)站,每次按鍵按下時(shí)實(shí)現(xiàn)LED提示燈亮,蜂鳴器連續(xù)鳴叫7次。BUTTON2按鍵是實(shí)現(xiàn)公交車(chē)逆向返回時(shí)的報(bào)站,即從站名“EEEEEEE”到“AAAAAAA”的依次報(bào)站,也滿(mǎn)足每次按鍵按下時(shí)實(shí)現(xiàn)LED提示燈亮,蜂鳴器連續(xù)鳴叫7次。圖3-4 按鍵設(shè)置如果使用過(guò)程中出現(xiàn)錯(cuò)誤時(shí),可以使用按鍵復(fù)位,重現(xiàn)選擇正向或者逆向報(bào)站。同時(shí),為了防止一次按鍵產(chǎn)生站名的漏報(bào),在軟件設(shè)計(jì)中使用了延時(shí)函數(shù),防止站名的漏報(bào)。2.2. PT2262/PT2272引腳圖在PT2262/2272這種器件的使用,根據(jù)資料一般將會(huì)使用8位的地址碼和4位的數(shù)據(jù)碼。PT2262編碼電路引腳的選擇是:第l8腳作為地址的設(shè)定

16、腳,他可以選擇三種狀態(tài):懸空、接正電源、接地。3的8次方為6561,即地址編碼的不重復(fù)度是6561組。PT2262/2272的配對(duì)使用是要求發(fā)射端PT2262和接收端PT2272的地址編碼需要完全相同,用戶(hù)如果想改變地址編碼,只要將PT2262和PT2272設(shè)置相同即可,兩者的地址的編碼相同時(shí),PT2272輸出端將會(huì)輸出大約4V左右的互鎖的高電平的控制信號(hào)。圖3-5 PT2262/PT2272引腳圖2.2.1 PT2262/2272接線圖以及工作原理發(fā)射電路主要由AT89C51、編碼模塊PT2262、無(wú)線數(shù)傳模塊F05V和一片74LS04(六輸入非門(mén),實(shí)際上就是六個(gè)非門(mén)集成在一塊74LS04里

17、面了)構(gòu)成,發(fā)射部分電路如圖3-6所示。接收電路主要由AT89C51、譯碼模塊PT2272、無(wú)線數(shù)傳模塊J05V和一片74LS04構(gòu)成,接收部分模擬電路如圖3-7所示圖3-6 PT2262發(fā)射部分模擬接線圖圖3-7 PT2272接收部分模擬接線圖發(fā)射的部分主要用于形成一個(gè)周期的編碼信號(hào)。編碼信號(hào)的容包括三個(gè)部分,分別是起始標(biāo)志、數(shù)據(jù)編碼和結(jié)束標(biāo)志,而無(wú)線收發(fā)模塊是四路的,即因?yàn)槊看问瞻l(fā)半個(gè)字節(jié)的數(shù)據(jù),所以一幀數(shù)據(jù)至少是16位的,其編碼數(shù)據(jù)格式如表3-4所示。表3-4 16位編碼數(shù)據(jù)格式0123456789101112131415D0D1D2D3D0D1D2D3D0D1D2D3D0D1D2D34

18、位起始標(biāo)志8位編碼數(shù)據(jù)4位起始標(biāo)志2.2.2 無(wú)線數(shù)傳模塊F05V/J05V無(wú)線數(shù)傳模塊F05V/J05V(典型遙控應(yīng)用電路):F05V采用的SMT工藝,優(yōu)點(diǎn)是低電壓微功率、體積小、低功耗發(fā)射模塊,適合單片機(jī)數(shù)據(jù)傳輸以及短距離無(wú)線遙控報(bào)警。J05V作為接收模塊優(yōu)點(diǎn)是低電壓、體積小,兩者連接在PT2262/2272配合使用F05V引腳定義:1=正電源3V;2=接地;3=數(shù)據(jù)信號(hào)輸入;Y=外接天線。J05V引腳定義:1=正電源3V;2=接地;3=數(shù)據(jù)信號(hào)輸出;Y=外接天線.圖3-8 f05V/J05V引腳接線圖2.3 顯示模塊LCD1602我們知道的用來(lái)顯示的器件很多。比如數(shù)碼管、LCD、點(diǎn)陣式L

19、ED。數(shù)碼管只能顯示數(shù)字,LCD可以顯示漢字、符號(hào)、數(shù)字和圖形,為了報(bào)站器的人性化LCD1602能夠同時(shí)顯示16列2行的字符,可以顯示數(shù)字、字母、以及各種符號(hào)。這種液晶模塊由若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成,這種點(diǎn)陣字符顯示字符并且自帶間隔,也就是有自然的間距和行間距,也是因?yàn)檫@個(gè)特性不能很好地顯示圖形(用自定義CGRAM,顯示效果也不好)。2.3.1 排阻Respack-8Respack-8接在51單片機(jī)的P0口,因?yàn)镻0口部沒(méi)有上拉電阻,不能輸出高電平,所以要接上拉電阻,1端為公共端接VCC。2.3.2 LCD1602的引腳定義字符型LCD一般是16條引腳線14條引腳線,多出來(lái)的兩

20、條線是背光電源線VCC(15腳)和地線GND(16腳),與14腳LCD的控制原理基本完全一樣,定義如下表所示:表3-5 LCD1602引腳定義引腳號(hào)引腳名電平輸入/輸出作用1VSS電源地2VCC電源(+5V)3VEE進(jìn)行對(duì)比的調(diào)整電壓4RS0/1輸入0進(jìn)行輸入I指令1進(jìn)行輸入O數(shù)據(jù)5R/W0/1輸入0=向LCD寫(xiě)入指令以及數(shù)據(jù)1=從LCD中來(lái)讀取信息6E1,10輸入使能信號(hào),1是進(jìn)行讀取信息10下降沿執(zhí)行指令7DB00/1I/O數(shù)據(jù)總線line0(最低位)8DB10/1I/O數(shù)據(jù)總線line09DB20/1I/O數(shù)據(jù)總線line010DB30/1I/O數(shù)據(jù)總線line011DB40/1I/O數(shù)

21、據(jù)總線line012DB50/1I/O數(shù)據(jù)總線line013DB60/1I/O數(shù)據(jù)總線line014DB70/1I/O數(shù)據(jù)總線line015A+VCCLCD背光燈電源正極16K接地LCD背光燈電源負(fù)極 LCD1602引腳接線圖在LCD模塊上固化了字模存儲(chǔ)器,這就是CGROM和CGRAM,HD44780置了192個(gè)常用字符的字模,存于字符產(chǎn)生器CGROM中,另外還有8個(gè)允許用戶(hù)自定義的字符產(chǎn)生RAM,成為CGRAM。下圖3-10說(shuō)明了CGROM和CGRAM與字符的對(duì)應(yīng)關(guān)系。讀的時(shí)候,先讀左邊那列,再讀上面那行。 圖3 CGROM和CGRAM中字符代碼與字符圖形對(duì)應(yīng)關(guān)系2.3.3 液晶LCD160

22、2常用的11條指令表3-6 液晶LCD1602常用指令指令功能RSR/WDB7DB6DB5DB4DB3DB2DB1DB0執(zhí)行時(shí)間清屏00000000011.64ms功能詳解:清除液晶顯示器的容。光標(biāo)歸位000000001X1.64ms功能詳解:光標(biāo)撤回到顯示器的左上方,地址計(jì)數(shù)器(AC)值為0,DDRAM值不變進(jìn)入模式設(shè)置00000001I/DS40us功能詳解:I/D當(dāng)為0時(shí)寫(xiě)入數(shù)據(jù)后光標(biāo)左移,當(dāng)為1時(shí)寫(xiě)入數(shù)據(jù)后光標(biāo)右移S為0時(shí)寫(xiě)入新數(shù)據(jù)后顯示屏不移動(dòng),為1時(shí)寫(xiě)入新數(shù)據(jù)后顯示屏整體右移1字符顯示開(kāi)關(guān)控制0000001DCB40us功能詳解:D為0時(shí)顯示功能關(guān),為1時(shí)顯示功能開(kāi)C為0時(shí)無(wú)光標(biāo)。

23、1時(shí)有光標(biāo)B為0時(shí)光標(biāo)閃爍,1時(shí)光標(biāo)不閃爍設(shè)定顯示屏或光標(biāo)移動(dòng)方向000001S/CR/LXX40us功能詳解:S/CR/L設(shè)定的情況00光標(biāo)左移1格,且AC值減101光標(biāo)右移1格,且AC值加110顯示器上字符全部左移一格,但光標(biāo)不移動(dòng)11顯示器上字符全部右移一格,但光標(biāo)不移動(dòng)功能設(shè)定00001DLNFXX40us功能詳解:DL為0時(shí)數(shù)據(jù)總線為4位,1時(shí)數(shù)據(jù)總線為8位N為0時(shí)顯示1行,1時(shí)顯示兩行F為0時(shí)5*7點(diǎn)陣/每個(gè)字符,1時(shí)5*10點(diǎn)陣/每個(gè)字符設(shè)定CGRAM地址指令0001CGRAM的地址(6位)40us功能詳解:設(shè)定下個(gè)要存入的數(shù)據(jù)的CGRAM的地址設(shè)定DDRAM地址指令001CGR

24、AM的地址(7位)40us功能詳解:設(shè)定下個(gè)要存入的數(shù)據(jù)的DDRAM的地址讀取忙碌信號(hào)或AC地址01BFAC容(7位)40us功能詳解:BF為1表示液晶顯示器忙,為0時(shí),液晶顯示器可以接收單片機(jī)送來(lái)的數(shù)據(jù)或指令數(shù)據(jù)寫(xiě)入到DDRAMH或CGRAM10要寫(xiě)入的數(shù)據(jù)D7D040us功能詳解:(1)將字符碼寫(xiě)入DDRAM,液晶顯示屏并顯示對(duì)應(yīng)的字符(2)使用者設(shè)計(jì)的圖形存入CGRAM從CARAM或DDRAM讀取數(shù)據(jù)11要讀出的數(shù)據(jù)D7D040us功能詳解:讀取DDRAM或CGRAM的容在本次設(shè)計(jì)后續(xù)設(shè)計(jì)中,也可以利用AT89C51控制該芯片,實(shí)現(xiàn)語(yǔ)音的存儲(chǔ)以及語(yǔ)音報(bào)站。1、電源端(VCCA,VCCD)

25、:為了使噪聲最小,芯片部的數(shù)字和模擬電路要使用不同的電源的總線,并且分別引出到外封裝的不同的管腳上。數(shù)字和模擬電源端最好走不同的線,比如,選擇在離供電端相近的地方相連,而去耦電容就應(yīng)盡量選擇離器件近。2、地線(VSSD,VSSA):芯片的部的模擬和數(shù)字電路也使用不同的地線。3、同相的模擬輸入(ANA IN+):即錄音信號(hào)同相輸入端。這時(shí)輸入放大器采用單端或差分驅(qū)動(dòng)。當(dāng)采用單端時(shí),在耦合電容中輸入信號(hào),最大的幅度是32mV峰峰值,芯片頻帶的低端截止頻率決定耦合電容和本端的3K電阻的輸入阻抗。作為差分的驅(qū)動(dòng)時(shí),信號(hào)最大幅度是16mV峰峰值,這是和ISD33000系列一樣的。4、反相的模擬輸入(AN

26、A IN-):作為差分驅(qū)動(dòng)是錄音信號(hào)的反相的輸入端。信號(hào)是通過(guò)耦合電容來(lái)輸入,最大幅度是16mV峰峰值5、音頻輸出(AUD OUT):作用是提供音頻的輸出,可以驅(qū)動(dòng)5K的負(fù)載。6、片選(SS):此端為低電平,在向ISD4004芯片發(fā)送指令時(shí),并且該兩條指令間應(yīng)該為高電平。7、串行輸入(MOSI):此端是串行的輸入端。主控制器應(yīng)該在串行時(shí)鐘的上升沿前半周期把數(shù)據(jù)放到這個(gè)端口,來(lái)讓ISD輸入。8、串行輸出(MISO):作為ISD 的串行的輸出端。當(dāng)ISD沒(méi)有選中時(shí)本端會(huì)呈高阻態(tài)。9、串行時(shí)鐘(SCLK):作為ISD 的時(shí)鐘的輸入端。從主控制器中產(chǎn)生,可以用于同步的MOSI和MISO的數(shù)據(jù)傳輸。10

27、、中斷(/INT):本端作為漏極的開(kāi)路輸出。ISD 在任何操作過(guò)程(比如快進(jìn))中檢測(cè)到了EOM 或OVF 時(shí),本端會(huì)變低電平并保持。并且中斷的狀態(tài)在下一個(gè)SPI周期開(kāi)始時(shí)清除。中斷狀態(tài)也可以用RINT 的指令讀取。OVF 標(biāo)志-指示ISD的錄放操作是否已經(jīng)到存儲(chǔ)器未尾狀態(tài)。EOM 標(biāo)志-只在放音過(guò)程中檢測(cè)到部的EOM 標(biāo)志時(shí),狀態(tài)才會(huì)置1。11、行地址時(shí)鐘(RAC):漏極的開(kāi)路輸出。每經(jīng)過(guò)一個(gè)RAC 周期,表示ISD存儲(chǔ)器操作進(jìn)行了一行。該端口并且可以用于存儲(chǔ)的管理技術(shù)。12、外部時(shí)鐘(XCLK):本端部帶有下拉元件。工業(yè)級(jí)的芯片在整個(gè)溫度和電壓圍,頻率變化圍在-6/+4%,此時(shí)建議使用穩(wěn)壓電

28、源。如果要求更高精度,可從本端來(lái)輸入外部時(shí)鐘(如前邊所描述)。并且由于部的防混淆及平滑濾波器已經(jīng)設(shè)定好,所以上述推薦時(shí)鐘頻率不應(yīng)該再改變。輸入時(shí)鐘占空比是無(wú)關(guān)緊要的,因?yàn)椴渴紫冗M(jìn)行了分頻。并且在不外接地時(shí)鐘時(shí),此端是必須接地的。13、自動(dòng)靜噪(AMCAP):一般本端對(duì)地會(huì)接1mF的電容,來(lái)構(gòu)成部信號(hào)的電平峰值檢測(cè)電路一部分。并且與部設(shè)定閾值和峰值電平來(lái)作比較,從而決定自動(dòng)靜噪的功能的翻轉(zhuǎn)點(diǎn)。大信號(hào)時(shí),自動(dòng)靜噪的電路不衰減,靜音時(shí)衰減6dB。1mF 的電容也影響自動(dòng)靜噪的電路對(duì)信號(hào)幅度的響應(yīng)速度。本端接VCCA 則應(yīng)該禁止自動(dòng)靜噪。2.4 蜂鳴器和LED指示燈蜂鳴器鑒于用Proteus仿真,語(yǔ)音

29、模塊用蜂鳴器代替如圖3-7,采用三極管NPN,當(dāng)P11為高電平時(shí)電路導(dǎo)通,通過(guò)程序使P11進(jìn)行短時(shí)間高低電平轉(zhuǎn)換,以達(dá)到斷續(xù)蜂鳴提示的效果。圖3-11 蜂鳴器接線圖到站LED提示燈鑒于用Proteus仿真,語(yǔ)音模塊用蜂鳴器代替如圖3-7,采用三極管PNP,當(dāng)P1.0為低電平時(shí)電路導(dǎo)通,到站提示燈亮。 圖3-12 LED提示燈接線圖第三章 系統(tǒng)程序設(shè)計(jì)3.1 系統(tǒng)仿真主程序流程圖開(kāi)始界面蜂鳴器提示,LCD顯示第一行字符“Welcometo YanTai”運(yùn)行方式 P34=0?P35=0? N N Y Y順序報(bào)站,蜂鳴器提示,LED下車(chē)指示燈亮逆序報(bào)站,蜂鳴器提示,LED下車(chē)指示燈亮液晶顯示當(dāng)前到

30、站站名液晶顯示當(dāng)前到站站名圖3-1 系統(tǒng)仿真主程序流程圖系統(tǒng)仿真,初始化運(yùn)行程序時(shí),LCD第一行顯示歡迎字符,蜂鳴器蜂鳴,選擇BUTTON1或者BUTTON2(通過(guò)控制P35,P34)選擇順序或者逆序報(bào)站,按下按鍵之后,蜂鳴器提示,LED指示燈亮,延遲一段時(shí)間后顯示站名。隨后可以每到一個(gè)站依次顯示公交車(chē)站名,如果出現(xiàn)錯(cuò)誤或者重新選擇另一順序報(bào)站,可以使用按鍵復(fù)位,重新選擇報(bào)站方式。第四章 系統(tǒng)仿真實(shí)現(xiàn)4.1 開(kāi)發(fā)環(huán)境KeilC51介紹KeilC51是集編輯,編譯,仿真于一體,支持匯編,PLM 語(yǔ)言和 C 語(yǔ)言的程序設(shè)計(jì),易學(xué)易用。在 KeilC51 集成開(kāi)發(fā)環(huán)境下使用工程的方法來(lái)管理文件,所有

31、的源文件、頭文件甚至說(shuō)明性文檔都可以放在工程項(xiàng)目文件里統(tǒng)一管理。本次設(shè)計(jì)使用KeilC51的開(kāi)發(fā)工具大致流程如下:(1)運(yùn)行 Keil C51 軟件,進(jìn)入 Keil C51 集成開(kāi)發(fā)環(huán)境。(2)選擇工具欄的 Project 選項(xiàng),彈出下拉菜單,選擇 NewProject 命令建立一個(gè)新的Vision2 工程。這時(shí)會(huì)彈出所示的工程文件保存對(duì)話框,選擇工程目錄并輸入文件名后,單擊保存。(3)本次設(shè)計(jì)建立好一個(gè)空白工程,現(xiàn)在需要人工為工程添加程序文件,如果還沒(méi)有程序文件則必須建立它,可以選擇工具欄的 File 選項(xiàng),在彈出的下拉菜單中選擇 New 目錄。這次設(shè)計(jì)我采用的是將.c的文件導(dǎo)入工程。(4)

32、輸入程序,完畢后點(diǎn)擊“保存”命令保存源程序,KeilC51 支持匯編和C語(yǔ)言,Vision2 會(huì)根據(jù)文件后綴判斷文件的類(lèi)型,進(jìn)行自動(dòng)處理。(5)不斷糾正源文件錯(cuò)誤,檢查無(wú)誤后生成HEX文件,并將HEX文件導(dǎo)入Proteus中的51單片機(jī)來(lái)運(yùn)行實(shí)現(xiàn)。4.2 仿真環(huán)境PROTEUS介紹 Proteus是英國(guó)Labcenter公司開(kāi)發(fā)的電路分析與實(shí)物仿真軟件(EDA工具軟件)。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路,該軟件的十分適用于仿真設(shè)計(jì)。4.3 仿真運(yùn)行結(jié)果截圖初始化運(yùn)行界面圖4-1 初始化運(yùn)行界面4.4 仿真結(jié)果本次課題用Proteus設(shè)計(jì)出硬件

33、電路,用KeilC51編寫(xiě)程序共同完成課題的仿真,基本完成了公交車(chē)的模擬報(bào)站。功能的實(shí)現(xiàn)主要是通過(guò)程序來(lái)實(shí)現(xiàn),BUTTON1控制順向報(bào)站,當(dāng)報(bào)站系統(tǒng)啟動(dòng)后,按下BUTTON1開(kāi)始按預(yù)先設(shè)置好的站名進(jìn)行順向報(bào)站,每次按鍵按下時(shí)實(shí)現(xiàn)LED提示燈亮,蜂鳴器連續(xù)鳴叫7次。BUTTON2按鍵是實(shí)現(xiàn)公交車(chē)逆向返回時(shí)的報(bào)站,也滿(mǎn)足每次按鍵按下時(shí)實(shí)現(xiàn)LED提示燈亮,蜂鳴器連續(xù)鳴叫7次。如果使用過(guò)程中出現(xiàn)錯(cuò)誤時(shí),可以使用機(jī)械復(fù)位,重現(xiàn)選擇正向或者逆向報(bào)站。同時(shí),為了防止一次按鍵產(chǎn)生站名的漏報(bào),在軟件設(shè)計(jì)中使用了延時(shí)函數(shù),防止站名的漏報(bào)圖4-2 系統(tǒng)正向報(bào)站結(jié) 束 語(yǔ)通過(guò)了這次設(shè)計(jì),我知道了在做一個(gè)系統(tǒng)之前很重要

34、的是要做好需求分析,為此,我在網(wǎng)上查看了大量的相關(guān)資料,對(duì)目前市面上流行的幾種公交車(chē)報(bào)站器進(jìn)行了分析和比較,來(lái)為此次設(shè)計(jì)個(gè)方案確定來(lái)做了充足的準(zhǔn)備。我深入了解了單片機(jī)的工作原理和機(jī)制,對(duì)它的各個(gè)模塊功能有了更深層認(rèn)識(shí)和更本質(zhì)的理解,并且在這個(gè)過(guò)程中,我更加深入認(rèn)識(shí)了Proteus和KeilC51這兩個(gè)軟件,對(duì)這軟件的基本操作能夠熟練的使用,了解了軟件的優(yōu)缺點(diǎn),并且熟練了對(duì)C語(yǔ)言的使用和LCD1602程序設(shè)計(jì)。在做課程設(shè)計(jì)的過(guò)程中我遇到了很多困難,很多方案確定不下來(lái),編寫(xiě)代碼時(shí)也總是出現(xiàn)這樣或者那樣的錯(cuò)誤,并且有些功能自己也不知道該用什么方法來(lái)實(shí)現(xiàn),經(jīng)過(guò)向同學(xué)的請(qǐng)教和討論,我克服了這一些困難。最

35、終基本完成了用Proteus來(lái)實(shí)現(xiàn)公交車(chē)的模擬報(bào)站,但是模塊還是很簡(jiǎn)陋,也需要進(jìn)一步的優(yōu)化。該系統(tǒng)還存在著一些不足,主要體現(xiàn)在:仿真過(guò)程沒(méi)有辦法使用PT2262/2272和ISD4004語(yǔ)音模塊,用了按鍵和蜂鳴器來(lái)代替,只對(duì)這兩個(gè)模塊根據(jù)資料進(jìn)行了相應(yīng)的介紹。如果以后做實(shí)物的過(guò)程,那應(yīng)該完善這兩部分。并且在設(shè)計(jì)過(guò)程中也暴露了很多的缺點(diǎn),比如編程能力有待提高,需要通過(guò)不斷的編譯仿真調(diào)整才能最終得到想要的結(jié)果。附錄A 系統(tǒng)仿真全部代碼#include#include#define uchar unsigned char#define uint unsigned int#define port P0

36、 /DB0-DB7數(shù)據(jù)口sbit P31=P34;/無(wú)線信號(hào)接收端(控制反向)sbit P32=P35;/無(wú)線信號(hào)接收端(控制正向)sbit led=P10;/到站指示燈sbit fmp=P11;/蜂鳴器sbit e=P22;/使能sbit rw=P21;/讀寫(xiě)sbit rs=P20;/數(shù)據(jù)/命令sbit busy=P07;/檢測(cè)uchar code dis1=bei jing;uchar code dis2=shang hai ;uchar code dis3=tian jing;uchar code dis4=cang zhou;uchar code dis5=huan hua;uchar

37、 num=welcome to; /*延時(shí)*/void delay(uint n) uint i; for(;n0;n-) for(i=200;i0;i-);/*判斷是否忙*/void check() rs=0; rw=1; port=0x00; e=1; while(busy); e=0; /*寫(xiě)指令*/ void send(uchar command) check(); rs=0; rw=0; port=command; e=1; _nop_();_nop_(); e=0; /*寫(xiě)數(shù)據(jù)*/void write(uchar dat) check(); rs=1;/數(shù)據(jù) rw=0; port=

38、dat; e=1; _nop_();_nop_(); e=0; /*光標(biāo)位置*/void pos(uint P) send(P|0x80);/第一行個(gè)第一個(gè)0x80;/*初始化*/void init() send(0x38);/8位數(shù)據(jù),雙列,5*7字形 delay(1); send(0x0c);/開(kāi)0x08關(guān) delay(1); send(0x06);/地址加1 delay(1); send(0x01);/清屏 delay(1);void main() int i=0,j=0,k=0,s=0; uchar n; init(); delay(10); pos(0x00); delay(1);/或者用i=0,刪除后會(huì)發(fā)現(xiàn)不能顯示第一個(gè)數(shù) for(n=0;n18;n+) write(numn); delay(1);while(1) if(P32=0) j+; if(j=1) loop1:s=s+1; led=0; fmp=1; delay(100); led=1; fmp=0; if(s=7) goto loop1; s=0; pos(0x40); delay(1); for(n=0;n9;n+) write(dis1n); delay(5); if(j=2) loop2:s=s+1; led=0; fmp=1;

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論