公交車自動(dòng)報(bào)站系統(tǒng)設(shè)計(jì)(畢業(yè)論文)-精品_第1頁
公交車自動(dòng)報(bào)站系統(tǒng)設(shè)計(jì)(畢業(yè)論文)-精品_第2頁
公交車自動(dòng)報(bào)站系統(tǒng)設(shè)計(jì)(畢業(yè)論文)-精品_第3頁
公交車自動(dòng)報(bào)站系統(tǒng)設(shè)計(jì)(畢業(yè)論文)-精品_第4頁
公交車自動(dòng)報(bào)站系統(tǒng)設(shè)計(jì)(畢業(yè)論文)-精品_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 目錄公交車自動(dòng)報(bào)站系統(tǒng)的硬件設(shè)計(jì)原理摘 要本文介紹了一種的公交車自動(dòng)報(bào)站系統(tǒng)的硬件設(shè)計(jì)原理,提供了一種以AT89C52單片機(jī)為核心,控制大屏幕LED點(diǎn)陣顯示的硬件設(shè)計(jì)方案。系統(tǒng)主要通過AT89C52單片機(jī)做為系統(tǒng)CPU,處理包括鍵盤輸入和LED顯示屏顯示站名的所有信號處理。系統(tǒng)掃描到有鍵按下,判鍵確定后給CPU一個(gè)脈沖信號,然后CPU處理信號,確定所到站的站名, 再通過掃描驅(qū)動(dòng)從LED顯示屏上顯示出所到站的站名。達(dá)到半自動(dòng)報(bào)站的作用。整個(gè)系統(tǒng)硬件設(shè)計(jì)包括鍵盤電路、復(fù)位電路、顯示驅(qū)動(dòng)電路、顯示電路、內(nèi)存擴(kuò)展電路模塊。其中顯示模塊是本系統(tǒng)的重點(diǎn)。本系統(tǒng)很大程度上提高公交車報(bào)站的準(zhǔn)確性,可靠性。提

2、高了公交系統(tǒng)的服務(wù)質(zhì)量。促進(jìn)城市經(jīng)濟(jì)發(fā)展和交通變化的和諧發(fā)展。關(guān)鍵詞 : AT89C52單片機(jī); LED點(diǎn)陣; AT24C64; 自動(dòng)報(bào)站;1The Design of Automatic Bus Station-InformerThis article introduces a new methde to design the bus-stop reporting system。It provides a new scheme ,which is based AT89C52 microcomputer,to control the displ

3、ay of the LED lattice。 The system mainly through AT89C52 as the core system, controls keyboards input and LEDs display . The entire system through manual operation after receiving the keys to a system scan button press, Key subcontractors that determined a signal to the microcontroller, then the mic

4、ro-processing of signals from the accrued value added to determine the reliability of station names. Driving through the scanning from the LED display by the arrival station names. Reached semi-automatic stations role. The entire system includes some modules ;for example, the key subcontractors, the

5、 signal input microcontroller, signal processing, LED Drivers and LED display program. LED display is the focus of the system. The system can greatly enhance bus stations accuracy, and improve the quality of service of the transportation system. It will promote the city's economic development an

6、d the harmonious development of traffic.Keywords: AT89C52chip microcomputer; LED lattice; reporting system;AT24C64;目 錄第一章11.1 緒論11.2 研究前景及國內(nèi)外的現(xiàn)有水平21.3 課題論述與方案確定21.3.1 課題任務(wù)及設(shè)計(jì)要求21.3.3 方案的論述與確定3第二章 系統(tǒng)硬件設(shè)計(jì)72.1 單片機(jī)的選擇和外圍電路的設(shè)計(jì)72.1.1 外部晶振的選用72.1.2 復(fù)位電路82.2 按鍵電路的設(shè)計(jì)82.2.1 判鍵及其接口電路設(shè)計(jì)92.2.2 鍵盤的工作方式102.3 顯示及驅(qū)動(dòng)

7、電路的設(shè)計(jì)102.3.1 顯示電路設(shè)計(jì)102.3.2 顯示驅(qū)動(dòng)電路設(shè)計(jì)112.4 數(shù)據(jù)存儲(chǔ)器的設(shè)計(jì)142.4.1 內(nèi)存擴(kuò)展電路162.4.2 存儲(chǔ)器的組織以及運(yùn)行分析162.5 串行通信電路的設(shè)計(jì)18第三章 軟件設(shè)計(jì)213.1 串口通信軟件的設(shè)計(jì)213.1.1 下位機(jī)串行通信213.1.2 內(nèi)存讀寫程序的設(shè)計(jì)22第四章 總結(jié)2441 系統(tǒng)功能完善244.1.1 語音控制模塊的設(shè)計(jì)244.1.2 抗干擾措施2542 設(shè)計(jì)心得25致 謝25參考文獻(xiàn)26附 錄27 太原理工大學(xué)畢業(yè)論文 第一章 第一章 隨著科技的不斷進(jìn)步,人們對事物的認(rèn)知程度已經(jīng)得到了廣泛的提升,在實(shí)際生活中,大家都希望能使用簡便、

8、智能、人性化的產(chǎn)品。在公交車自動(dòng)報(bào)站方面,由于我國現(xiàn)狀,人口眾多,口音復(fù)雜,對于乘客而言,原來的人工報(bào)站存在著很多的問題。為了跟隨科技發(fā)展,提高公交系統(tǒng)的服務(wù)質(zhì)量,提升城市形象。開發(fā)一種能夠節(jié)省人力和物力,而又能讓乘客方便快捷的知道站臺(tái)報(bào)站器就成為一種必然。因此本次畢業(yè)設(shè)計(jì)中提出一個(gè)以AT89C52單片機(jī)為核心,用LED顯示屏顯示站名的即經(jīng)濟(jì)、高效、直觀的公交車到站自動(dòng)報(bào)站系統(tǒng)。1.1 緒論隨著國民經(jīng)濟(jì)的快速發(fā)展,城市建設(shè)規(guī)模不斷擴(kuò)大,大城市人口高度集中并大幅度增長,同時(shí)汽車保有量急劇上升,交通需求迅速擴(kuò)大,而道路交通基礎(chǔ)設(shè)施建設(shè)的發(fā)展則相對滯后。城市交通需求與供給之間的矛盾越來越突出,城市“

9、乘車難”、“行車難”的局面在加劇,交通阻塞呈現(xiàn)出點(diǎn)到線、由線到面的擴(kuò)展趨勢,交通擁擠、交通延誤、交通阻塞以及由此引起的噪音、廢氣污染嚴(yán)重影響著居民的正常的生活以及社會(huì)經(jīng)濟(jì)的持續(xù)、健康發(fā)展。近年來,我國城市交通的現(xiàn)狀已引起了政府、公眾、社會(huì)各界的廣泛關(guān)注,有關(guān)專家學(xué)者和交通工程師們在吸取各國城市交通發(fā)展經(jīng)驗(yàn)的基礎(chǔ)上,找到了一條解決我國城市交通發(fā)展問題的有效途徑,即優(yōu)先發(fā)展城市公共交通,以公共交通為杠桿降低城市交通需求總量,實(shí)現(xiàn)道路交通基礎(chǔ)設(shè)施發(fā)展與交通需求增長的均衡。實(shí)施“公交優(yōu)先”是解決我國城市交通發(fā)展問題的有效途徑,也是我國目前城市交通發(fā)展的基本政策。公交智能化是智能交通的一個(gè)重要的子領(lǐng)域,

