自動(dòng)立體停車(chē)庫(kù)控制系統(tǒng)設(shè)計(jì).doc_第1頁(yè)
自動(dòng)立體停車(chē)庫(kù)控制系統(tǒng)設(shè)計(jì).doc_第2頁(yè)
自動(dòng)立體停車(chē)庫(kù)控制系統(tǒng)設(shè)計(jì).doc_第3頁(yè)
自動(dòng)立體停車(chē)庫(kù)控制系統(tǒng)設(shè)計(jì).doc_第4頁(yè)
自動(dòng)立體停車(chē)庫(kù)控制系統(tǒng)設(shè)計(jì).doc_第5頁(yè)
已閱讀5頁(yè),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

目 錄1 引言12 系統(tǒng)總體方案設(shè)計(jì)42.1 控制原理42.2 控制功能42.3 方案設(shè)計(jì)53 系統(tǒng)硬件設(shè)計(jì)63.1 單片機(jī)的發(fā)展趨勢(shì)63.2 單片機(jī)的選擇73.3 89C51的引腳介紹83.4 單片機(jī)最小系統(tǒng)的設(shè)計(jì)113.5 顯示鍵盤(pán)電路的設(shè)計(jì)133.6 鎖存器 74LS373的介紹與選擇183.8 2732的芯片引腳功能193.9 6264引腳功能的介紹與選擇203.10 8255芯片介紹204 系統(tǒng)的軟件設(shè)計(jì)224.1 控制系統(tǒng)的主程序功能及流程圖234.2 最優(yōu)車(chē)位的實(shí)現(xiàn)234.3 鍵盤(pán)掃描子程序264.4 顯示子程序274.5 存車(chē)信號(hào)處理子程序284.6. 取車(chē)信號(hào)處理子程序295 總結(jié)30參考文獻(xiàn)31謝 辭32附錄一33附錄二421 引言近幾年來(lái),隨著我國(guó)國(guó)民經(jīng)濟(jì)和汽車(chē)制造業(yè)的迅速發(fā)展,汽車(chē)保有量快速增長(zhǎng)。北京、上海等大城市以每年15萬(wàn)輛的速度增加,而道路建設(shè)及停車(chē)位的建設(shè)遠(yuǎn)低于此。停車(chē)難所導(dǎo)致的占道停車(chē)、占用綠地停車(chē),不僅使交通堵塞問(wèn)題更加嚴(yán)重,而且涉及到投資環(huán)境和城市現(xiàn)象,日益引來(lái)各方人士的關(guān)注。如果停車(chē)難問(wèn)題和交通擁擠問(wèn)題得不道妥善解決,將同時(shí)影響了轎車(chē)進(jìn)入家庭的步子,影響汽車(chē)制造業(yè)的迅速發(fā)展,影響國(guó)民經(jīng)濟(jì)的穩(wěn)步持續(xù)發(fā)展。1997年,深圳注冊(cè)車(chē)輛40萬(wàn)輛,異地注冊(cè)在深圳行駛車(chē)輛12萬(wàn)輛,停車(chē)位僅4萬(wàn)多個(gè),北京機(jī)動(dòng)車(chē)保有量近140萬(wàn)輛加上每天幾十萬(wàn)輛進(jìn)京車(chē)輛,公共停車(chē)位僅8萬(wàn)多個(gè)。廣州市機(jī)動(dòng)車(chē)輛保有量為90萬(wàn)輛,外地進(jìn)市車(chē)輛10萬(wàn)輛,共100萬(wàn)輛,僅有停車(chē)位9萬(wàn)個(gè)。專(zhuān)家指出只有公共停車(chē)位置達(dá)到機(jī)動(dòng)車(chē)輛總數(shù)的1525%左右,才能緩解停車(chē)難問(wèn)題。香港擁有注冊(cè)機(jī)動(dòng)車(chē)輛53 萬(wàn)輛,停車(chē)位40 萬(wàn)個(gè),與之相比,我們是有很大差距的。進(jìn)入21世紀(jì)以來(lái),隨著我國(guó)社會(huì)與經(jīng)濟(jì)的發(fā)展,轎車(chē)特別是私家轎車(chē)的生產(chǎn)量和社會(huì)保有量迅速增加。近幾年來(lái),我國(guó)私人購(gòu)車(chē)占售車(chē)總量的比例大幅遞增,到1999年己經(jīng)突破了50%中國(guó)汽車(chē)需求量和保有量出現(xiàn)了加速增長(zhǎng)的趨勢(shì)。2000到2002年實(shí)際汽車(chē)保有雖分別為1608. 91萬(wàn)、1802. 04萬(wàn)和2053. 17萬(wàn)輛,年平均增長(zhǎng)速度分別達(dá)到了10.73%、12%、13.94%。2003年汽車(chē)保有量達(dá)到2353萬(wàn)量,比2002年增長(zhǎng)14.6%。以上事實(shí)說(shuō)明,2004-2010年我國(guó)汽車(chē)保有量以及由此帶動(dòng)的汽車(chē)需求量將繼續(xù)呈加速增長(zhǎng)的趨勢(shì)。隨著居民收入提高、汽車(chē)價(jià)格的下降和消費(fèi)環(huán)境的改善,預(yù)計(jì)2004-2010年,中國(guó)汽車(chē)保有量將以16%以上的速度增長(zhǎng)。以2002年的實(shí)際值為基數(shù),假定2004 -2010年汽車(chē)保有量按16 %的速度增長(zhǎng),則到2010年我國(guó)汽車(chē)保有量將在6650萬(wàn)一8431萬(wàn)輛之間。另外,新增汽車(chē)需求量與汽車(chē)保有量呈線性關(guān)系,即新增汽乍需求量=新增汽車(chē)保有量+汽車(chē)更新量,如果汽車(chē)更新量為汽車(chē)保有量的6%,則新增汽車(chē)需求量=新增汽車(chē)保有量+0.06汽車(chē)保有量。因此,可以推算出2010年汽車(chē)的年銷(xiāo)量將達(dá)到1317萬(wàn)1911萬(wàn)量之間。隨著汽車(chē)數(shù)量日益劇增,解決停車(chē)問(wèn)題日益嚴(yán)重,尤其是居民小區(qū)、人型公共消費(fèi)場(chǎng)所等,寸一上如金,停車(chē)場(chǎng)向空間發(fā)展,己勢(shì)在必行。根據(jù)有關(guān)市場(chǎng)調(diào)查,目前在大中型城市對(duì)立體車(chē)庫(kù)的年需求量至少為10萬(wàn)個(gè)車(chē)位,但該類(lèi)產(chǎn)品供應(yīng)量很少,國(guó)內(nèi)只有30家左右企業(yè)的少量產(chǎn)品供應(yīng)市場(chǎng)。外國(guó)的相關(guān)公司吞好這一巨大的市場(chǎng),目前開(kāi)始有產(chǎn)品向中國(guó)出口,但足其價(jià)格高,使用成本與收費(fèi)高,使國(guó)內(nèi)市場(chǎng)難以接受,限制其推廣使用在我國(guó),除北京、上海等特大城市外,沿海工業(yè)發(fā)達(dá)、人口密集的城市和地區(qū)也已經(jīng)陸續(xù)開(kāi)始安裝和使用立體停車(chē)庫(kù),表現(xiàn)出強(qiáng)勁的市場(chǎng)需求。所以從技術(shù)、市場(chǎng)、政策等諸多因素分析,該項(xiàng)目已經(jīng)具備了良好的開(kāi)發(fā)條件 就有重要的現(xiàn)實(shí)意義 立體車(chē)庫(kù)與傳統(tǒng)的自然地下車(chē)庫(kù)想比,有許多方面多顯示出優(yōu)越性: 首先,立體車(chē)庫(kù)具有突出的節(jié)地優(yōu)勢(shì)。以往的底下車(chē)庫(kù)由于要留出足夠的行車(chē)通道,平均一輛車(chē)就要占據(jù)40平方米的面積,如果采用雙層立體車(chē)庫(kù),可以使地面的使用率提高80%-90%。例如采用地上多層立體車(chē)庫(kù),50平方米的地面積上便可存放放10輛車(chē),這可以大大地節(jié)省有限的上地資源,少量節(jié)省建設(shè)開(kāi)發(fā)成本。 其次,立體車(chē)庫(kù)與地下車(chē)庫(kù)相比可更加有效地保證人身和車(chē)輛的安全,人在車(chē)庫(kù)內(nèi)或車(chē)不停準(zhǔn)位置,由電子控制的整個(gè)設(shè)條便不會(huì)運(yùn)轉(zhuǎn)。應(yīng)該說(shuō),立體車(chē)庫(kù)從管理上可以做到徹底的人車(chē)分流。 在地下車(chē)庫(kù)中采用機(jī)械存車(chē),還可以免除采暖通風(fēng)設(shè)施,因此,運(yùn)行中的耗電量比工人管理的地下車(chē)庫(kù)低得多。立體車(chē)庫(kù)一般不做成套系統(tǒng),而是以單臺(tái)集裝而成。這樣可以充分發(fā)揮其用地少、可化整為零的優(yōu)勢(shì),在住宅區(qū)的每個(gè)組團(tuán)中或每棟樓下都可以隨機(jī)設(shè)立立體車(chē)庫(kù)。這對(duì)目前車(chē)庫(kù)短缺的小區(qū)解決停車(chē)難的問(wèn)題提供了有效途徑。立體車(chē)庫(kù)的國(guó)內(nèi)外發(fā)展現(xiàn)狀 立體車(chē)庫(kù)的發(fā)展在國(guó)外,尤其在日本己有近30至40年的歷史史,無(wú)論在技術(shù)上還是在經(jīng)驗(yàn)上均己獲得了成功。美、德、日、韓等國(guó)家的產(chǎn)品代表了國(guó)際的領(lǐng)先水平,國(guó)內(nèi)立體車(chē)庫(kù)多為進(jìn)口德國(guó)和韓國(guó)的產(chǎn)品。在西歐、東南亞、韓國(guó)和日本得到了廣泛的應(yīng)用,形成了一個(gè)包括制造、安裝、使用和維修的行業(yè)體系。我國(guó)于90年代初開(kāi)始研究開(kāi)發(fā)立體車(chē)庫(kù),距今己有20幾年的歷程。由于很多新建小區(qū)內(nèi)住戶與車(chē)位的配比為1:1,為了解決停車(chē)位占地而積與住住戶商用而積的矛盾,立體車(chē)庫(kù)以其平均單車(chē)占地面積小的獨(dú)特特性,己被廣大用戶接受。 立體車(chē)庫(kù)的種類(lèi)比較多,目前國(guó)內(nèi)外比較流行的型式有:1.升降橫移式該類(lèi)的主要特點(diǎn)在于:a.節(jié)省占地,配置靈活,建設(shè)周期短。b.價(jià)格低,消防、外裝修、建設(shè)、地基等投資少。c.可采用自動(dòng)控制,構(gòu)造簡(jiǎn)單,安全可靠。d.存取車(chē)迅速,等候時(shí)間短。e.運(yùn)行平穩(wěn),工作噪聲低。f.適用于商業(yè)、機(jī)關(guān)、住宅小區(qū)配套停車(chē)場(chǎng)的使用。 韓國(guó)和德國(guó)公司的這類(lèi)產(chǎn)品比較多,二層升降橫移式立體車(chē)庫(kù)特別適應(yīng)于原有地庫(kù)自走式停車(chē)場(chǎng)的改造工程。多層升降橫移式主要適應(yīng)于高度不受限制的平面自走式停車(chē)場(chǎng)的改造,結(jié)構(gòu)簡(jiǎn)單且都已模塊化。2.巷道堆垛式或垂直式 巷道堆垛式立體車(chē)庫(kù)采用堆垛機(jī)作為存取車(chē)輛的工具,所有車(chē)輛均由堆垛機(jī)進(jìn)行存取,因此對(duì)堆垛機(jī)的技術(shù)要求較高,單臺(tái)堆垛機(jī)成木較高,所以巷道堆垛式立體車(chē)庫(kù)適用于車(chē)位數(shù)需要較多的客戶使用。3.垂直提升式 垂直提升式立體車(chē)庫(kù)類(lèi)似于電梯的工作原理,在提升機(jī)的兩側(cè)布置車(chē)位,一般地面需一個(gè)汽車(chē)旋轉(zhuǎn)臺(tái),可省去司機(jī)調(diào)頭。垂直提升式立體車(chē)庫(kù)一般高度較高(幾十米),對(duì)設(shè)備的安全性,加工安裝精度等要求都很高,因此造價(jià)較高,但占地卻最小。4垂直循環(huán)式此類(lèi)型的車(chē)庫(kù)具有如卜特點(diǎn): a.占地少,兩個(gè)泊位面積可停6至10輛車(chē)。b.外裝修可只加頂棚,消防可利用消防栓。c.價(jià)格低,地叢、外裝修、消防等投資少,建設(shè)周期短。d.可采用自動(dòng)控制,運(yùn)行安全可靠。本論文是針對(duì)目前國(guó)內(nèi)停車(chē)業(yè)的發(fā)展?fàn)顩r而設(shè)計(jì)的將車(chē)位控制系統(tǒng)。車(chē)位控制系統(tǒng)對(duì)要存入車(chē)輛完成車(chē)號(hào)輸入、車(chē)號(hào)顯示、存儲(chǔ)、選擇最優(yōu)車(chē)位及將確定的車(chē)位信號(hào)傳輸?shù)裙δ?;?duì)取出車(chē)需完成車(chē)號(hào)輸入、車(chē)號(hào)查找、顯示確定車(chē)位及車(chē)位信號(hào)的傳輸?shù)裙δ?。?chē)位控制系統(tǒng)的控制功能分三部分:第一部分為共享功能:車(chē)號(hào)輸入功能,車(chē)號(hào)顯示功能。第二部分是存車(chē)信號(hào)處理功能。車(chē)號(hào)的存儲(chǔ)功能,存入車(chē)輛的最優(yōu)存入車(chē)位的選擇功能,最優(yōu)存入車(chē)位的顯示功能,最優(yōu)車(chē)位的信號(hào)處理和傳輸功能,第三部分為取車(chē)信號(hào)處理功能:1.需取出車(chē)輛車(chē)號(hào)的查找功能,需取出車(chē)輛的車(chē)位號(hào)顯示功能,需取出車(chē)輛的車(chē)位號(hào)的信號(hào)傳輸功能。停車(chē)業(yè)在國(guó)外已有近三十年的發(fā)展史,在我國(guó)大部分技術(shù)是引進(jìn)的,不僅起步晚,也不很成熟,但市場(chǎng)潛力十分大,有待于我們?nèi)ネ卣埂? 系統(tǒng)總體方案設(shè)計(jì)2.1 控制原理車(chē)位控制系統(tǒng)主要實(shí)現(xiàn)了對(duì)各種數(shù)據(jù)的處理,對(duì)車(chē)牌號(hào)的存儲(chǔ)及定位處理,選取最優(yōu)車(chē)位時(shí)對(duì)尋優(yōu)軌跡的數(shù)據(jù)處理以及車(chē)牌號(hào)查找時(shí)的數(shù)據(jù)查找等的處理。微處理器需處理不同數(shù)據(jù),有時(shí)也較繁雜。各種數(shù)據(jù)不能隨意亂存放,必須根據(jù)具體數(shù)據(jù)的特點(diǎn)按一定的規(guī)則來(lái)組織和存放。本文根據(jù)各數(shù)據(jù)元素之間的相互關(guān)系,對(duì)數(shù)據(jù)進(jìn)行了有效的組織,解決了數(shù)據(jù)存儲(chǔ)方式,并設(shè)計(jì)出對(duì)應(yīng)的數(shù)據(jù)處理算法。各數(shù)據(jù)元素之間的相互關(guān)系有兩層含意:一種指各數(shù)據(jù)元素之間的抽象關(guān)系,如先后關(guān)系、層次關(guān)系等即邏輯關(guān)系;另一種指在計(jì)算機(jī)中存放地址之間的關(guān)系,即存儲(chǔ)結(jié)構(gòu)。邏輯關(guān)系只考慮數(shù)據(jù)元素之間邏輯上的先后次序,不分上下層次,稱(chēng)為線性結(jié)構(gòu)。如數(shù)據(jù)元素之間在邏輯上還有上下層關(guān)系或元素之間互相聯(lián)系的情況不規(guī)則,不能簡(jiǎn)單地用線性關(guān)系來(lái)表達(dá)時(shí),屬于非線性結(jié)構(gòu)。邏輯結(jié)構(gòu)最終必須以某種具體的形式實(shí)現(xiàn),這種具體的形式就是存儲(chǔ)結(jié)構(gòu),可用四種基本方法來(lái)實(shí)現(xiàn)。第一種為順序存儲(chǔ),即將各數(shù)據(jù)元素按邏輯上的順序存入在一段連續(xù)的空間內(nèi),并使邏輯上相鄰的元素在想念空間上相鄰;第二種為鏈?zhǔn)酱鎯?chǔ),各數(shù)據(jù)元素存放地址不受約束,可以連成一片,也可以分散在不連續(xù)的若干個(gè)地址上,通過(guò)鏈接指針表示各元素相鄰的關(guān)系;第三種為索引存儲(chǔ),在這種存儲(chǔ)方式中保存有一個(gè)索引表,索引表的每一項(xiàng)由兩部分組成,其中一項(xiàng)表示數(shù)據(jù)元素的關(guān)鍵字,另一項(xiàng)中保存有對(duì)應(yīng)數(shù)據(jù)元素的實(shí)際存放地址;第四種為散列存儲(chǔ),即直接利用數(shù)據(jù)元素的關(guān)鍵字來(lái)計(jì)算該數(shù)據(jù)元素的實(shí)際存放地址。車(chē)位控制系統(tǒng)處理的數(shù)據(jù)之間在邏輯上只有先后次序,不分上下層次,都屬于線性結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)上則各有不同。數(shù)據(jù)元素的邏輯設(shè)計(jì)和存儲(chǔ)設(shè)計(jì)之后要確定算法。數(shù)據(jù)處理都有一定目的,實(shí)現(xiàn)這個(gè)目的的處理方法稱(chēng)為算法。 2.2 控制功能本章所研究的車(chē)位控制系統(tǒng)的控制功能分三部分:第一部分為共享功能;第二部分是存車(chē)信號(hào)處理功能;第三部分為取車(chē)信號(hào)處理功能。1一、共享控制功能共享功能是指無(wú)論存車(chē)或取車(chē)都需應(yīng)用的功能。主要有:1.車(chē)號(hào)輸入功能,即將要存入或取出的車(chē)輛的車(chē)牌號(hào)從鍵盤(pán)上輸入;2.車(chē)號(hào)顯示功能,即將從鍵盤(pán)上鍵入的車(chē)牌號(hào)碼在顯示器上顯示出來(lái),以便確認(rèn)是否輸入正確。二、存車(chē)信號(hào)處理功能存車(chē)信號(hào)處理功能是指車(chē)位控制系統(tǒng)在有車(chē)輛需存入車(chē)庫(kù)所應(yīng)完成的功能,主要包括以下幾項(xiàng):1.車(chē)號(hào)的存儲(chǔ)功能,即將鍵盤(pán)上輸入的車(chē)牌號(hào)碼存入單片機(jī)的存儲(chǔ)器中;2.存入車(chē)輛的最優(yōu)存入車(chē)位的選擇功能,即根據(jù)現(xiàn)有的車(chē)輛存入情況選擇最優(yōu)存入車(chē)位的功能;3.最優(yōu)存入車(chē)位的顯示功能,即將已選定的最優(yōu)車(chē)位在顯示器上顯示出來(lái)的功能;4.最優(yōu)車(chē)位的信號(hào)處理和傳輸功能,即將選定的最優(yōu)車(chē)位轉(zhuǎn)換成信號(hào)并將信號(hào)傳輸給存取車(chē)控制系統(tǒng)的功能。三、取車(chē)信號(hào)處理功能取車(chē)信號(hào)處理功能是指停車(chē)庫(kù)中已存入車(chē)輛需取出時(shí)所需功能,主要有以下幾項(xiàng):1.需取出車(chē)輛車(chē)號(hào)的查找功能,即根據(jù)輸入的車(chē)牌號(hào)碼,在已存入車(chē)輛中查找需取出車(chē)輛的位置;2.需取出車(chē)輛的車(chē)位號(hào)顯示功能,即將需去取出車(chē)輛的存放車(chē)位號(hào)在顯示器上顯示出來(lái);3.需取出車(chē)輛的車(chē)位號(hào)的信號(hào)傳輸功能,即將需取出車(chē)輛的車(chē)位號(hào)處理后傳輸給存取車(chē)控制系統(tǒng)的功能。 2.3 方案設(shè)計(jì)車(chē)位控制指對(duì)要存入車(chē)輛完成車(chē)號(hào)輸入、車(chē)號(hào)顯示、存儲(chǔ)、選擇最優(yōu)車(chē)位及將確定的車(chē)位信號(hào)傳輸?shù)裙δ埽粚?duì)取出車(chē)需完成車(chē)號(hào)輸入、車(chē)號(hào)查找、顯示確定車(chē)位及車(chē)位信號(hào)的傳輸?shù)裙δ???刂泼姘迨擒?chē)位控制部分的組成部分之一,面板上有輸入鍵和顯示器,輸入鍵包括數(shù)字鍵、字母鍵及存取車(chē)、確定、刪除、手動(dòng)/自動(dòng)、開(kāi)門(mén)、關(guān)門(mén)、急停等控制鍵。顯示器是8 位的,六位用來(lái)顯示車(chē)牌號(hào),兩位顯示車(chē)位號(hào)。為了實(shí)現(xiàn)車(chē)位控制系統(tǒng)和各項(xiàng)控制功能,本文設(shè)計(jì)了一個(gè)微處理器專(zhuān)用控制系統(tǒng),主要由單片機(jī)、儲(chǔ)存器、顯示器、鍵盤(pán)和接口芯片組成。圖1-1 是車(chē)位控制系統(tǒng)的硬件結(jié)構(gòu)框圖程序存儲(chǔ)器鍵 盤(pán)單 片 機(jī)數(shù)據(jù)存儲(chǔ)器停車(chē)位顯示燈看 門(mén) 狗控制面板LED顯示圖2-1 硬件結(jié)構(gòu)框圖3 系統(tǒng)硬件設(shè)計(jì) 3.1 單片機(jī)的發(fā)展趨勢(shì)現(xiàn)在可以說(shuō)單片機(jī)是百花齊放,百家爭(zhēng)鳴的時(shí)期,世界上各大芯片制造公司都推出了自己的單片機(jī),從8位、16位到32位,數(shù)不勝數(shù),應(yīng)有盡有,有與主流C51系列兼容的,也有不兼容的,但它們各具特色,互成互補(bǔ),為單片機(jī)的應(yīng)用提供廣闊的天地。2 縱觀單片機(jī)的發(fā)展過(guò)程,可以預(yù)示單片機(jī)的發(fā)展趨勢(shì),大致有:1.低功耗CMOS化 MCS-51系列的8031推出時(shí)的功耗達(dá)630mW,而現(xiàn)在的單片機(jī)普遍都在100mW左右,隨著對(duì)單片機(jī)功耗要求越來(lái)越低,現(xiàn)在的各個(gè)單片機(jī)制造商基本都采用了CMOS(互補(bǔ)金屬氧化物半導(dǎo)體工藝)。89C51就采用了HMOS(即高密度金屬氧化物半導(dǎo)體工藝)和CHMOS(互補(bǔ)高密度金屬氧化物半導(dǎo)體工藝)。CMOS雖然功耗較低,但由于其物理特征決定其工作速度不夠高,而CHMOS則具備了高速和低功耗的特點(diǎn),這些特征,更適合于在要求低功耗象電池供電的應(yīng)用場(chǎng)合。所以這種工藝將是今后一段時(shí)期單片機(jī)發(fā)展的主要途徑。 2.微型單片化 現(xiàn)在常規(guī)的單片機(jī)普遍都是將中央處理器(CPU)、片內(nèi)數(shù)據(jù)存儲(chǔ)器(RAM)、只讀程序存儲(chǔ)器(ROM)、并行和串行通信接口,中斷系統(tǒng)、定時(shí)電路、時(shí)鐘電路集成在一塊單一的芯片上,增強(qiáng)型的單片機(jī)集成了如A/D轉(zhuǎn)換器、PWM (脈寬調(diào)制電路)、WDT(看門(mén)狗)、有些單片機(jī)將LCD(液晶)驅(qū)動(dòng)電路都集成在單一的芯片上,這樣單片機(jī)包含的單元電路就更多,功能就越強(qiáng)大。甚至單片機(jī)廠商還可以根據(jù)用戶的要求量身定做,制造出具有自己特色的單片機(jī)芯片。此外,現(xiàn)在的產(chǎn)品普遍要求體積小、重量輕,這就要求單片機(jī)除了功能強(qiáng)和功耗低外,還要求其體積要小。3現(xiàn)在的許多單片機(jī)都具有多種封裝形式,其中SMD(表面封裝)越來(lái)越受歡迎,使得由單片機(jī)構(gòu)成的系統(tǒng)正朝微型化方向發(fā)展。3.主流與多品種共存現(xiàn)在雖然單片機(jī)的品種繁多,各具特色,但仍以89C51為核心的單片機(jī)占主流,兼容其結(jié)構(gòu)和指令系統(tǒng)的有PHILIPS公司的產(chǎn)品,ATMEL公司的產(chǎn)品和中國(guó)臺(tái)灣的Winbond系列單片機(jī)。所以89C51為核心的單片機(jī)占據(jù)了半壁江山。而Microchip公司的PIC精簡(jiǎn)指令集(RISC)也有著強(qiáng)勁的發(fā)展勢(shì)頭,中國(guó)臺(tái)灣的HOLTEK公司近年的單片機(jī)產(chǎn)量與日俱增,與其低價(jià)質(zhì)優(yōu)的優(yōu)勢(shì),占據(jù)一定的市場(chǎng)分額。此外還有MOTOROLA公司的產(chǎn)品,日本幾大公司的專(zhuān)用單片機(jī)。在一定的時(shí)期內(nèi),這種情形將得以延續(xù),將不存在某個(gè)單片機(jī)一統(tǒng)天下的壟斷局面,走的是依存互補(bǔ),相輔相成、共同發(fā)展的道路。 3.2 單片機(jī)的選擇美國(guó)Intel公司1980年推出了MCS-51系列高檔8位單片機(jī)。提高了芯片的集成度,性能上大為提高,增加了多種片內(nèi)硬件功能,并擴(kuò)展了功能單元的種類(lèi)和數(shù)量。4MCS-51單片機(jī)硬件結(jié)構(gòu)及其一些主要特點(diǎn):1.內(nèi)部程序存儲(chǔ)器和內(nèi)部數(shù)據(jù)存儲(chǔ)器2.輸入/輸出口MCS-51單片機(jī)內(nèi)的I/O口的數(shù)量和種類(lèi)較多且齊全,尤其是它有一個(gè)全雙工的串行口。3.外部程序存儲(chǔ)器和外部數(shù)據(jù)存儲(chǔ)器尋址空間MCS-51可對(duì)64KB的外部數(shù)據(jù)存儲(chǔ)器尋址且不受該系列中各種芯片型號(hào)的影響,而對(duì)程序存儲(chǔ)器是內(nèi)外總空間為64KB.4.中斷與堆棧MCS-51有5個(gè)中斷源,分為2個(gè)優(yōu)先級(jí),每個(gè)中斷源的優(yōu)先級(jí)是可編程的,它的堆棧位置也是可編程的,堆棧深度可達(dá)128字節(jié)。MCS-51子系列有2個(gè)16位的定時(shí)/計(jì)數(shù)器,通過(guò)編程可以實(shí)現(xiàn)四種工作模式。MCS-52子系列有3個(gè)16位的定時(shí)/計(jì)數(shù)器。MCS-51在內(nèi)部RAM中開(kāi)設(shè)了四個(gè)通用工作寄存器區(qū),共32個(gè)通用寄存器,以適應(yīng)多種中斷或子程序嵌套的要求。6.指令系統(tǒng)MCS-51是一個(gè)功能很強(qiáng)的指令系統(tǒng),主要表現(xiàn)在MCS-51的指令系統(tǒng)中增添了減法、乘法、除法、比較、堆棧操作和多種位操作指令。5當(dāng)振蕩器頻率接最高12MHZ時(shí),大部分指令執(zhí)行時(shí)間為1s,少部分為2s,乘除指令的執(zhí)行時(shí)間也只有4s。7.布爾處理器特別值得一提的是MCS-51的布爾處理器。它實(shí)際上是一個(gè)完整的一個(gè)微計(jì)算機(jī),這個(gè)一位的微機(jī)有自己的CPU ,位寄存器、I/O口和指令集。把八位微機(jī)和一位微機(jī)結(jié)合在一起,是微機(jī)技術(shù)上的一個(gè)突破。一位機(jī)在開(kāi)關(guān)決策、邏輯電路仿真和實(shí)時(shí)測(cè)控方面非常有效,而八位機(jī)在運(yùn)算處理、智能儀表常用的數(shù)據(jù)采集方面有明顯的長(zhǎng)處。在MCS-51系列單片機(jī)中八位機(jī)和一位機(jī)(布爾處理器)的硬件資源是復(fù)合在一起的,二者相輔相成,這是MCS-51在設(shè)計(jì)上的精美之處,也是一般微機(jī)所不具備的。 3.3 89C51的引腳介紹掌握MCS-51單片機(jī),應(yīng)首先了解MCS-51的引腳,熟悉并牢記各引腳的功能。MCS-51系列中各種芯片的移交是互相兼容的。6制造工藝為HMOS的MCS-51的單片機(jī)都采用40只引腳的雙列直插封裝(DIP方式,如圖所示。目前大多樹(shù)為此類(lèi)封裝方式。制造工藝為CHMOS的8031/89C51/87C51除采用DIP封裝方式以外,還采用方行封裝方式,為44只引腳(其中4只是無(wú)用的引腳)如圖3-1所示740只引腳按其功能來(lái)分,可分為如下3類(lèi):1. 電源及時(shí)鐘引腳:Vcc、Vss;XTAL1、XTAL2。2. 控制引腳:/PSEN、ALE、/EA、RESET3. I/O口引腳;P0、P1、P2、P3、為4個(gè)8位I/O口的外部引腳。下面結(jié)合圖3-1來(lái)介紹各引腳的功能。電源及時(shí)鐘引腳1電源引腳電源引腳接入單片機(jī)的工作電源(1) Vcc(40引腳):接+5V電源。(2) Vss(20引腳):接地2時(shí)鐘引腳2個(gè)時(shí)鐘引腳XTAL1,XTAL2外接晶體與片內(nèi)的反相放大器構(gòu)成了1個(gè)振蕩器,它為單片機(jī)提供了時(shí)鐘信號(hào)。2個(gè)時(shí)鐘引腳也可以外接獨(dú)立的晶體振蕩器。XTAL1是片內(nèi)振蕩器的反相放大器輸入端,XTAL2則是輸出端,使用外部振蕩器時(shí),外部振蕩信號(hào)應(yīng)直接加到XTAL1,而XTAL2懸空。內(nèi)部方式時(shí),時(shí)鐘發(fā)生器對(duì)振蕩脈沖二分頻,如晶振為12MHz,時(shí)鐘頻率就為6MHz。8晶振的頻率可以在1MHz-24MHz內(nèi)選擇。電容取30PF左右。型號(hào)同樣為AT89C51的芯片,在其后面還有頻率編號(hào),有12,16,20,24MHz可選。大家在購(gòu)買(mǎi)和選用時(shí)要注意了。如AT89C51 24PC就是最高振蕩頻率為24MHz,40P6封裝的普通商用芯片。根據(jù)綜上分析,此次設(shè)計(jì)中的最小系統(tǒng)的設(shè)計(jì)采用89C51芯片作為最小系統(tǒng)芯片是最佳選擇。(1)XTAL1(19引腳):接外部晶體的1個(gè)引腳。該引腳內(nèi)部是1個(gè)反相放大器的輸入端。這個(gè)反相放大器構(gòu)成了片內(nèi)振蕩器/如果采用外接晶體振蕩器時(shí),此引腳應(yīng)接地。(2)XTAL2(18引腳):接外部晶體的另一端,在該引腳內(nèi)部接至內(nèi)部反相放大器的輸出端。若采用外部時(shí)鐘振蕩器時(shí),該引腳接收時(shí)鐘振蕩器的信號(hào),即把此信號(hào)直接接到內(nèi)部時(shí)鐘發(fā)生器的輸入端。2控制引腳此類(lèi)引腳提供控制信號(hào),有的引腳還具有復(fù)用功能。(1)RST/Vpd(9引腳):RST(RESET)是復(fù)位信號(hào)輸入斷,高電平有效。當(dāng)單片機(jī)運(yùn)行時(shí),在此引腳加上持續(xù)時(shí)間大于2個(gè)機(jī)器周期的高電平時(shí)候,就可以完成復(fù)位操作。在單片機(jī)正常工作時(shí),此引腳應(yīng)為0.5V低電平。Vpd為本引腳的第二功能,即備用電源的輸入斷。當(dāng)主電源Vcc發(fā)生故障,降低到某一規(guī)定值的低電平時(shí),將+5V電源自動(dòng)接入RST端,為內(nèi)部RAM提供備用電源,以保證片內(nèi)RAM中的信息不丟失,從而使單片機(jī)在復(fù)位后能繼續(xù)正常運(yùn)行。ALE引腳輸出為地址鎖存允許信號(hào),當(dāng)單片機(jī)上電正常工作后,ALE引腳不斷輸出正脈沖信號(hào)。當(dāng)單片機(jī)訪問(wèn)外部存儲(chǔ)器時(shí),ALE輸出信號(hào)的負(fù)跳沿用于單片機(jī)發(fā)出的低8位地址經(jīng)外部鎖存器鎖存的鎖存控制信號(hào)。即使不訪問(wèn)外部鎖存器,ALE端仍有正脈沖號(hào)輸出,此頻率為時(shí)鐘振蕩頻率的1/6。如果有脈沖信號(hào)輸出,則單片機(jī)基本上是完好的。應(yīng)該注意的是,每當(dāng)MCS-51訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),在2個(gè)機(jī)器周期中ALE只出現(xiàn)1次,即丟失1個(gè)ALE脈沖。因此,嚴(yán)格來(lái)說(shuō),用戶不宜用ALE做精確的時(shí)鐘源或定時(shí)信號(hào)。ALE端可以驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。/PROG為本引腳的第二功能。在對(duì)片內(nèi)EPROM型單片機(jī)編程寫(xiě)入時(shí),此引腳作為編程脈沖輸入端(3)/PSEN:程序存儲(chǔ)器允許輸出控制端。在單片機(jī)訪問(wèn)外部程序存儲(chǔ)器時(shí),此引腳輸出脈沖負(fù)跳沿作為讀外部程序存儲(chǔ)器的選通信號(hào)。此引腳外接部程序存儲(chǔ)器的/OE端。/PSEN端可以驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。 如果檢查一個(gè)MCS-51單片機(jī)應(yīng)用系統(tǒng)上電后,CPU能否正常到外部程序存儲(chǔ)器讀取指令碼,可用示波器查/PSEN端有無(wú)脈沖輸出。 (4)/EA/Vpp(Enable Address/Voltage Pulse of Programing,31腳):/EA功能為內(nèi)外程序存儲(chǔ)器選擇控制端。 當(dāng)/EA引腳為高電平時(shí),單片機(jī)訪問(wèn)片內(nèi)程序存儲(chǔ)器,但在PC(程序計(jì)數(shù)器)值超過(guò)0FFFH時(shí),即超出片內(nèi)程序存儲(chǔ)器的4KB地址范圍,將自動(dòng)轉(zhuǎn)向執(zhí)行外部程序存儲(chǔ)器內(nèi)的程序。 當(dāng)/EA引腳為低電平時(shí),單片機(jī)則只訪問(wèn)外部程序存儲(chǔ)器,不論是否有內(nèi)部程序存儲(chǔ)器。對(duì)于8031來(lái)說(shuō),因其無(wú)內(nèi)部程序存儲(chǔ)器,所以該引腳必須接地,這樣只能選擇外部程序存儲(chǔ)器。 Vpp為本引腳的第二功能。在對(duì)EPROM型單片機(jī)8751內(nèi)EPROM固化編程時(shí),用于施加叫高的編程電壓。10對(duì)于89C51,則加在Vpp引腳的編程電壓為+12V或+5V。I/O口引腳(1)P0口:雙向8位三態(tài)I/O口,此口為地址總線(低8位)及數(shù)據(jù)總線分時(shí)復(fù)用口,可驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。(2)P1口:8位準(zhǔn)雙向I/O口,可驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。(3)P2口:8位準(zhǔn)雙向I/O口,與地址總線(高8位)復(fù)用,可驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。(4)P3口:8位準(zhǔn)雙星I/O口,雙功能復(fù)用口,可驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。這里要特別注意準(zhǔn)雙向與雙向三態(tài)口的差別。P1口,P2口,P3口是3個(gè)8位雙向的I/O口,各口線在片內(nèi)均有固定的上拉電阻。當(dāng)這3個(gè)準(zhǔn)雙向I/O口作輸入口使用時(shí),要向該口先寫(xiě)1,另外準(zhǔn)雙向I/O口無(wú)高阻的“浮空”狀態(tài),故稱(chēng)為雙向三態(tài)I/O口。其引腳圖如下所示:圖3-1 89C51引腳圖 3.4 單片機(jī)最小系統(tǒng)的設(shè)計(jì) (1)此次設(shè)計(jì)選用89C51的最小系統(tǒng),89C51內(nèi)部有4KB閃爍存儲(chǔ)器,芯片本身就是一個(gè)最小系統(tǒng)。11在能滿足系統(tǒng)的性能要求情況下,可優(yōu)先考慮采用此種方案。用這種芯片構(gòu)成的最小系統(tǒng)簡(jiǎn)單很可靠。用89C51單片機(jī)構(gòu)成的最小應(yīng)用系統(tǒng)時(shí),只要將單片機(jī)接上時(shí)鐘電路和復(fù)位電路即可,該系統(tǒng)與其他最小系統(tǒng)相比,省去了外擴(kuò)程序存儲(chǔ)器的工作,該最小應(yīng)用系統(tǒng)只能用作一些小型的數(shù)字量的測(cè)控單元。單片機(jī)最小系統(tǒng)電路如圖32所示 圖3-2 89C51最小系統(tǒng)(2) 看門(mén)狗電路設(shè)計(jì)MCS-51的PC受到干擾而失控,引起程序亂飛,可能會(huì)使程序陷入死循環(huán)。指令和軟件技術(shù)不能使失控的程序擺脫死循環(huán)的困境,這時(shí)系統(tǒng)將完全癱瘓。如果操作人員不在場(chǎng),可按下人工復(fù)位按鈕,強(qiáng)制系統(tǒng)復(fù)位。但操作人員不可能一直監(jiān)控著系統(tǒng),即使監(jiān)視著系統(tǒng),也往往是在引起不良后果之后才進(jìn)行人工復(fù)位。能不能不要人來(lái)監(jiān)視,就能使系統(tǒng)擺脫死循環(huán),重新執(zhí)行正常的程序呢?這可采用“看門(mén)狗”技術(shù)來(lái)解決這一問(wèn)題。12“看門(mén)狗”技術(shù)就是使用一個(gè)計(jì)數(shù)器來(lái)不斷計(jì)數(shù),監(jiān)視程序循環(huán)運(yùn)行。若發(fā)現(xiàn)時(shí)間超過(guò)已知的循環(huán)設(shè)定時(shí)間,則認(rèn)為系統(tǒng)陷入了死循環(huán),這時(shí)計(jì)數(shù)器溢出,然后強(qiáng)迫系統(tǒng)復(fù)位,在復(fù)位入口0000H處安排一段出錯(cuò)處理程序,使系統(tǒng)運(yùn)行進(jìn)入正軌.另外,在單片機(jī)系統(tǒng)運(yùn)行時(shí),有可能會(huì)發(fā)生電源掉電的意外情況,一些重要的數(shù)據(jù)可能丟失。這時(shí)需要系統(tǒng)應(yīng)首先檢測(cè)到電源的變化,然后通過(guò)切換電路把備用電池接入系統(tǒng),以保護(hù)RAM中的數(shù)據(jù)不丟失。目前看門(mén)狗電路和掉電保護(hù)電路,都已經(jīng)集成在一片微處理器監(jiān)控芯片中。因此MCS-51只需要擴(kuò)展一片微處理器監(jiān)控芯片即可。這類(lèi)芯片集成化程度高,功能齊全,具有廣闊的應(yīng)用前景。在單片機(jī)應(yīng)用系統(tǒng)中使用微處理器監(jiān)控芯片,可以大大提高單片機(jī)應(yīng)用系統(tǒng)的抗干擾能力和可靠性。1)復(fù)位電路微處理器在上電、掉電及低壓供電時(shí),監(jiān)控器產(chǎn)生脈沖信號(hào)這可以保證微處理器實(shí)現(xiàn)上電自動(dòng)復(fù)位:當(dāng)供電壓過(guò)低時(shí),防止CPU失控。電源電壓Vcc升到1V時(shí)RESET引腳變?yōu)榈碗娖?,隨著Vcc的繼續(xù)升高,RESET一直保持低電平。13當(dāng)Vcc高于復(fù)位門(mén)限電平時(shí),RESET并不馬上變?yōu)楦唠娖?,而是要滯后一個(gè)復(fù)位脈沖寬度(約200ms)后再變?yōu)楦唠娖?。?dāng)Vcc低于復(fù)位門(mén)限電平,RESET引腳馬上變成低電平,即使以后Vcc恢復(fù)且高于復(fù)位門(mén)限電平,RESET也不馬上變成高電平,而是要延遲一個(gè)復(fù)位脈沖寬度。掉電時(shí),Vcc只要低于復(fù)位門(mén)限電平,RESET立即變?yōu)榈碗娖健?)看門(mén)狗電路此次設(shè)計(jì)選用MAX690A微處理器做為監(jiān)控器芯片。14看門(mén)狗電路計(jì)數(shù)器定時(shí)電路,在WDI端輸入一個(gè)脈沖(TTL電平,寬度可小至50ms),定時(shí)器開(kāi)始計(jì)數(shù)。若WDI引腳懸空或接至阻態(tài)輸出的緩沖器上定時(shí)器則停止計(jì)數(shù),并且清零。當(dāng)定時(shí)器啟動(dòng)后,若在1.6s內(nèi)沒(méi)有向WDI輸入脈沖,監(jiān)控器將輸出一個(gè)復(fù)位信號(hào),引腳RESET變低電平,同時(shí)定時(shí)器清零,只要RESET為低電平,定時(shí)器將一直停止工作。MCS-51與MAX690A自動(dòng)監(jiān)控的接線如下,+5V電壓跌落到某電壓值,這就需要合理選擇電阻R7、R8的值,所以R10=1K歐姆,R9=2.6K歐姆。電路圖如下: 圖 3-3 看門(mén)狗電路原理圖 3.5 顯示、鍵盤(pán)電路的設(shè)計(jì)(1)顯示電路的設(shè)計(jì)LED顯示器結(jié)構(gòu)常用的LED顯示器分為8段(或7段,8段比7段多了1個(gè)小數(shù)點(diǎn)“dp”段)。每一個(gè)段對(duì)應(yīng)1個(gè)發(fā)光2極管。這種顯示器有共陽(yáng)極和共陰極2中,共陰極LED顯示器的發(fā)光二極管的陰極連接在一起,通常此公共陰極接地。當(dāng)某個(gè)發(fā)光二極管的陽(yáng)極為高電平時(shí),發(fā)光二極管點(diǎn)亮,相應(yīng)的段被顯示。同樣,共陽(yáng)極LED顯示器的發(fā)光二極管的陽(yáng)極連接在一起,通常此公共陽(yáng)極接正電壓,當(dāng)某個(gè)發(fā)光二極管的陰極接低電平時(shí),發(fā)光二極管被點(diǎn)亮,相應(yīng)的段被顯示。為了使LED顯示器顯示不同的符號(hào)或數(shù)字,就要把不同段的發(fā)光二極管點(diǎn)亮,這樣就要為L(zhǎng)ED顯示器提供代碼,因此這些代碼可使LED相應(yīng)的段發(fā)光,從而顯示不同字型,因此該代碼稱(chēng)之為段碼(或成為字型碼)。顯示器的工作原理由N個(gè)LED顯示塊可拼連接成N位的LED顯示器,N個(gè)LED顯示塊有N位為線和8xN根段碼線。段碼線控制顯示字符的字型,而位選線位各個(gè)LED顯示塊中各段的公共端,它控制該LED顯示位的亮或暗。 點(diǎn)亮顯示器有靜態(tài)和動(dòng)態(tài)兩種方法。所謂的靜態(tài)顯示,就是當(dāng)顯示器顯示某一個(gè)字符時(shí),相應(yīng)的發(fā)光二極管恒定的導(dǎo)通或截止,例如7段顯示器a、b、c、d、e、f導(dǎo)通,g截止,顯示0。這種顯示方式每一位都需要有一個(gè)8位輸出口控制。靜態(tài)顯示時(shí),較小的電流能得到較高的亮度且字符不閃爍,所以可由8255A的輸出口直接驅(qū)動(dòng)。在單片機(jī)串行口方式0應(yīng)用中,也是采用靜態(tài)顯示方法。當(dāng)顯示器位數(shù)較少時(shí),采用靜態(tài)顯示的方法是適合的。當(dāng)位數(shù)較多時(shí),用靜態(tài)顯示所需要的I/O太多,一般采用動(dòng)態(tài)顯示方法。靜態(tài)顯示方式:各位的共陰極或共陽(yáng)極連接在一起并接地;每位的段碼線分別與一個(gè)8位的鎖存器輸出相連。之所以稱(chēng)為靜態(tài)顯示,是因?yàn)楦鱾€(gè)LED的顯示字符一經(jīng)確定,相應(yīng)鎖存器所存的段碼輸出將維持不變,直到送入另一個(gè)字符的段碼為止。正因如此,靜態(tài)顯示器的亮度都較高。這種顯示方式接口編程容易,付出的代價(jià)是占用的口線較多。如果顯示器的位數(shù)增多,則需要增加鎖存器。因此在顯示位數(shù)較多的情況下,一般都采用動(dòng)態(tài)顯示方式。動(dòng)態(tài)顯示方式:在多位LED顯示時(shí),為簡(jiǎn)化硬件電路,通常將所有位的段碼線相應(yīng)段并聯(lián)在一起,由一個(gè)8位I/O口控制,形成段碼線的多路復(fù)用,而各位的共陽(yáng)極或共陰極分別由相應(yīng)的I/O線控制,形成各位的分時(shí)選通。若要各位LED能夠同時(shí)顯示出與本位相應(yīng)的顯示字符,就必須采用動(dòng)態(tài)顯示方式,即在某一時(shí)刻,只讓某一位的位線處于選通狀態(tài),而其他各位的位選線處于關(guān)閉狀態(tài),同時(shí),段碼線上輸出相應(yīng)位要顯示的字符的段碼。這樣 在同一時(shí)刻,4位LED中的只有選通的哪一位顯示出字符,而其他3位則是熄滅的,同樣在下一時(shí)刻,只讓下一位選線處于選通狀態(tài),而其他各位的位選線處于關(guān)閉狀態(tài), 在段碼線上舒服將要顯示字符的段碼,則同一時(shí)刻,只有選通位顯示出相應(yīng)的字符,而其他各位則是熄滅的,如此循環(huán)下去,就可以使各位顯示出相應(yīng)的字符,雖然這些字符是在不同時(shí)刻出現(xiàn)的,而在下一時(shí)刻,只有一位顯示,其他各位熄滅,但由于LED 顯示器的余輝和人眼的視覺(jué)暫留作用,只要每位顯示間隔足夠短,則可以造成多為同時(shí)亮的假象,達(dá)到同時(shí)顯示的效果。 LED不同位顯示的時(shí)間間隔應(yīng)根據(jù)實(shí)際情況而定。發(fā)光二極管從導(dǎo)通到發(fā)光有一定的延時(shí),導(dǎo)通時(shí)間太短,則發(fā)光太弱,人眼無(wú)法看清,但也不能太長(zhǎng),因?yàn)橐芟抻谂R界閃爍頻率,而且次時(shí)間越長(zhǎng),占用CPU時(shí)間也越長(zhǎng)多。另外,顯示位數(shù)增多,也將占用大量的CPU時(shí)間,因此動(dòng)態(tài)顯示實(shí)質(zhì)是以犧牲CPU時(shí)間來(lái)?yè)Q取器件的減少的。綜上所述,此次設(shè)計(jì)選靜態(tài)顯示是最合適的方法。顯示原理圖如下圖所示 圖3-4 顯示電路(2)鍵盤(pán)電路的設(shè)計(jì)行列式鍵盤(pán)接口行列式(也稱(chēng)矩陣式)鍵盤(pán)用于按鍵數(shù)目較多的場(chǎng)合,它由行線和列線組成,按鍵位于行、列的交叉點(diǎn)上。1個(gè)33的行、列結(jié)構(gòu)可以構(gòu)成1個(gè)具有9個(gè)按鍵的鍵盤(pán)。同理1個(gè)44的行、列結(jié)構(gòu)可以構(gòu)成1個(gè)16個(gè)按鍵的鍵盤(pán)等等。如圖所示。很明顯,在按鍵數(shù)目較多的場(chǎng)合,行列式鍵盤(pán)與獨(dú)立式鍵盤(pán)相比,要節(jié)省很多的I/O口線。 圖3-5 33鍵盤(pán)行列式鍵盤(pán)工作原理按鍵設(shè)置在行、列線交點(diǎn)上,行、列分別連接到按鍵開(kāi)關(guān)的兩端。行線通過(guò)上拉電阻接到+5V上。無(wú)按鍵按下時(shí),行線處于高電平狀態(tài),而當(dāng)有按鍵按下時(shí),行線電平狀態(tài)將由與此行線相連的列線的電平?jīng)Q定。列線的電平如果為低,則行線電平為低;列線的電平如果為高,則行線電平亦為高。這一點(diǎn)是識(shí)別行列式鍵盤(pán)是否按下的關(guān)鍵所在。由于行列式鍵盤(pán)中行、列線為多鍵共用,各按鍵均影響該鍵所在的行和列的電平。因此各按鍵彼此將相互發(fā)生影響,所以必須將行、列線信號(hào)配合起來(lái)并作是的處理,才能確定閉合鍵的位置。掃描法下面以圖中3號(hào)鍵被按下為例,來(lái)說(shuō)明此鍵是如何被識(shí)別出來(lái)的。當(dāng)3號(hào)鍵被按下時(shí),與3號(hào)鍵相兩的行線電平將由與此鍵相連的列線電平?jīng)Q定,而行線電平在無(wú)按鍵按下時(shí)處于高電平狀態(tài)。如果讓所有的列線處于低電平,很明顯,按鍵所在的行電平將被接成低電平,根據(jù)此行電平的變化,便能判定此行一定有按鍵被按下。但還不能確定是鍵3被按下,以為如果鍵3不被按下,而同一行的鍵2、1或0之一被按下,均回產(chǎn)生同樣的效果。所以,行線處于低電平只能得出某行有按鍵被按下的結(jié)論。為進(jìn)一步判定到底是哪一列的按鍵被按下,可采用掃描法來(lái)識(shí)別。即在某一時(shí)刻只讓1條列線處于低電平,其余所有列線處于高電平。當(dāng)?shù)谝涣袨榈碗娖剑溆喔髁袨楦唠娖綍r(shí),以為是鍵3被按下,所以1行仍處于高電平狀態(tài);而當(dāng)?shù)诙袨榈碗娖?,其余各列為高電平時(shí),同樣我們會(huì)發(fā)現(xiàn)第1行仍處于高電平狀態(tài);直到讓第4列為低電平,其余各列為高電平時(shí),以為瓷實(shí)號(hào)鍵被按下,所以第一行的電平將由高電平轉(zhuǎn)換到第4列所處的低電平,據(jù)此可以判斷第1行第4列的交叉點(diǎn)處的按鍵,即3號(hào)鍵被按下。 根據(jù)上面的分析,很容易想到識(shí)別鍵盤(pán)有無(wú)鍵盤(pán)被按下的方法,此方法分2步進(jìn)行:第1步,識(shí)別鍵盤(pán)有無(wú)鍵被按下;第2步,如有鍵盤(pán)被按下,識(shí)別出具體的按鍵。分別介紹如下:首先把所有的列線均置為低電平,檢查各行線是否有變化,如果有變化,則說(shuō)明有鍵被按下,如果沒(méi)有變化,則說(shuō)明無(wú)鍵被按下。上述識(shí)別具體按鍵的方法也稱(chēng)為掃描法,即先把某一列置低電平,其余各列置為高電平,檢查各行線電平的變化,如果某行線為低電平,則可確定次行此列交叉點(diǎn)處的按鍵被按下。(3)鍵盤(pán)的工作方式單片機(jī)應(yīng)用系統(tǒng)中,鍵盤(pán)掃描只是單片機(jī)的工作內(nèi)容之一。單片機(jī)在忙于各項(xiàng)工作任務(wù)時(shí),如何兼顧鍵盤(pán)的輸入,取決于鍵盤(pán)的工作方式。鍵盤(pán)工作方式的選取應(yīng)根據(jù)實(shí)際應(yīng)用系統(tǒng)中CPU工作的忙、閑情況而定。其原則是既要保證能即使響應(yīng)按鍵操作,又不要過(guò)多的占用CPU的時(shí)間,通常,鍵盤(pán)工作方式有三種:即編程掃描、定時(shí)掃描、中斷掃描。111)編程掃描方式這種方式就是只有當(dāng)單片機(jī)空閑時(shí),才調(diào)用鍵盤(pán)掃描子程序,反復(fù)的掃描鍵盤(pán),等待用戶從鍵盤(pán)上輸入命令或數(shù)據(jù),來(lái)響應(yīng)鍵盤(pán)的輸入請(qǐng)求。圖為1個(gè)48矩陣鍵盤(pán)通過(guò)8255A擴(kuò)展I/O口與8031的借口電路原理圖,鍵盤(pán)采用編程掃描方式工作,8255A的PC口低4位輸出逐行掃描信號(hào),PA口輸入8位列信號(hào),均為低電有效。8255A的A0,A1端分別接于地址線A0,A1上,/CS與P2.7相接,/WR、/RD分別與8031的/WR和/RD相連。PC口低4位狀態(tài),若PC0PC3全1,則說(shuō)明鍵盤(pán)無(wú)鍵按下;若不完全為1,則說(shuō)明鍵盤(pán)有可能有鍵按下。2) 用軟件延時(shí)10ms來(lái)消除按鍵抖動(dòng)的影響。確實(shí)有按鍵按下時(shí),進(jìn)行下一步。3)在鍵盤(pán)掃描子程序中,首先判斷鍵盤(pán)上有無(wú)鍵按下。其方法為PA口8位輸出全0,讀求按下鍵的鍵號(hào)。根據(jù)前面的介紹的掃描法,逐列置0掃描,讀入行線的狀態(tài),最后確定按鍵位置。4) 等待按鍵釋放后,在進(jìn)行按鍵功能的處理操作。(4) 定時(shí)掃描的工作方式 單片機(jī)對(duì)鍵盤(pán)的掃描也可以采用定時(shí)掃描方式,即每隔一定的時(shí)間對(duì)鍵盤(pán)掃描一次。在這種掃描方式中,通常利用單片機(jī)內(nèi)的定時(shí)器,產(chǎn)生10ms的定時(shí)中斷,CPU響應(yīng)定時(shí)器溢出中斷請(qǐng)求,對(duì)鍵盤(pán)進(jìn)行掃描,在有鍵按下時(shí)識(shí)別出該鍵,并執(zhí)行相應(yīng)鍵的處理功能程序。(5) 中斷工作方式 為了進(jìn)一步提高單片機(jī)掃描鍵盤(pán)的工作效率,可采用中斷掃描方式,即只有在鍵盤(pán)有按鍵按下時(shí),才執(zhí)行鍵盤(pán)掃描程序并執(zhí)行該按鍵功能程序,如果無(wú)按鍵按下,單片機(jī)將不理睬鍵盤(pán)。3.6 鎖存器 74LS373的介紹與選擇本次設(shè)計(jì)選用的鎖存器為74LS373,它是一種帶有三態(tài)門(mén)的8D鎖存器,其引腳如圖所示 其內(nèi)部結(jié)構(gòu)如圖3-4所示其引腳說(shuō)明如下:D7-D0:8位數(shù)據(jù)輸入線。Q7-Q0:8位數(shù)據(jù)輸出線。G:數(shù)據(jù)輸入鎖存選通引腳,高電平有效。當(dāng)該信號(hào)為高電平時(shí),外部數(shù)據(jù)選通到內(nèi)部鎖存器,負(fù)跳變時(shí),數(shù)據(jù)鎖存到鎖存器中G為數(shù)據(jù)鎖存控制端;當(dāng)G為“1”時(shí),鎖存器輸出端同輸入端;當(dāng)G由“1”變“0”時(shí),數(shù)據(jù)輸入鎖存器中。OE為輸出允許端;當(dāng)OE為“0”時(shí),三態(tài)門(mén)打開(kāi);當(dāng)OE為“1”時(shí),三態(tài)門(mén)關(guān)閉,輸出呈高阻狀態(tài)。在MCS-51單片機(jī)系統(tǒng)中,常采用74LS373作為地址鎖存器使用,其中輸入端1D8D接至單片機(jī)的P0口,輸出端提供的是低8位地址,G端接至單片機(jī)的地址鎖存允許信號(hào)ALE。輸出允許端OE,接地,表示輸出三態(tài)門(mén)一直打開(kāi)。圖3-6 74LS373的引腳圖3.7 2732的芯片引腳功能如下:A0-A15:地址線引腳。地址線引腳的數(shù)目由芯片的存儲(chǔ)容量來(lái)定,用來(lái)進(jìn)行單元選擇。D7-D0:數(shù)據(jù)線引腳。/CE:片選輸入端/OE:輸出允許控制端。/PGM:編程時(shí),加編程脈沖的輸入端。Vpp:編程時(shí),編程電壓(+12V或+25V)輸入端。Vcc+5V,芯片的工作電壓輸入端GND:數(shù)字地。NC:無(wú)用端。3.8 6264數(shù)據(jù)存儲(chǔ)器的介紹與選擇6264是8K8位的靜態(tài)數(shù)據(jù)存儲(chǔ)器芯片,采用CMOS工藝制作,單一+5V電源,額定功耗165mw,典型存取時(shí)間為200ns,24線雙列直插式封裝。在此設(shè)計(jì)中用于擴(kuò)展89C51內(nèi)部數(shù)據(jù)存儲(chǔ)器容量。A0A12為片內(nèi)13位地址線,D0D7為8位數(shù)據(jù)線CE為片選信號(hào),OE為讀允許信號(hào)線,WE為寫(xiě)信號(hào)線。數(shù)據(jù)存儲(chǔ)器擴(kuò)展電路與程序存儲(chǔ)器擴(kuò)展電路相似,所用的地址線,數(shù)據(jù)線完全相同,讀,寫(xiě)控制線用WR,RD但要考慮的問(wèn)題比程序存儲(chǔ)器涉及的問(wèn)題要多,如I/O口擴(kuò)展的統(tǒng)一編址問(wèn)題。3.9 6264引腳功能的介紹與選STAM的各引腳功能如下:A0-A14:地址輸入線。D0-D7:雙向三態(tài)數(shù)據(jù)線。/CE:片選信號(hào)輸入線,低電平有效。對(duì)于6264芯片,當(dāng)引腳26(CS)為高電平時(shí),且/CE為低電平時(shí)才選中該片。/OE:讀選通信號(hào)輸入線,低電平有效。/WE:寫(xiě)允許信號(hào)輸入線,低電平有效。Vcc:工作電源+5V。GND:地線。靜態(tài)SRAM存儲(chǔ)器有讀出,寫(xiě)入,維持三中工作方式, 這些工作方式的操作控制如表1所示: 表3-1 操作控制表信號(hào)方式/CE/OE/WED0D7讀VILVILVIH數(shù)據(jù)輸出寫(xiě)VILVIHVIL數(shù)據(jù)輸入維持VIH任意任意高阻態(tài)3.10 8255芯片介紹8255是Inter公司生產(chǎn)的可編程并行I/O接口芯片,它具有3個(gè)8位的并行I/O口,3種工作方式,可以通過(guò)編程改變其功能,因而使用靈活方便,通用性強(qiáng),可作為單片機(jī)與多種外圍設(shè)備連接時(shí)的中間接口電路。此設(shè)計(jì)中8255芯片用于擴(kuò)展接口。8255A的引腳如圖所示。15由圖所示 8255共有40只引腳,采用雙列直插式封裝,各引腳功能如下:D7D0:三態(tài)雙向數(shù)據(jù)線,與單片機(jī)數(shù)據(jù)總線連接,用來(lái)傳誦數(shù)據(jù)信息。/CS:片選信號(hào)線,低電平有效,表示本芯片被選中。/RD:讀出信號(hào)線,低電平有效,控制8255A數(shù)據(jù)的讀出。/WR:寫(xiě)入信號(hào)線,低電平有效,控制向8255A數(shù)據(jù)的寫(xiě)入。Vcc:+5V電源。PA7PA0:A口輸入/輸出線。PB7PB0:B口輸入/輸出線。PC7PC0:C口輸入/輸出線。A1A0:地址線,用來(lái)選擇8255A內(nèi)部的4個(gè)端口。8255A的內(nèi)部結(jié)構(gòu)8255A內(nèi)部結(jié)構(gòu)見(jiàn)圖,其中包括3個(gè)并行數(shù)據(jù)輸入/輸出端口,2個(gè)工作方式的控制電路,1個(gè)讀/寫(xiě)控制邏輯電路和8位數(shù)據(jù)總線緩沖器。各部件的功能如下: 8255有3個(gè)8位并行口,PA、PB和PC。都可以選擇作為輸入/輸出工作模式,但在功能上有點(diǎn)差異。讀/寫(xiě)控制邏輯電路接收CPU發(fā)來(lái)的控制信號(hào)/RD、/WR、RESET、地址信號(hào)A1A0等,然后根據(jù)控制信號(hào)的要求,將斷口數(shù)據(jù)讀出,送往CPU或者將CPU共來(lái)的數(shù)據(jù)寫(xiě)入端口RESET:復(fù)位輸入線,當(dāng)該輸入端外于高電平時(shí),所有內(nèi)部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成輸入方式。CS:片選信號(hào)線,當(dāng)這個(gè)輸入引腳為低電平時(shí),表示芯片被選中,允許8255與CPU進(jìn)行通訊。 RD:讀信號(hào)線,當(dāng)這個(gè)輸入引腳為低電平時(shí),允許8255通過(guò)數(shù)據(jù)總線向CPU發(fā)送數(shù)據(jù)或狀態(tài)信息,即CPU從8255讀取信息或數(shù)據(jù)。 WR:寫(xiě)入信號(hào),當(dāng)這個(gè)輸入引腳為低電平時(shí),允許CPU將數(shù)據(jù)或控制字寫(xiě)8255。D0D7:三態(tài)雙向數(shù)據(jù)總線,8255與CPU數(shù)據(jù)傳送的通道 PA口:1個(gè)8位數(shù)據(jù)輸出鎖存器和緩沖器;1個(gè)8位輸入鎖存器。 PB口:1個(gè)8位數(shù)據(jù)輸出鎖存器和緩沖器;1個(gè)8位數(shù)據(jù)輸入緩沖器。 PC口:1個(gè)8位的輸出鎖存器;1個(gè)8位數(shù)據(jù)輸入緩沖器。 通常PA口、PB口作為輸入/輸出口,PC可作為輸入/輸出口,也可在軟件的控制下,分為2個(gè)4位的端口,作為端口A、B選通方式操作時(shí)的狀態(tài)控制信號(hào)。(1) A組和B組控制電路 這是2組根據(jù)CPU寫(xiě)入的命令控制8255A工作方式的控制電路。A組控制PA口和PC口的上半部(PC7PC4);B組控制PB口和PC口的下半部(PC3PC0),本可根據(jù)命令字對(duì)端口的每一位實(shí)現(xiàn)按位置或復(fù)位。16(2) 數(shù)據(jù)總線緩沖器 數(shù)據(jù)總線緩沖器是1個(gè)三態(tài)雙向8位緩沖器,作為8255A與系統(tǒng)總線之間的接口,用來(lái)傳送數(shù)據(jù)、指令、控制命令以及外部狀態(tài)信息。(3) 讀/寫(xiě)控制邏輯電路 圖3-8 8255的引腳圖4 系統(tǒng)的軟件設(shè)計(jì) 4.1 控制系統(tǒng)的主程序功能及流程圖主程序完成下述主要功能:1. 初始化程序的設(shè)置;2. 存取車(chē)狀態(tài)的讀入,及車(chē)牌號(hào)的讀入、顯示;3. 存取車(chē)子程序的調(diào)入;4. 給存取車(chē)控制系統(tǒng)的單片機(jī)信號(hào)的傳遞。主程序流程圖如圖4-1所示。開(kāi) 始 初始化鍵盤(pán)掃描子程序存車(chē)鍵取車(chē)鍵NYY調(diào)取車(chē)子程序調(diào) 存 車(chē) 子 程 序給存取車(chē)控制系統(tǒng)發(fā)信號(hào)圖4-1 主程序流程圖 4.2 最優(yōu)車(chē)位的實(shí)現(xiàn)本文研究的自動(dòng)立體停車(chē)庫(kù)有40 個(gè)車(chē)位,共20 層,每層兩個(gè)車(chē)位,當(dāng)有車(chē)存入時(shí),微處理器需確定存入哪個(gè)車(chē)位,就出現(xiàn)了選取最優(yōu)化車(chē)位的問(wèn)題。最優(yōu)化條件首先是存車(chē)所需時(shí)間最短,其次是以消耗最少能源為準(zhǔn)。存車(chē)的能量消耗主要與提升層數(shù)關(guān)系密切,層數(shù)越低,能量消耗越少。選取最優(yōu)車(chē)位的方法,本論文采用了較簡(jiǎn)單的方法,即根據(jù)車(chē)位的層數(shù)排列出選取的順序,根據(jù)此順序建立一個(gè)現(xiàn)行表最優(yōu)車(chē)位庫(kù)。每個(gè)車(chē)位需兩個(gè)字節(jié),第一個(gè)字節(jié)表示是否有車(chē)存入,第二個(gè)字節(jié)表示此位置的車(chē)位號(hào)。程序在此線性表中進(jìn)行順序查找。時(shí)間和空間的矛盾是計(jì)算機(jī)世界許多相同的功能出現(xiàn)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論