10、同時(shí)也是落實(shí)“公交優(yōu)先”,使城市交通與社會(huì)經(jīng)濟(jì)和諧發(fā)展的重要組成部分。實(shí)施公交智能化,必須提高公交服務(wù)質(zhì)量,而到站后的準(zhǔn)確、及時(shí)報(bào)站就是一個(gè)方面,本設(shè)計(jì)基于AT89C52單片機(jī)、LED點(diǎn)陣、AT24C64、制作的公交車自動(dòng)報(bào)站系統(tǒng)就能解決這方面的問題。從而,達(dá)到公共形象的提升。當(dāng)前國內(nèi)主要大城市的公交車大都采用人工報(bào)站,即每到一站由司機(jī)或者乘務(wù)員來進(jìn)行報(bào)站。但有時(shí)由于受到各種因素如雨雪天路滑、車上擁擠、乘務(wù)員心情的變化等的影響,會(huì)出現(xiàn)報(bào)錯(cuò)站,漏報(bào)站的情況,給乘客特別是不熟悉本市地形的乘客帶來了不必要的麻煩,從而影響到了一個(gè)城市的窗口形象工程建設(shè)。于是開發(fā)研制自動(dòng)報(bào)站系統(tǒng)成為必然。1.2 研究前

11、景及國內(nèi)外的現(xiàn)有水平隨著公交優(yōu)先戰(zhàn)略的確定,公交在緩解城市交通擁堵方面的作用將越來越重要,與這種要求相比,我國大城市公共交通還有很大差距,主要表現(xiàn)為:為社會(huì)提供服務(wù)信息的水平低,只能是以經(jīng)驗(yàn)為主的被動(dòng)、滯后的實(shí)施服務(wù),仍以人工作業(yè)為主。上述問題顯然不利于公交對乘客的吸引,也是導(dǎo)致公交運(yùn)營組織模式落后、調(diào)度方式原始陳舊、企業(yè)管理效率不高的重要原因。因此,如何提高公交系統(tǒng)的服務(wù)質(zhì)量,是現(xiàn)代公交行業(yè)亟待解決的問題。我國發(fā)展智能運(yùn)輸?shù)幕A(chǔ)較差,因此理論研究雖在進(jìn)行,但相應(yīng)技術(shù)卻得不到推廣。在實(shí)際生活中得不到應(yīng)用,達(dá)不到廣泛服務(wù)社會(huì)的目的。所以發(fā)展一種自動(dòng)報(bào)站系統(tǒng),提高公交服務(wù)質(zhì)量就成為民用科技研究的一

12、個(gè)項(xiàng)目。目前在國際上已經(jīng)實(shí)現(xiàn)了DPS定位車載智能系統(tǒng),在國內(nèi)的幾個(gè)大城市也都有使用,實(shí)現(xiàn)了公交系統(tǒng)的全面監(jiān)控、調(diào)度。公交車自動(dòng)報(bào)站系統(tǒng)的研究也達(dá)到了無線聯(lián)絡(luò),全自動(dòng)報(bào)站的水平。但其一般其經(jīng)濟(jì)投入較高。結(jié)合我國現(xiàn)有的公交系統(tǒng)現(xiàn)狀,半自動(dòng)化報(bào)站系統(tǒng)還有很大的應(yīng)用空間。適應(yīng)用于一些中小城市。1.3 方案論述與方案確定本課題是一個(gè)軟硬件緊密結(jié)合的注重實(shí)際應(yīng)用的系統(tǒng)。在課題研究的期間,我主要研究系統(tǒng)硬件設(shè)計(jì),因此,在詳細(xì)講述之前,先介紹“公共汽車自動(dòng)報(bào)站”的設(shè)計(jì)思想及整體硬件方案的設(shè)計(jì)。實(shí)現(xiàn)公共汽車自動(dòng)報(bào)站是是公交智能化的一份子,是促進(jìn)智能交通的一個(gè)不可缺少的步驟,同時(shí)也是落實(shí)“公交優(yōu)先”使城市交通與社

13、會(huì)經(jīng)濟(jì)和諧發(fā)展的重要組成部分。 1.3.1 課題任務(wù)及設(shè)計(jì)要求1)課題任務(wù)以單片機(jī)為核心,制作一個(gè)公交車自動(dòng)報(bào)站系統(tǒng)。其必要的功能為:1: 具有2個(gè)16*16的點(diǎn)陣漢字顯示功能。2: 提示信息具有方便的可修改性。2)課題設(shè)計(jì)要求 1 硬件設(shè)計(jì): A:漢字的顯示(點(diǎn)陣),漢字顯示模塊采用(16*32)。B:串口通信:設(shè)計(jì)PC機(jī)與單片機(jī)之間的通信電路,用于把站名信息發(fā)送到單片機(jī)內(nèi)部。 C:存儲(chǔ)器的擴(kuò)展:采用大容量長壽命非易失存儲(chǔ)器存儲(chǔ)數(shù)據(jù)信息,可永久可靠的保存各項(xiàng)重要數(shù)據(jù)。本設(shè)計(jì)才用ATMEL公司的AT24C64串行EEPROM存儲(chǔ)器用中斷來控制報(bào)站。 D:用按鍵來控制報(bào)站的上下行和站名順序。2

14、軟件設(shè)計(jì):A:時(shí)鐘的顯示B:漢字的顯示程序C:串口的通信D:存儲(chǔ)器的擴(kuò)展E:各種程序的初始化1.3.2 方案的論述與確定報(bào)站器以單片機(jī)AT89C52為CPU來控制LED點(diǎn)陣顯示屏顯示所到站的站名,提高報(bào)站的準(zhǔn)確性,高效性和直觀性。由于線路不同,報(bào)站系統(tǒng)中存儲(chǔ)的站名需要通過更改來適用于各種線路,以此提高系統(tǒng)的通用性。所以我們需要設(shè)計(jì)通信模塊來實(shí)現(xiàn)PC機(jī)和單片機(jī)之間的通信。并能通過單片機(jī)與PC機(jī)之間的通信來實(shí)現(xiàn)報(bào)站名的更改,使其成為多功能開發(fā)型報(bào)站器。而由于考慮到我的自身設(shè)計(jì)水平有限,本次設(shè)計(jì)的系統(tǒng)沒有設(shè)計(jì)語音模塊模仿人聲報(bào)站而是設(shè)計(jì)了按鍵模塊控制LED顯示屏顯示站名,達(dá)到報(bào)站的目的。在內(nèi)存方面,

15、由于AT89C52的數(shù)據(jù)存儲(chǔ)為256字節(jié),由于站名的信息量比較大,片內(nèi)數(shù)據(jù)存儲(chǔ)空間有限,所以需要擴(kuò)展一個(gè)片外數(shù)據(jù)存儲(chǔ),來滿足要求,這就要求系統(tǒng)應(yīng)設(shè)置內(nèi)存擴(kuò)展模塊。LED顯示屏考慮系統(tǒng)只是一個(gè)演示作用,所以本設(shè)計(jì)采用了8塊8*8的LED顯示模塊組成的16*32的LED顯示屏,可以顯示兩個(gè)漢字,可以達(dá)到演示要求。綜上系統(tǒng)的框圖如圖11系統(tǒng)框圖;圖11系統(tǒng)框圖A 方案的論述1.方案A的設(shè)計(jì)框圖如12: 圖12 A方案設(shè)計(jì)框圖本系統(tǒng)硬件可分為PC機(jī),AT89C52單片機(jī),數(shù)據(jù)存儲(chǔ)器,顯示模塊,串行通訊模塊和鍵盤組成。硬件電路框圖如圖11方案一設(shè)計(jì)框圖。2.方案A的設(shè)計(jì)方法:基于AT89C52而設(shè)計(jì)的公

16、交車自動(dòng)報(bào)站系統(tǒng),為了能夠方便的報(bào)N*M鍵盤來控制報(bào)站,按1-N鍵來進(jìn)行報(bào)站,只要按其中的一個(gè)按鍵,就會(huì)去處理對應(yīng)的站臺(tái)信息。并且設(shè)計(jì)一些功能鍵,例如:方向鍵,結(jié)束鍵等。雖然單片機(jī)本身的 I/O口能實(shí)現(xiàn)簡單的數(shù)據(jù)I/O操作。但其功能畢竟有限,除了結(jié)構(gòu)和功能的原因之外,還有數(shù)量上的原因,單片機(jī)本身的I/O口不夠用,所以要擴(kuò)展I/O口。我們使用可編程接口芯片實(shí)現(xiàn)I/O口的擴(kuò)展,常用的接口芯片是8255。AT89C52的數(shù)據(jù)存儲(chǔ)器為256字節(jié),程序存儲(chǔ)器為8K,因?yàn)楸驹O(shè)計(jì)需要顯示的漢字信息量大,所以得擴(kuò)展數(shù)據(jù)存儲(chǔ)器,用6264來擴(kuò)展存儲(chǔ)器。以地址鎖存器74LS373鎖存的P0口低八位地址和P2口低五

17、位作為訪問8K片外數(shù)據(jù)存儲(chǔ)器6264的地址線,對6264進(jìn)行數(shù)據(jù)的讀寫。而對于公交車要隨時(shí)修改站臺(tái)的信息,我們可以通過一個(gè)電平和邏輯關(guān)系轉(zhuǎn)換的器件來使得單片機(jī)和PC機(jī)進(jìn)行通信,EIA-RS-232C是用正負(fù)電壓來表示邏輯狀態(tài),與TTL以高低電平表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠同計(jì)算機(jī)接口或終端的TTL器件連接,必須在EIA-RS-232C與TTL電路之間進(jìn)行電平和邏輯關(guān)系的變換。實(shí)現(xiàn)這種變換的方法可用分立元件,也可用集成電路芯片。目前較為廣泛地使用集成電路轉(zhuǎn)換器件,這里用MAX232。為了顯示漢字信息??梢杂肔ED點(diǎn)陣顯示屏來顯示漢字信息。用74LS244來驅(qū)動(dòng)LED點(diǎn)陣的列,用單片機(jī)的

18、I/O口來驅(qū)動(dòng)LED點(diǎn)陣的行。因?yàn)?4LS244的驅(qū)動(dòng)能力比較強(qiáng),所以不用加別的驅(qū)動(dòng)電路。3.方案A的優(yōu)缺點(diǎn): 方案一采用了常規(guī)的方法利用89C52的P0口,P2口提供數(shù)據(jù)線,用P3口的部分管腳提供控制線。雖然能達(dá)到擴(kuò)充系統(tǒng)功能的目的,但也需要增加74LS373等接口芯片,接口連線較多,不利于小型化,同時(shí)由于系統(tǒng)擴(kuò)展的需要,P0口,P2口及P3口的部分信號線不能再作為基本I/O口使用,及在擴(kuò)充外圍功能的同時(shí),浪費(fèi)了單片機(jī)的I/O口資源。像訪問6264和鍵盤就使用了太多的I/O口。但方案一比較常用,程序設(shè)計(jì)簡單。B方案二的論述1.方案B的設(shè)計(jì)框圖本系統(tǒng)硬件可分為PC機(jī),AT89C52單片機(jī),EE

19、PROM為AT24C64的存儲(chǔ)模塊,顯示模塊,串行通訊模塊,CPU復(fù)位電路,外部振蕩電路,按鍵組成。硬件電路圖如圖13方案B設(shè)計(jì)框圖所示:圖13方案B設(shè)計(jì)框圖2.方案B的設(shè)計(jì)方法基于AT89C52而設(shè)計(jì)的公交車自動(dòng)報(bào)站系統(tǒng),為了能夠方便的報(bào)站和硬件設(shè)計(jì)的簡單用兩個(gè)外部中斷來控制站臺(tái)的”+”和“-“,通過記數(shù)來判斷所到的站臺(tái),并且通過RESET來復(fù)位.由于漢字信息的存儲(chǔ)量大,而單片機(jī)內(nèi)部RAM比較少,不夠用,為了提高可靠性可用串行E2PROM,它是可在線電擦除和電寫入的存儲(chǔ)器,該存儲(chǔ)器具有體積小,接口簡單,數(shù)據(jù)保存可靠,可在線改寫和功耗低等特點(diǎn),在單片機(jī)系統(tǒng)中應(yīng)用十分普遍。在此,我們選用AT24

20、C64,它是8K的串行EEPROM,是支持IIC總線數(shù)據(jù)傳送協(xié)議的串行通信的片外存儲(chǔ)CMOS,EEPROM。而對于公交車要隨時(shí)修改站臺(tái)的信息,我們可以通過一個(gè)電平和邏輯關(guān)系轉(zhuǎn)換的器件來使得單片機(jī)和PC機(jī)進(jìn)行通信,EIA-RS-232C是用正負(fù)電壓來表示邏輯狀態(tài),與TTL以高低電平表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠同計(jì)算機(jī)接口或終端的TTL器件連接,必須在EIA-RS-232C與TTL電路之間進(jìn)行電平和邏輯關(guān)系的變換。實(shí)現(xiàn)這種變換的方法可用分立元件,也可用集成電路芯片。目前較為廣泛地使用集成電路轉(zhuǎn)換器件,這里用MAX232。為了顯示漢字信息,可用LED點(diǎn)顯示屏(16*32)來顯示漢字,用晶體

21、管來驅(qū)動(dòng)。3.方案B 優(yōu)缺點(diǎn):方案二采用了只占用兩根普通口線串行輸入輸出片外數(shù)據(jù)存儲(chǔ)器EEPROMAT24C64,采用了IIC總線,地址和數(shù)據(jù)都是通過由普通口線模擬IIC總線串行口送出,大大節(jié)省了MCU寶貴的口線,不需要地址鎖存器和8255有利于對系統(tǒng)升級和擴(kuò)展,此外方案2器件較少,硬件設(shè)計(jì)簡潔;此外,由于使用普通的口線來模擬IIC總線給程序設(shè)計(jì)帶來一定的困難。用晶體管驅(qū)動(dòng)點(diǎn)陣也能達(dá)到比較好的效果。對于站臺(tái)的報(bào)站,通過外部中斷來實(shí)現(xiàn)更加方便,這樣可以減少硬件和軟件的設(shè)計(jì)。通過以上的比較,我們選擇方案2。6太原理工大學(xué)畢業(yè)論文 第二章 系統(tǒng)硬件設(shè)計(jì)第二章 系統(tǒng)硬件設(shè)計(jì)硬件的設(shè)計(jì)主要圍繞系統(tǒng)的功能

22、完全實(shí)現(xiàn),并且要保證整個(gè)系統(tǒng)在運(yùn)行過程中的穩(wěn)定性、安全性及生產(chǎn)的經(jīng)濟(jì)性。2.1 單片機(jī)的選擇和外圍電路的設(shè)計(jì)因?yàn)楣卉囓囎詣?dòng)報(bào)站系統(tǒng)設(shè)計(jì)需要較大的存儲(chǔ)量,所以要選擇一個(gè)數(shù)據(jù)和程序容量較大的單片機(jī),這樣就不用擴(kuò)展數(shù)據(jù)和程序存儲(chǔ)器。在這里我們選用了ATMEL公司的AT89C52單片機(jī)作為本設(shè)計(jì)硬件電路的主控芯片,它是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)8K BYTES的可反復(fù)擦寫的只讀程序存儲(chǔ)器和256BYTES的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器,器件采用ATMEL公司的高密度,非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置有8位中央處理器和FLASH存儲(chǔ)器單元,功能強(qiáng)大的AT89C52單片

23、機(jī)可提供許多復(fù)雜系統(tǒng)控制應(yīng)用場合。1: AT89C52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫口線,AT89C52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和FLASH存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫的FLASH存儲(chǔ)器可有效地降低開發(fā)成本。2: ALE/PROG端除輸出地址鎖存允許脈沖外,在編程期間還作為編程脈沖輸入端,參與控制對FLASH存儲(chǔ)器的讀,寫,加密,擦除等操作。而EA/VPP端在尋址片內(nèi)8KB FLASH程序存儲(chǔ)器時(shí),必須連到VCC,如果將此端連到GND端,將迫使單片機(jī)尋址外部0

24、000H-1FFFH范圍的程序存儲(chǔ)器。如果加密位被編程了,AT89C52的CPU將對EA的狀態(tài)進(jìn)行采樣并鎖存,EA的狀態(tài)不得與實(shí)際使用的內(nèi)部或外部程序存儲(chǔ)器的狀態(tài)發(fā)生矛盾。2.1.1 外部晶振的選用AT89C52的內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器。通過XTAL1,ATAL2外部接上一片作為反饋元件的晶體,與C1和C2構(gòu)成了并聯(lián)諧振電路,使其構(gòu)成自激振蕩器。電容的值具有微調(diào)的作用,我們?nèi)?0PF。具體的接法如圖21外部晶振電路: 圖21外部晶振電路AT89C52的工作頻率范圍在 0-24MHZ。我們選用的是12MHZ的晶振,振蕩周期為1us機(jī)器周期為1us,所以這個(gè)晶振可以滿足這個(gè)系統(tǒng)

25、的要求。并且晶振不能離單片機(jī)太遠(yuǎn),不然使用外部晶振進(jìn)行軟件調(diào)試時(shí)就會(huì)發(fā)現(xiàn)找不到信號。2.1.2 復(fù)位電路復(fù)位有硬件和軟件兩種,復(fù)位的作用是使程序自動(dòng)從0000H開始執(zhí)行,因此我們只要在AT89C52單片機(jī)的RESET端加上一個(gè)高電平信號,并持續(xù)10ms以上即可,RESET端接有一個(gè)上電復(fù)位電路,它是由一個(gè)小的電解電容和一個(gè)接地的電阻組成的。人工復(fù)位電路另外采用一個(gè)按鈕來給RESET端加上高電平信號。 圖2-2人工復(fù)位電路我們采用放電型人工復(fù)位電路,如圖2-2人工復(fù)位電路,上電時(shí)C通過R充電,維持寬度大于10ms的正脈沖,完成上復(fù)位功能。C充電結(jié)束后,RESET端出現(xiàn)低電平CPU正常工作。在此我

26、們?nèi)×说湫椭礡=10K,R1=1K,C=10uf。上電復(fù)位實(shí)現(xiàn)的時(shí)間 :T=R*C =10K*10UF =100ms>=10ms需要人工復(fù)位時(shí),按下按鈕K,C通過K和R1放電,RESET端電位上升到高電平,實(shí)現(xiàn)人工復(fù)位,K松開后C重新充電,充電結(jié)束后,CPU重新工作,R1是限流電阻,阻值不可以過大,否則不能起到復(fù)位作用。22 按鍵電路的設(shè)計(jì)鍵盤實(shí)質(zhì)上是一組按鍵開關(guān)的集合,控制CPU通過按鍵來識別特定的用戶命令,從而轉(zhuǎn)入相應(yīng)的程序來執(zhí)行用戶命令。鍵盤的軟硬件的設(shè)計(jì)涉及下面幾個(gè)方面的問題:對于此設(shè)計(jì)來說我們要準(zhǔn)確的顯示我們所要對應(yīng)的信息,每按下一次按鍵要顯示所要顯示的信息。這按鍵是主要用來報(bào)

27、站的而設(shè)計(jì)的。這樣比鍵盤操作方便,也比較實(shí)惠。按鍵電路采用中斷模式。當(dāng)有按鍵按下時(shí),系統(tǒng)產(chǎn)生中斷,CPU響應(yīng)中斷后,開始計(jì)數(shù),即查詢鍵號,通過軟件來實(shí)現(xiàn)該鍵號所對應(yīng)鍵的功能鍵盤的大體設(shè)置為:第一個(gè)鍵為報(bào)站控制鍵S1用來控制站臺(tái)“+”例如:第一站為東華站,按下S1時(shí)顯示第二站:火車站,其余的站臺(tái)工作原理也一樣。S2用來控制站臺(tái)的“-”,第二站為火車站,在按下S2時(shí)這樣就顯示火車站。電路如圖23按鍵電路:圖23按鍵電路2.2.1 判鍵及其接口電路設(shè)計(jì)鍵的閉合與否反應(yīng)在電壓上就是呈現(xiàn)出高電平或低電平,如果高電平表示斷開,那么低電平則表示閉合,通過電平的高低狀態(tài)的檢測可確認(rèn)鍵按下與否。為了確保CPU對

28、一次按鍵動(dòng)作只確認(rèn)一次,并且防止干擾信號的影響,必需加入消除電平抖動(dòng)的措施,下圖3.3為按鍵抖動(dòng)示意。消除抖動(dòng)通常有硬、軟硬兩種方法,硬件消除抖動(dòng)可采取雙穩(wěn)態(tài)電路或?yàn)V波消抖電路;軟件消抖是在第一次檢測到有鍵按下時(shí),執(zhí)行一段延時(shí)程序再確認(rèn)該鍵是否仍閉合,如果還是閉合狀態(tài)則確認(rèn)該鍵按下,從而消除抖動(dòng)和干擾影響。當(dāng)按鍵較多時(shí),我們多采用硬件件消抖法。按鍵接口設(shè)計(jì)有兩種方法,獨(dú)立式按鍵和矩陣式鍵盤。獨(dú)立式按鍵各鍵相獨(dú)立,每個(gè)按鍵各接入一根輸入線,只要檢測輸入線的電平就可以識別按鍵狀態(tài)。這種方法電路配置靈活,軟件結(jié)構(gòu)簡單,但每個(gè)按鍵需占用一根輸入口。由于該設(shè)計(jì)方案IO資源浪費(fèi)大。故此方法只適用于按鍵少或

29、其他控制功能很簡單的場合。矩陣鍵盤適用于按鍵數(shù)量較多的場合,它把鍵盤輸入線分為行線和列線,按鍵位于列的交叉點(diǎn)上。按鍵的識別需要軟件分別掃描行線和列線,根據(jù)掃描的結(jié)果判具體按下的按鍵。由于本設(shè)計(jì)中的按鍵只有三個(gè),考慮系統(tǒng)可靠性和鍵盤設(shè)計(jì)的簡單所以采用獨(dú)立式按鍵。圖24 按鍵閉合及斷開時(shí)的電壓。圖24按鍵閉合及斷開前后的電壓2.2.2 鍵盤的工作方式鍵盤掃描只是CPU的工作內(nèi)容之一,CPU在忙于各項(xiàng)工作時(shí),如何處理鍵盤輸入取決于鍵盤的工作方式,鍵盤工作方式有三種,編程掃描、定時(shí)掃描和中掃描。在編程掃描中,CPU反復(fù)地掃描鍵盤,等待用戶的輸入命令,而執(zhí)行鍵入命令或處理輸入數(shù)據(jù)時(shí),CPU不再相應(yīng)輸入要

30、求,直到CPU返回重新掃描鍵盤為止。時(shí)掃描工作方式利用單片機(jī)內(nèi)部定時(shí)器產(chǎn)生定時(shí)中斷,CPU相應(yīng)定時(shí)器中斷后對鍵盤進(jìn)行掃描,在有鍵按下時(shí)識別出該鍵并執(zhí)行相應(yīng)功能程序。使用中斷方式時(shí)要求在沒有鍵按下時(shí),不占用CPU處理時(shí)間,只有當(dāng)有鍵按下時(shí)產(chǎn)生鍵盤中斷,由于中斷識別鍵并執(zhí)行功能程序,這種方法使用最多。 23 顯示和驅(qū)動(dòng)電路的設(shè)計(jì)我們知道的用來顯示的器件很多。比如數(shù)碼管、LCD、點(diǎn)陣式LED。數(shù)碼管只能顯示數(shù)字,LCD可以顯示漢字、符號、數(shù)字和圖形。雖然LCD的顯示效果要比LED好,顯示電路也比較簡單(很大一部分已經(jīng)集成化)。但是它的價(jià)格比較高,也不容易采購。所以綜合考慮生產(chǎn)成本,本系統(tǒng)采用點(diǎn)陣式L

31、ED顯示。它具有以下優(yōu)點(diǎn):1 價(jià)格比較便宜 2 容易擴(kuò)展顯示比較多的漢字 3 顯示漢字效果好,廣泛用于廣告顯示屏,交通屏幕。通常情況下,點(diǎn)陣式LED顯示屏是由標(biāo)準(zhǔn)的LED顯示模塊組成的。2.3.1 顯示電路設(shè)計(jì)HS 1088BS點(diǎn)陣式LED顯示模塊是8行8列64個(gè)LED組成。單塊點(diǎn)陣式LED顯示模塊能夠顯示各種字母,數(shù)字和常用的符號。點(diǎn)陣式LED顯示模塊在8行8列的每一個(gè)交點(diǎn)上裝有一個(gè)LED。模塊有共陽極和共陰極之分。LED的正極接行引線,負(fù)極接列引線的稱為共陽極LED顯示模塊,反之為共陰極LED顯示模塊。由4個(gè)8*8的LED顯示屏組成的16*16的LED漢字顯示屏如圖24, 4個(gè)8*8的LE

32、D顯示屏組成的16*16的LED顯示屏,行引腳逐個(gè)連接而成。 圖25 4個(gè)8*8的LED顯示屏組成的16*16的LED顯示屏2.3.2 顯示驅(qū)動(dòng)設(shè)計(jì)單個(gè)LED器件的驅(qū)動(dòng):從LED器件的發(fā)光原理可知,當(dāng)向LED器件施加正向電壓時(shí),流過器件的正向電流使其發(fā)光,因此LED的驅(qū)動(dòng)就是如何使它的PN結(jié)處于正偏置,而且為了控制它的發(fā)光程度,還要解決正向電流的調(diào)節(jié)問題,具體的驅(qū)動(dòng)方法可以分為直流驅(qū)動(dòng)和恒流驅(qū)動(dòng),脈沖驅(qū)動(dòng)和掃描驅(qū)動(dòng),這里采用恒流驅(qū)動(dòng)。由于LED器件的正向特性比較陡,加上器件的分散性,使得在同樣電源電壓和同樣的限流電阻的情況下,各器件的正向電流并不相同,引起發(fā)光強(qiáng)度的差異。如果能夠?qū)ED正向電

33、流直接進(jìn)行恒流驅(qū)動(dòng),只有恒流值相同,發(fā)光強(qiáng)度比較接近,我們知道晶體管的輸出特性具有恒流性質(zhì),所以用晶體管驅(qū)動(dòng)LED,單個(gè)LED驅(qū)動(dòng)如圖26單個(gè)LED驅(qū)動(dòng)電路。P2,P1輸出的電流約為400UA左右,LED點(diǎn)陣的工作電流大約為20MA,工作電壓大約為2V為了不使LED燒壞R最大約為6.75千歐。在此選R=4.7千歐。圖26單個(gè)LED驅(qū)動(dòng)電路本次設(shè)計(jì)中采用的是(16*32)的LED顯示屏顯示漢字,一次可以顯示兩 個(gè)漢字,由于站名的長度比顯示屏長,所以必須實(shí)現(xiàn)移位的功能。LED顯示的三種方式:1) 占空比控制驅(qū)動(dòng):減少驅(qū)動(dòng)電路。在需要進(jìn)行灰度級控制顯示的情況下要求隨時(shí)調(diào)整占空比使LED達(dá)到響應(yīng)的發(fā)光

34、強(qiáng)度。2) 組合驅(qū)動(dòng):按照行列進(jìn)行驅(qū)動(dòng)。3) 掃描驅(qū)動(dòng): 所謂脈沖驅(qū)動(dòng)方式,就是利用人眼的視覺暫留效應(yīng),以脈沖的方式對LED器件進(jìn)行供電,使之間歇性地點(diǎn)亮。采用這種驅(qū)動(dòng)方式需要對以下兩個(gè)方面進(jìn)行考慮:脈沖電流的幅值和其重復(fù)頗率。首先,脈沖電流幅值的選擇,當(dāng)脈沖驅(qū)動(dòng)的平均值與直流驅(qū)動(dòng)的電流值相等時(shí),我們?nèi)搜鄣母杏X是相同的,也就是說兩者的發(fā)光強(qiáng)度相當(dāng)。掃描驅(qū)動(dòng)是通過數(shù)字邏輯電路,使若干LED器件輪流導(dǎo)通,用以節(jié)省控制驅(qū)動(dòng)電路。LED顯示屏是將發(fā)光燈按行按列布置的,驅(qū)動(dòng)時(shí)也就按行按列驅(qū)動(dòng)。在掃描驅(qū)動(dòng)方式下可以按行掃描.A: 按列控制也叫可按列掃描,按行控制。所謂“掃描”的含義,就是指一行一行地循環(huán)接

35、通整行的LED器件,而不問這一行的哪一列的LED器件是否應(yīng)該點(diǎn)亮,某一列的LED器件是否應(yīng)該點(diǎn)亮,由所謂的列控制電路來負(fù)責(zé)。B: 按行掃描按列控制的方式。一個(gè)m行n列結(jié)構(gòu)的LED顯示屏,當(dāng)采用行掃描列控制的驅(qū)動(dòng)方式時(shí),從H1到Hm輪流將高電位接通各行線,使連接到各行的LED器件接通正電源,但具體哪一個(gè)LED導(dǎo)通,還要看它的負(fù)電源是否接通,這就是列控制所要完成的工作。例如在LED顯示屏上需要LED 11熄滅,LED21點(diǎn)亮,那么當(dāng)掃描到H1行時(shí),L1列的電位就應(yīng)該為高:當(dāng)掃描到H2行時(shí),L1列的電位就應(yīng)該為低。根據(jù)驅(qū)動(dòng)方式的不同,LED大屏幕顯示方式可分為靜態(tài)顯示和動(dòng)態(tài)掃描顯示兩種。靜態(tài)顯示是指

36、將一幅畫面輸入以后要保持到下一幅畫面的輸入;動(dòng)態(tài)顯示是指將畫面分為若干部分分別進(jìn)行刷新。靜態(tài)顯示每一個(gè)像素需要一套驅(qū)動(dòng)電路,如果顯示屏為n*m個(gè)像素屏,則需要n*m套驅(qū)動(dòng)電路;動(dòng)態(tài)掃描顯示則采用多路復(fù)用技術(shù),如果是P路復(fù)用的話,則每P個(gè)像素需一套驅(qū)動(dòng)電路,n*m個(gè)像素僅需n*m/p套驅(qū)動(dòng)電路。另外,對于靜態(tài)顯示方式,需要較多的譯碼驅(qū)動(dòng)裝置,需要的引線也比較多;對于動(dòng)態(tài)掃描顯示方式,可以避免以上不足,但是容易造成顯示亮度低、屏幕閃爍等問題。在實(shí)際的LED大屏幕顯示中,很少有采用靜態(tài)驅(qū)動(dòng)的。LED發(fā)光器件的數(shù)量巨大,不宜使用靜態(tài)顯示驅(qū)動(dòng)電路。掃描驅(qū)動(dòng)電路一般采用多行的同名列驅(qū)動(dòng)器。行驅(qū)動(dòng)器一行的行

37、線連到電源的一端,列驅(qū)動(dòng)器一列的列線連接到電源的另一端。當(dāng)行驅(qū)動(dòng)選中第I行,列驅(qū)動(dòng)選中第J列時(shí),對應(yīng)的LED器件根據(jù)列驅(qū)動(dòng)的數(shù)據(jù)要求進(jìn)行顯示,控制電路負(fù)責(zé)有序的選通各行。在選通每一行之前還要把該行各列的數(shù)據(jù)準(zhǔn)備好。一旦該行選通,這一行上的LED發(fā)光器件就可以根據(jù)列數(shù)據(jù)進(jìn)行顯示。在本設(shè)計(jì)中LED點(diǎn)陣顯示模塊采用動(dòng)態(tài)掃描方式顯示,下圖是列掃描的LED點(diǎn)陣顯示的驅(qū)動(dòng)接口,要顯示一個(gè)清楚的漢字要求要4塊1088BS組成。顯示兩個(gè)漢字就需要8塊,對于組成一個(gè)16*16的點(diǎn)陣就要求把每兩個(gè)行列組合。其中行方向接在P1和P2口,考慮負(fù)載能力,接16個(gè)2n5551的PNP三極管驅(qū)動(dòng)。列方向則由兩片4-16譯碼

38、器74L154完成掃描,它由89C52的P0.4-P0.7控制。同樣的驅(qū)動(dòng)部分是由32個(gè)2N5041的三極管完成的,如圖2-7漢字的顯示電路。 圖2-7漢字的顯示電路按列掃描時(shí)。動(dòng)態(tài)顯示方式的列驅(qū)動(dòng)電流大,而行驅(qū)動(dòng)電流小,最大電流計(jì)算有以下公式: 行驅(qū)動(dòng)電流=列數(shù)*平均工作電流 列驅(qū)動(dòng)電流=行數(shù)*行驅(qū)動(dòng)電流由上式可以知道,列驅(qū)動(dòng)電流大于保護(hù)能夠驅(qū)動(dòng)電流的倍數(shù)等于顯示點(diǎn)陣的列數(shù),所以列的三極管要有大電流輸出的晶體管。LED顯示屏作為單獨(dú)顯示硬件,具有能夠?qū)⑼鈦頂?shù)據(jù)轉(zhuǎn)換成漢字(或者圖形)顯示出來。這個(gè)過程由硬件驅(qū)動(dòng)程序完成控制和實(shí)現(xiàn)。顯示過程是這樣的:首先控制顯示屏的單片機(jī)接受LED屏主控微機(jī)傳來

39、的數(shù)據(jù),下來,主孔程序?qū)?shù)據(jù)轉(zhuǎn)換成屏幕顯示的圖形,儲(chǔ)存起來。在按照掃描的順序與屏幕對應(yīng)的關(guān)系,將存儲(chǔ)的內(nèi)容轉(zhuǎn)換成掃描內(nèi)容,在將數(shù)據(jù)輸出到控制單個(gè)的LED模塊的數(shù)據(jù)存儲(chǔ)器,最后掃描鎖存器中的數(shù)據(jù)。刷新屏幕,我們把行列總線接在單片機(jī)的I0口,然后把上面分析到掃描代碼送入總線,就可以得到顯示漢字。但是在設(shè)計(jì)中每次顯示兩個(gè)漢字,由于一共用到16行,32列,如果全部接到89C52單片機(jī),一共需用48條IO口,這樣就造成IO資源不夠使用。就得擴(kuò)展系統(tǒng)才能實(shí)現(xiàn)功能。點(diǎn)陣顯示屏每個(gè)單元由8個(gè)8*8點(diǎn)陣LED顯示模塊,行信號選擇P1口、P2口,行驅(qū)動(dòng)器組成。列信號選擇譯碼器74L164、列驅(qū)動(dòng)器組成。8個(gè)8*8

40、點(diǎn)陣LED顯示模塊組成一個(gè)16*32的LED點(diǎn)陣,用于同時(shí)顯示2個(gè) 16*16點(diǎn)陣漢字字符或數(shù)字。單元顯示屏可以接受來自控制器或者上一級顯示單元模塊傳輸下來的數(shù)據(jù)信息和命令信息,并可將這些數(shù)據(jù)信息和命令信息不經(jīng)任何變化的再傳輸?shù)较乱患夛@示模塊單元中,因此顯示板可擴(kuò)展至更多的顯示單元,用于顯示更多的顯示內(nèi)容,顯示屏控制系統(tǒng)由顯示控制器和LED點(diǎn)陣顯示屏組成,控制系統(tǒng)的邏輯結(jié)構(gòu)框圖見圖28顯示框圖NPN行驅(qū)動(dòng)NPN行驅(qū)動(dòng)P1.0-P1.7P2.0-P2.7AT89C528*8LED1,23,48*8LED1,23,4PNP列驅(qū)動(dòng)兩片譯碼器74LS154圖28顯示框圖2.4 數(shù)據(jù)存儲(chǔ)器的設(shè)計(jì)由于一般

41、的公交車報(bào)站的數(shù)量都比較大,一般每站顯示的漢字都有二三十個(gè),那么總共的漢字就有幾百個(gè)漢字。這樣系統(tǒng)的數(shù)據(jù)存儲(chǔ)器的存儲(chǔ)空間就要求好幾K。所以必須擴(kuò)展一片E2PROM來存儲(chǔ)漢字。這片E2PROM必須滿足漢字存儲(chǔ)容量要求。我們選擇AT24C64芯片作為本系統(tǒng)的外部擴(kuò)展E2PROM芯片,它的地址空間滿足本次設(shè)計(jì)的要求。使用I2C總線擴(kuò)展以達(dá)到簡化電路,提高系統(tǒng)可靠性的目的。2.4.1 內(nèi)存擴(kuò)展電路AT24C64是一個(gè)64K位的支持I2C數(shù)據(jù)總線傳送協(xié)議的串行E2PROM??捎秒姴脸?、可編程、自定義寫周期(可編程、擦除100萬次)的串行E2PROM。一般采用的兩種寫入方式。一種是字節(jié)寫入方式、另一種是頁

42、寫入方式,具有32字節(jié)的數(shù)據(jù)的頁面寫能力。其管腳排列和功能描述如圖2-9 AT24C64管腳排列和功能描述:管腳名稱功能A0、A1、A2器件地址選擇SDA串行數(shù)據(jù)地址SCL串行時(shí)鐘WP寫保護(hù)Vcc-6V+1.8V工作電壓Vss接地圖2-9 AT24C64管腳排列和功能描述管腳功能描述:1) SCL:串行時(shí)鐘這是一個(gè)輸入管腳,用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時(shí)鐘。2) SDL:串行數(shù)據(jù)地址這是一個(gè)雙向傳輸端,用于所有地址和數(shù)據(jù)的發(fā)送和接收。對于一般的數(shù)據(jù)傳輸,僅在SCL為低期間SDA才允許變化。在SCL為高期間變化,留給指示START和STOP條件。3) A0(CE0)、A1(CE1)、A2(C

43、E2),器件地址輸入端這些輸入端用于多個(gè)器件級聯(lián)時(shí)設(shè)置器件地址,當(dāng)這些管腳懸空時(shí)默認(rèn)值為0. A0、A1、A2不需片選,可任意接,本設(shè)計(jì)A0接VCC,A1和A2接地。4) WP:寫保護(hù)如果WP管腳接到VCC,所有內(nèi)容被寫保護(hù)(處于只讀狀態(tài))。當(dāng)WP管腳連接到VSS或者懸空,允許器件進(jìn)行正常的讀寫功能。通過控制WP管腳,就可以進(jìn)行正常的顯示數(shù)據(jù)的存儲(chǔ),并在系統(tǒng)使用中可以將WP管腳接到VCC從而達(dá)到保護(hù)內(nèi)存中的數(shù)據(jù)的作用。由于AT24C64的容量為8KB,已經(jīng)滿足本設(shè)計(jì)的容量要求,所以本系統(tǒng)只需滿足擴(kuò)展一片AT24C64芯片。AT24C64的WP管腳是寫保護(hù),設(shè)計(jì)中接到VSS管腳(以此滿足設(shè)計(jì)中此

44、模塊的工作任務(wù))。允許進(jìn)行正常的讀寫操作。由于只擴(kuò)展一片AT24C64、A0、A1、A2不需片選,可任意接,本設(shè)計(jì)A0接VCC,A1和A2接地。6腳SCL時(shí)鐘接I2C總線時(shí)鐘線(P0.0);5腳SDL數(shù)據(jù)線接I2C總線數(shù)據(jù)線(P0.1)。如圖2-10 AT89C52與AT24C64的接口電路:圖2-10 AT89C52與AT24C64的接口電路發(fā)送AT24C64的地址。從地址的高4位D7D4固定為1010,接下來的D3D1為器件的片選地址。本次設(shè)計(jì)A0接高電平,A1、A2接低電平,所以D3D1為001.器件的D0位是讀寫功能控制位,“1”表示對AT24C64進(jìn)行讀操作,“0”表示對AT24C6

45、4進(jìn)行寫操作。因此本設(shè)計(jì)中AT24C64的地址位是1010001X。2.4.1 存儲(chǔ)器的組織以及運(yùn)行分析存儲(chǔ)器的的組織:AT24C64內(nèi)部分為32頁,每頁256個(gè)字節(jié),故需要13位地址對其內(nèi)部字節(jié)進(jìn)行尋址。運(yùn)行方式:對于時(shí)鐘和數(shù)據(jù)傳輸,串行數(shù)據(jù)IO端SDA一般需要設(shè)置外部上拉電阻以達(dá)到使其處于高電平。加到SDA的數(shù)據(jù)只有在串行時(shí)鐘SCL對于低電平的時(shí)鐘周期內(nèi)可以改變。當(dāng)串行時(shí)鐘SCL處于高電平時(shí),SDA的數(shù)據(jù)變化用于指示起始或停止?fàn)顟B(tài)。起始狀態(tài):當(dāng)SCl為高電平時(shí),SDA由高電平變到低電平則處于起始狀態(tài),起始狀態(tài)應(yīng)該處于其他任何命令之前。停止?fàn)顟B(tài):當(dāng)SCl為高電平時(shí),SDA由低平變到高電平則處

46、于低功耗的備用方式(Standby Mode)。應(yīng)答信號:應(yīng)答信號是由接收數(shù)據(jù)的器件發(fā)出的。當(dāng)EEPROM接收完成一個(gè)寫入數(shù)據(jù)之后,會(huì)在SDA上發(fā)一個(gè)“0”應(yīng)答信號ACK信號。ACK信號在第九個(gè)時(shí)鐘周期出現(xiàn)。a) 讀寫操作過程AT24C64在進(jìn)入起始狀態(tài)之后,需要一個(gè)8位的器件地址字去啟動(dòng)存儲(chǔ)器進(jìn)行讀寫操作。其器件地址為10 10 A2 A1 A0 RW.器件地址的最高4位1010為器件標(biāo)志;A2、A1、A0為硬件布線地址,AT24C6不用硬件布線地址,故這三位就用于內(nèi)部頁面尋址。AT24C6的字節(jié)地址為:真正地址=( A2 A1 A0)*28+字地址;RW為讀寫選擇位,當(dāng)其為1時(shí),執(zhí)行讀操作

47、,為0時(shí)執(zhí)行寫操作。1)字節(jié)寫這種寫方式只執(zhí)行一個(gè)字節(jié)的寫入,在起始狀態(tài)中,首先寫入8位的起始地址,則芯片會(huì)產(chǎn)生一個(gè)“0”信號ACK;隨后,接著寫入8位數(shù)據(jù),在接到數(shù)據(jù)后,芯片又產(chǎn)生一個(gè)“0”信號ACK作為應(yīng)答,到此為止,完成了一個(gè)字節(jié)的寫過程,故此在SDA產(chǎn)生一個(gè)停止?fàn)顟B(tài),這是外部寫過程。在這個(gè)過程中控制芯片的單片機(jī)應(yīng)在芯片的SCL、SDA斷入恰當(dāng)?shù)男盘?。?dāng)然在一個(gè)字節(jié)的寫過程結(jié)束時(shí),單片機(jī)應(yīng)以停止?fàn)顟B(tài)結(jié)束寫過程,這時(shí),芯片進(jìn)入內(nèi)部定時(shí)的寫周期,以便把接受的數(shù)據(jù)寫入到存儲(chǔ)單元中。在芯片的內(nèi)部寫周期中,其所有輸入被屏蔽,同時(shí)不響應(yīng)外部直到寫周期完成。這是內(nèi)部寫過程,這個(gè)過程大約需要10ms時(shí)間

48、,內(nèi)部寫過程處于停止?fàn)顟B(tài)余下一次起始狀態(tài)之間。 2)現(xiàn)行地址讀:在上一次讀寫操作完成之后,芯片內(nèi)部字地址計(jì)數(shù)器會(huì)加一,產(chǎn)生現(xiàn)行地址,只要沒有執(zhí)行讀、寫操作,這個(gè)現(xiàn)行地址就會(huì)在芯片保持接電的期間一直保存,一旦器件地址選中芯片,并且有RW=1,則在芯片的應(yīng)答信號ACK把讀出的現(xiàn)行地址的數(shù)據(jù)輸出?,F(xiàn)行地址的數(shù)據(jù)輸出時(shí),就由單片機(jī)一位一位接收,接收后,單片機(jī)不用發(fā)出應(yīng)答信號ACK“0”電平,但應(yīng)保證發(fā)出停止?fàn)顟B(tài)的信號以結(jié)束現(xiàn)行地址讀操作。3)隨機(jī)讀:隨機(jī)讀和現(xiàn)行地址讀的最大區(qū)別在于,隨機(jī)都會(huì)執(zhí)行一個(gè)偽寫入過程,以把字地址裝入EEPROM芯片中,然后執(zhí)行讀出。顯然,隨機(jī)讀有兩個(gè)步驟:第一,執(zhí)行偽寫入把字

49、地址送入EEPROM,以選擇需讀的字節(jié);第二,執(zhí)行讀出根據(jù)字地址讀出對應(yīng)的內(nèi)容。當(dāng)EEPROM芯片接收了字地址及器件地址時(shí),在芯片產(chǎn)生應(yīng)答信號之后,單片機(jī)必須再產(chǎn)生一個(gè)起始狀態(tài),執(zhí)行現(xiàn)行地址讀,這是單片機(jī)再發(fā)出器件地址并且令RW=1,則EEPROM應(yīng)答器件地址,并行輸出被讀數(shù)據(jù)。數(shù)據(jù)讀出是單片機(jī)執(zhí)行一位一位接收,接收完畢,單片機(jī)不用發(fā)“0”應(yīng)答信號ACK,但必須產(chǎn)生停止?fàn)顟B(tài)以結(jié)束隨機(jī)讀過程。2.5 串行通信電路的設(shè)計(jì) 外設(shè)驅(qū)動(dòng)程序可以對系統(tǒng)提供訪問外圍設(shè)備的接口,把操作系統(tǒng)(軟件)和外圍設(shè)備(硬件)分離開來。當(dāng)外圍設(shè)備改變的時(shí)候,只需更換相應(yīng)的驅(qū)動(dòng)程序,不必修改操作系統(tǒng)的內(nèi)核以及運(yùn)行在操作系統(tǒng)

50、中的軟件。智能儀器一般都設(shè)有通信接口,以便實(shí)現(xiàn)程序控制,方便構(gòu)成自動(dòng)測試系統(tǒng),為了提高系統(tǒng)的兼容性,讓不同廠家的生產(chǎn)的任何一起都可以用一條無源電纜連接起來,并通過一個(gè)合適的接口與PC機(jī)連接。目前國際上才有的標(biāo)準(zhǔn)接口有GPIB、RS232、CAMAC。本次設(shè)計(jì)采用RS232標(biāo)準(zhǔn)。RS232標(biāo)準(zhǔn)(協(xié)議)的全稱是EIARS232C標(biāo)準(zhǔn),其中EIA代表美國電子工業(yè)協(xié)會(huì),RS是代表推薦標(biāo)準(zhǔn),232是標(biāo)識號,C代表RS232的最新一次修改。它規(guī)定連接電纜和機(jī)械、電器特性、信號功能及傳送過程。常用的物理標(biāo)準(zhǔn)有好幾種,這里只介紹EIA�EIARS232C。例如,目前在IBM PC機(jī)上的COM1、

51、COM2、接口就是RS232C接口。1 串行接口標(biāo)準(zhǔn)設(shè)計(jì)的選用 目前RS-232是PC機(jī)與通信工業(yè)中應(yīng)用最廣泛的一種串行接口。RS-232被定義為一種在低速率串行通訊中增加通訊距離的單端標(biāo)準(zhǔn)。RS-232采取不平衡傳輸方式,即所謂單端通訊。典型的RS-232信號在正負(fù)電平之間擺動(dòng),在發(fā)送數(shù)據(jù)時(shí),發(fā)送端驅(qū)動(dòng)器輸出正電平在+5+15V,負(fù)電平在-5-15V電平。當(dāng)無數(shù)據(jù)傳輸時(shí),線上為TTL,從開始傳送數(shù)據(jù)到結(jié)束,線上電平從TTL電平到RS-232電平再返回TTL電平。接收器典型的工作電平在+3+12V與-3-12V。由于發(fā)送電平與接收電平的差僅為2V至3V左右,所以其共模抑制能力差,再加上雙絞線上

52、的分布電容,其傳送距離最大為約15米,最高速率為20kb/s。RS-232是為點(diǎn)對點(diǎn)(即只用一對收、發(fā)設(shè)備)通訊而設(shè)計(jì)的,其驅(qū)動(dòng)器負(fù)載為37k。所以RS-232適合本地設(shè)備之間的通信。其有關(guān)電氣參數(shù)參見表1。 規(guī)定RS232RS422R485工作方式單端差分差分節(jié)點(diǎn)數(shù)1收、1發(fā)1發(fā)10收1發(fā)32收最大傳輸電纜長度50英尺400英尺400英尺最大傳輸速率20Kb/S10Mb/s10Mb/s規(guī)定RS232RS422R485最大驅(qū)動(dòng)輸出電壓+/-25V-0.25V+6V-7V+12V驅(qū)動(dòng)器輸出信號電平(負(fù)載最小值)負(fù)載+/-5V+/-15V+/-2.0V+/-1.5V驅(qū)動(dòng)器輸出信號電平(空載最大值)

53、空載+/-25V+/-6V+/-6V驅(qū)動(dòng)器負(fù)載阻抗()3K7K10054擺率(最大值)30V/sN/AN/A接收器輸入電壓范圍+/-15V-10V+10V-7V+12V接收器輸入門限+/-3V+/-200mV+/-200mV接收器輸入電阻()3K7K4K(最小)12K驅(qū)動(dòng)器共模電壓-3V+3V-1V+3V接收器共模電壓-7V+7V-7V+12V 通過對比,我們可以發(fā)現(xiàn)RS232的適用條件符合本次設(shè)計(jì)的要求,所以這也是采用RS232的主要原因。2. 電氣特性 EIARS232C對電氣特性、邏輯電平和各種信號線功能都做了規(guī)定。在TxD和RxD上:邏輯1(MARK)= 3V15V,邏輯0(SPACE

54、)=+3V+15V。在RTS 、CTS、 DSR、 DTR和 DCD控制線上信號有效時(shí)為+3V+15V。信號無效時(shí)為3V15V。由此可以知道RS232C標(biāo)準(zhǔn)對邏輯電平的定義。對于數(shù)據(jù)(信息碼):邏輯1的電平低于3V,邏輯0的電平高于+3V。對于控制信號:接通狀態(tài)即信號有效的電平高于+3V,斷開狀態(tài)即信號的電平低于3V,也就是當(dāng)傳輸電平的絕對值大于3V,電路可以有效的檢查出來。介于3V+3V之間的信號無意義,低于15V或高于15V的信號也是無效信號。EIARS232C與TTL轉(zhuǎn)換:EIARS232C是用正負(fù)電平來表示邏輯狀態(tài)的,與TTL以高低電平表示邏輯狀態(tài)的變化。因此為了能夠和計(jì)算機(jī)接口或終端

55、的TTL器件連接,必須在EIARS232C與TTL電路之間進(jìn)行電平和邏輯關(guān)系的變換。實(shí)現(xiàn)這種變化的方法可以采用分立元件,也可采用集成電路芯片。目前較為廣泛采用的是集成電路轉(zhuǎn)換芯片,如MC1488、SN75105芯片可完成TTL電平到EIA電平的轉(zhuǎn)換,而MC1488、SN75105即可實(shí)現(xiàn)。MAX232芯片可完成TTLEIA的轉(zhuǎn)換。上位機(jī)的串口采用的是標(biāo)準(zhǔn)的RS232C接口。由于AT98C52單片機(jī)的串行口電平是TTL電平,但TTL電平的特性與RS232的電氣特性不匹配。一次必須通過電平轉(zhuǎn)化芯片進(jìn)行電平之間的轉(zhuǎn)換才能達(dá)到正常通信。本設(shè)計(jì)采用MAX232來實(shí)現(xiàn)RS232C與TTL電路之間的電平轉(zhuǎn)換。MAX232是一種雙組驅(qū)動(dòng)器接收器。片內(nèi)有一個(gè)電容性電壓發(fā)生器,必須在單5V TTLCOMS電平這些接收器具有1.3V典型的門限值及0.5V的典型遲滯,而且可以接受30V和30V的輸入。每個(gè)驅(qū)動(dòng)器將TTLCOMS輸入電平轉(zhuǎn)換為RS232電平。如圖211

溫馨提示

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

評論

0/150

提交評論