欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2712|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)全自動(dòng)存包控制系統(tǒng)設(shè)計(jì)論文

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:319766 發(fā)表于 2018-5-1 11:52 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
全自動(dòng)存包柜的設(shè)計(jì)
XXX
電子信息工程  信工0706班  學(xué)號(hào)070201149
指導(dǎo)教師
摘    要
本文詳細(xì)介紹了國(guó)內(nèi)自動(dòng)存包控制系統(tǒng)的發(fā)展現(xiàn)狀,發(fā)展中所面臨的問(wèn)題。并詳細(xì)介紹了本系統(tǒng)采用的單片機(jī)做控制器,可以同時(shí)管理N個(gè)存包柜。柜門(mén)鎖由電磁閥控制,當(dāng)顧客需要存包的時(shí)候,可以自行到存包柜前按“開(kāi)門(mén)”鍵,單片機(jī)接收到一脈沖信號(hào),并通過(guò)系統(tǒng)I/O口發(fā)出相應(yīng)的信號(hào),控制鎖柜門(mén)的電磁閥將一空箱打開(kāi),顧客即可存包,并將柜門(mén)關(guān)上。當(dāng)顧客需要取包時(shí),要將只要將條碼放置到條形碼閱讀器前方,條形碼閱讀器采集到條碼信息輸出相應(yīng)的高低電平信號(hào)傳給單片機(jī),系統(tǒng)比較密碼一致后,發(fā)出開(kāi)箱信號(hào)至電磁閥是柜門(mén)打開(kāi),顧客即可將包取出。
關(guān)鍵詞:自動(dòng)存包 單片機(jī) 光電傳感器 條形碼閱讀器
Design of Automatic Package of Counter
Abstract
This paper describes the control system of the domestic auto-save package development status of the problems faceing the development. And details of the system microcontroller to do with the controller, can manage a package of counter N. Controlled by a solenoid valve cabinet locks, when customers need to save the package, they can keep their own bag to the counter before the press the "open" button, the microcontroller receives a pulse signal, and the system I / O port to issue the appropriate signal, control lock door of the solenoid valve will be an empty box is opened, the customer can deposit bags, and cabinet door. When the customer needs to take when the package is to simply place the barcode in front of bar code readers, bar code readers bar code information collected by the high-low output signals to the appropriate microcontroller, the password system is relatively consistent, the issue out of the box signal to the solenoid valve is the door open, the customer can remove the package.

Keywords: Automatic Storage Bag Microcontroller Photoelectric Sensors  Bar Code Reader
目    錄
前    言        1
第1章  自動(dòng)存包柜        2
第1.1節(jié)  自動(dòng)存包柜的發(fā)展概述        2
第1.2節(jié)  總體方案確定        3
第2章  系統(tǒng)硬件設(shè)計(jì)        4
第2.1節(jié)  MCS—51單片機(jī)主要應(yīng)用特性        4
第2.2節(jié)  自動(dòng)存包系統(tǒng)面板設(shè)計(jì)及控制原理圖        6
第2.3節(jié)  微型處理器        9
第2.4節(jié)  系統(tǒng)擴(kuò)展        12
第2.5節(jié)  輸入/輸出接口系統(tǒng)設(shè)計(jì)        20
第2.6節(jié)  條形碼閱讀器設(shè)計(jì)        25
第2.7節(jié)  電機(jī)控制電路設(shè)計(jì)        26
第2.8節(jié)  電源        27
第3章  系統(tǒng)流程圖        29
第3.1節(jié)  控制主程序流程圖        29
第3.2節(jié)  顯示子程序程圖        31
第3.3節(jié)  輸入給定值中斷服務(wù)程序        32
結(jié)    論        33
附    錄        34
參考文獻(xiàn)        39
致    謝        40


前    言
隨著我國(guó)的不斷發(fā)展,產(chǎn)品呈現(xiàn)出種類(lèi)數(shù)目不斷增多、豐富的局面。尤其是生產(chǎn)質(zhì)量的不斷提高,對(duì)技術(shù)服務(wù)提出了更高的要求,特別是對(duì)物品的自動(dòng)存儲(chǔ)提出了更新更高的要求。在當(dāng)前各種多功能全自動(dòng)存包機(jī)逐漸進(jìn)入各超市的情況下,我們有必要對(duì)國(guó)產(chǎn)自動(dòng)存包控制的應(yīng)用現(xiàn)狀及發(fā)展作進(jìn)一步探討。
在超市、綜合商店、個(gè)人商店等人流量大的地方,常常需要對(duì)顧客隨帶物品進(jìn)行存儲(chǔ)。如果用人工完成不但麻煩,而且效率低,勞動(dòng)強(qiáng)度大。隨著微型計(jì)算機(jī)控制的普及,特別是單片機(jī)的應(yīng)用,給該類(lèi)系統(tǒng)的設(shè)計(jì)帶來(lái)了極大的便利,在本次設(shè)計(jì)中,將主要介紹單片機(jī)控制自動(dòng)存包控制系統(tǒng)的設(shè)計(jì)方法。
第1章  自動(dòng)存包柜
第1.1節(jié)  自動(dòng)存包柜的發(fā)展概述
電子存包柜又名自動(dòng)存包柜、電子寄存柜,是20世紀(jì)嵌入式計(jì)算機(jī)快速發(fā)展后在傳統(tǒng)寄存行業(yè)的一大應(yīng)用。從外觀和用途來(lái)看,電子存包柜屬于家具類(lèi)別中的鋼制家具。從實(shí)現(xiàn)方式和功能上來(lái)看,電子存包柜屬于電子專(zhuān)用設(shè)備。電子存包柜主要由以下幾種類(lèi)型:
(1)機(jī)設(shè)條碼式電子存包柜   
存物時(shí):按“存”鍵,寄存柜自動(dòng)打印一張密碼條,機(jī)器語(yǔ)音提示:“請(qǐng)取密碼條”。使用者抽出密碼紙,對(duì)應(yīng)的箱門(mén)自動(dòng)打開(kāi),存好后關(guān)上箱門(mén)。取物時(shí):直接將條碼紙?jiān)趻呙杩趻呙瑁瑢?duì)應(yīng)的箱門(mén)會(huì)自動(dòng)打開(kāi)。語(yǔ)音提示:“請(qǐng)取完物品后關(guān)好箱門(mén)。”
(2)指紋式電子存包柜   
    以使用者指紋作為寄存的憑證;當(dāng)使用者進(jìn)行存物操作時(shí),須先按一下操作鍵盤(pán)中的“存”鍵,然后在指紋采集窗里采集指紋,機(jī)器會(huì)把該指紋與分配給使用者使用的寄存箱的箱號(hào)結(jié)合起來(lái),并將信息自動(dòng)記錄下,同時(shí)自動(dòng)打開(kāi)該箱,供使用者存物,存完后使用者自己關(guān)好箱門(mén);取物時(shí),只需須先按一下操作鍵盤(pán)中的“取”鍵,然后在指紋采集窗里采集指紋,寄存柜將指紋數(shù)據(jù)與先前記錄下的進(jìn)行比對(duì),正確后才會(huì)打開(kāi)該箱供使用者取物(同時(shí)機(jī)器會(huì)自動(dòng)記錄當(dāng)時(shí)的時(shí)間、指紋以備查詢(xún))。 
(3)非接觸IC卡電子存包柜   
    以使用者所持IC卡(即射頻卡)作為寄存的憑證;當(dāng)使用者進(jìn)行存物操作時(shí),須先按一下操作鍵盤(pán)中的“存”鍵再刷卡(即讓寄存柜讀取卡號(hào)),寄存柜先識(shí)別是否為該場(chǎng)所的IC卡,若不是則拒絕存物;若是,機(jī)器會(huì)把該卡號(hào)與分配給使用者使用的寄存箱的箱號(hào)結(jié)合起來(lái),并將信息自動(dòng)記錄下,同時(shí)自動(dòng)打開(kāi)該箱,供使用者存物,存完后自己關(guān)好箱門(mén);取物時(shí),只需須先按一下操作鍵盤(pán)中的“取”鍵再刷卡,寄存柜將讀取的卡號(hào)與先前記錄下的進(jìn)行比對(duì),正確后才會(huì)打開(kāi)該箱供使用者取物(同時(shí)機(jī)器會(huì)自動(dòng)記錄當(dāng)時(shí)的時(shí)間、卡號(hào)以備查詢(xún))。   
(4)聯(lián)網(wǎng)型非接觸IC卡電子存包柜   
聯(lián)網(wǎng)型非接觸IC卡電子存包柜基本功能與非接觸IC卡電子存包柜一致,另外增加了網(wǎng)絡(luò)通訊模塊,上位機(jī)管理軟件等,以實(shí)現(xiàn)寄存狀態(tài)聯(lián)網(wǎng)監(jiān)控,分段收費(fèi),報(bào)表打印等功能。   
現(xiàn)在公共場(chǎng)所應(yīng)用比較廣泛。因此,研制出一種能自動(dòng)存包的裝置有很重大的意義,我所研究的就是這方面的課題。
第1.2節(jié)  總體方案確定
根據(jù)“自動(dòng)存包”這一目的要求,做如下設(shè)計(jì)安排:
第一部分:CPU核心控制部分,由單片機(jī)8031、復(fù)位電路、時(shí)鐘電路等構(gòu)成,是整個(gè)系統(tǒng)的核心。
第二部分:鍵盤(pán)顯示控制部分。對(duì)3個(gè)數(shù)碼管和2個(gè)按鍵進(jìn)行管理,3個(gè)數(shù)碼管用于顯示兩位柜號(hào)和3位密碼,12個(gè)按鍵分別為10個(gè)數(shù)字鍵和2個(gè)功能鍵。通過(guò)這些鍵盤(pán),用戶(hù)就可以完成所有的操作。
第三部分:執(zhí)行機(jī)構(gòu)部分。它是通過(guò)8051的并行口擴(kuò)展一片8255A芯片,并通過(guò)8255A控制20個(gè)燈的狀態(tài)(亮滅)來(lái)模擬柜子的存包取包的過(guò)程。
軟件部分主要采用我們自己設(shè)定的一種與柜號(hào)相關(guān)聯(lián)的算法來(lái)產(chǎn)生一組3位的隨機(jī)密碼,而密碼的產(chǎn)生、核對(duì)過(guò)程就對(duì)應(yīng)存包、取包的過(guò)程。
第2章  系統(tǒng)硬件設(shè)計(jì)
第2.1節(jié)  MCS—51單片機(jī)主要應(yīng)用特性
MCS-51單片機(jī)是美國(guó)Intel公司于1980年推出的產(chǎn)品,與MCS-48單片機(jī)相比,它的結(jié)構(gòu)更先進(jìn),功能更強(qiáng),在原來(lái)的基礎(chǔ)上增加了更多的電路單元和指令,指令數(shù)達(dá)111條,MCS-51單片機(jī)可以算是相當(dāng)成功的產(chǎn)品,一直到現(xiàn)在,MCS-51系列或其兼容的單片機(jī)仍是應(yīng)用的主流產(chǎn)品,各高校及專(zhuān)業(yè)學(xué)校的培訓(xùn)教材仍用MCS-51單片機(jī)作為代表進(jìn)行理論基礎(chǔ)學(xué)習(xí)。我們也以這一代表性的機(jī)型進(jìn)行系統(tǒng)的設(shè)計(jì)。
MCS-51系列單片機(jī)主要包括8031、8051和8751等通用產(chǎn)品,其主要功能如下:
8位CPU
4kbytes 程序存儲(chǔ)器(ROM)
128bytes的數(shù)據(jù)存儲(chǔ)器(RAM)
32條I/O口線
111條指令,大部分為單字節(jié)指令
21個(gè)專(zhuān)用寄存器
2個(gè)可編程定時(shí)/計(jì)數(shù)器
5個(gè)中斷源,2個(gè)優(yōu)先級(jí)
一個(gè)全雙工串行通信口
外部數(shù)據(jù)存儲(chǔ)器尋址空間為64kB
外部程序存儲(chǔ)器尋址空間為64kB
邏輯操作位尋址功能
雙列直插40PinDIP封裝
單一+5V電源供電
MCS-51以其典型的結(jié)構(gòu)和完善的總線專(zhuān)用寄存器的集中管理,眾多的邏輯位操作功能及面向控制的豐富的指令系統(tǒng),堪稱(chēng)為一代“名機(jī)”,為以后的其它單片機(jī)的發(fā)展奠定了基礎(chǔ)。正因?yàn)槠鋬?yōu)越的性能和完善的結(jié)構(gòu),導(dǎo)致后來(lái)的許多廠商多沿用或參考了其體系結(jié)構(gòu),有許多世界大的電氣商豐富和發(fā)展了MCS-51單片機(jī),像PHILIPS、Dallas、ATMEL等著名的半導(dǎo)體公司都推出了兼容MCS-51的單片機(jī)產(chǎn)品,就連我國(guó)的臺(tái)灣WINBOND公司也發(fā)展了兼容MCS-51的單片機(jī)品種。
近年來(lái)MCS-51獲得了飛速的發(fā)展,MCS-51的發(fā)源公司Intel由于忙于開(kāi)發(fā)PC及高端微處理器而無(wú)精力繼續(xù)發(fā)展自己的單片機(jī),而由其它廠商將其發(fā)展,最典型的是PHILIPS和ATMEL公司,PHILIPS公司主要是改善其性能,在原來(lái)的基礎(chǔ)上發(fā)展了高速I(mǎi)/O口,A/D轉(zhuǎn)換器,PWM(脈寬調(diào)制)、WDT等增強(qiáng)功能,并在低電壓、微功耗、擴(kuò)展串行總線(I2C)和控制網(wǎng)絡(luò)總線(CAN)等功能加以完善。
ATMEL公司推出的AT89Cxx系列兼容MCS-51的單片機(jī),完美地將Flash(非易失閃存技術(shù))EPROM與80C51內(nèi)核結(jié)合起來(lái),仍采用MCS-51的總體結(jié)構(gòu)和指令系統(tǒng),F(xiàn)lash的可反擦寫(xiě)程序存儲(chǔ)器能有效地降低開(kāi)發(fā)費(fèi)用,并能使單片機(jī)作多次重復(fù)使用。
8051是MCS-51系列單片機(jī)中的代表產(chǎn)品,它內(nèi)部集成了功能強(qiáng)大的中央處理器,包含了硬件乘除法器、21個(gè)專(zhuān)用控制寄存器、4kB的程序存儲(chǔ)器、128字節(jié)的數(shù)據(jù)存儲(chǔ)器、4組8位的并行口、兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器、一個(gè)全雙工的串行口以及布爾處理器。
MCS-51采用模塊式結(jié)構(gòu),MCS-51系列中各種加強(qiáng)型單片機(jī)都是以8051為核心加上一定的新的功能部件后組成的,從而使它們完全兼容。表2.1為MCS-

MCS-51具有比較大的尋址空間,地址線寬達(dá)16條,即外部數(shù)據(jù)存儲(chǔ)器和程序存儲(chǔ)器的尋址范圍達(dá)216=64kB,這作為單片機(jī)控制來(lái)說(shuō)已是比較大的,這同時(shí)具備對(duì)口的訪問(wèn)能力。此外,MCS-51采用模塊化結(jié)構(gòu),可方便地增刪一個(gè)模塊就可使引腳和指令兼容的新產(chǎn)品,從而容易使產(chǎn)品形成系列化。
由于MCS-51集成了幾乎完善的8位中央處理單元,處理功能強(qiáng),中央處理單元中集成了方便靈活的專(zhuān)用寄存器,硬件的加、減、乘、除法器和布爾處理機(jī)及各種邏輯運(yùn)算和轉(zhuǎn)移指令,這給應(yīng)用提供了極大的便利。
MCS-51的指令系統(tǒng)近乎完善,指令系統(tǒng)中包含了全面的數(shù)據(jù)傳送指令、完善的算術(shù)和邏輯運(yùn)算指令、方便的邏輯操作和控制指令、對(duì)于編程來(lái)說(shuō),是相當(dāng)靈活和方便的。
MCS-51單片機(jī)的工作頻率為2-12MHz,當(dāng)振蕩頻率為12MHz時(shí),一個(gè)機(jī)器周期為1us,這個(gè)速度應(yīng)該說(shuō)是比較快的。
MCS-51把微型計(jì)算機(jī)的主要部件都集成在一塊芯片上,使得數(shù)據(jù)傳送距離大大縮短,可靠性更高,運(yùn)行速度更塊。由于屬于芯片化的微型計(jì)算機(jī),各功能部件在芯片中的布局和結(jié)構(gòu)達(dá)最優(yōu)化,抗干擾能力加強(qiáng),工作亦相對(duì)穩(wěn)定。因此,在工業(yè)測(cè)控系統(tǒng)中,使用單片機(jī)是最理想的選擇。單片機(jī)屬于典型的嵌入式系統(tǒng),所以它是低端控制系統(tǒng)最佳器件。
鑒于MCS-51的以上特點(diǎn),本文的設(shè)計(jì)就是基于MCS-51的8031型號(hào)單片機(jī)來(lái)設(shè)計(jì)的自動(dòng)存包系統(tǒng)。
第2.2節(jié)  自動(dòng)存包系統(tǒng)面板設(shè)計(jì)及控制原理圖
2.2.1  面板設(shè)計(jì)
自動(dòng)存包控制系統(tǒng)面板如圖2.1所示



   
圖2.1  控制面板
下圖為實(shí)物圖的展示:
圖2.1  實(shí)物圖展示
2.2.2  系統(tǒng)控制原理圖
圖2.3  自動(dòng)存包系統(tǒng)控制原理圖
在本系統(tǒng)設(shè)計(jì)的自動(dòng)存包系統(tǒng)中,采用8031單片機(jī)設(shè)計(jì)一個(gè)最小系統(tǒng),為了讀鍵盤(pán)給定值及完成檢測(cè)和控制,系統(tǒng)中擴(kuò)展一片8255A可編程接口及程序存儲(chǔ)器EPROM 2764其原理圖如圖2.3所示。
在圖2.3中所示,8031、74LS373、2764組成最小系統(tǒng)。
第2.3節(jié)  微型處理器
8031單片機(jī)是Intel公司生產(chǎn)的MCS-51系列單片機(jī)中的一種,除無(wú)片內(nèi)ROM外,其余特性與MCS-51單片機(jī)基本一樣。
2.3.1  8031性能特點(diǎn)
8031的主要性能包括:
(1)與MCS-51位控制器產(chǎn)品系列兼容。
(2)寬工作電壓范圍,VCC可為2.7V~6V。
(3)全靜態(tài)工作,可從0Hz 至16Hz。
(4)128×8位內(nèi)部RAM。
(5)32條可編程I/O線。
(6)兩個(gè)16位定時(shí)器/計(jì)數(shù)器。
(7)中斷結(jié)構(gòu)具有5個(gè)中斷源和2個(gè)優(yōu)先級(jí)。
2.3.2  8031硬件結(jié)構(gòu)及引腳功能
8031的內(nèi)部硬件結(jié)構(gòu)如圖2.4所示:



   
   8031具有很強(qiáng)的擴(kuò)展功能,允許擴(kuò)展各種外圍電路以補(bǔ)充片內(nèi)資源不足,適應(yīng)特定應(yīng)用的需要,擴(kuò)展內(nèi)容包括數(shù)據(jù)存儲(chǔ)器、程序存儲(chǔ)器、I/O接口等擴(kuò)展結(jié)構(gòu)如圖2.5所示:
圖2.5  8031系統(tǒng)擴(kuò)展結(jié)構(gòu)圖
    2.4.1  I/O接口的擴(kuò)展
    由于我們采集的數(shù)據(jù)量較多,因此CPU的I/O口線不夠用,所以我們使用8255A來(lái)擴(kuò)展I/O口,以滿足系統(tǒng)的要求。
8255A是Intel公司生產(chǎn)的通用可編程并行I/O接口芯片。8031和8255A相連可為外設(shè)提供三個(gè)8位I/O端口,允許采用同步、異步和中斷方式傳送I/O數(shù)據(jù)。
(1)8255A內(nèi)部結(jié)構(gòu)和引腳功能
①內(nèi)部結(jié)構(gòu)
8255A內(nèi)部由四部分電路組成。它們是A口、B口和C口,A組控制器和B控制器,數(shù)據(jù)緩沖器及讀寫(xiě)控制邏輯,如圖2-6所示。
1 A口、B口和C口。A口、B口和C口均為8位I/O數(shù)據(jù)口,但結(jié)構(gòu)上略有差別。A口由一個(gè)8位的數(shù)據(jù)輸出緩沖/鎖存器和一個(gè)8位的數(shù)據(jù)輸入緩沖/鎖存器組成。B口由一個(gè)8位的數(shù)據(jù)輸出緩沖/鎖存器和一個(gè)8位的數(shù)據(jù)輸入緩沖器組成。三個(gè)端口都可以和外設(shè)相連,分別傳送外設(shè)的輸入/輸出數(shù)據(jù)或控制信息。
2 A、B組控制電路。這是兩組根據(jù)CPU的命令字控制8255工作方式的電路。A組控制A口及C口的高4位,B組控制B口及C口的低4位。
3 數(shù)據(jù)總線緩沖器。它是一個(gè)8位的雙向三態(tài)驅(qū)動(dòng)器,用于與單片機(jī)的數(shù)據(jù)總線相連,傳送數(shù)據(jù)或控制信息。
4 讀/寫(xiě)控制邏輯。這部分電路接收MCS-51送來(lái)的讀/寫(xiě)命令和選口地址,用于控制對(duì)8255A的讀/寫(xiě)。
圖2.6  8255A芯片的內(nèi)部結(jié)構(gòu)圖
②  引腳功能
8255A有40條引腳,采用雙列直插式封裝。如圖2.7所示。
圖2.7  8255A引腳圖
1數(shù)據(jù)總線(8條):
D0~D7:三態(tài)雙向數(shù)據(jù)總線,8255A與CPU數(shù)據(jù)傳送的通道,當(dāng)CPU 執(zhí)行輸入輸出指令時(shí),通過(guò)它實(shí)現(xiàn)8位數(shù)據(jù)的讀/寫(xiě)操作,控制字和狀態(tài)信息也通過(guò)數(shù)據(jù)總線傳送。
2控制總線(6條):
RESET: 復(fù)位信號(hào),輸入高電平有效。一般和單片機(jī)的復(fù)位相連,復(fù)位后,8255A所有內(nèi)部寄存器清0,所有口都為輸入方式。
:片選信號(hào)線,當(dāng)這個(gè)輸入引腳為低電平時(shí)有效,表示芯片被選中,允許8255A與CPU進(jìn)行通訊。
:讀信號(hào)線,當(dāng)這個(gè)輸入引腳為低電平時(shí),允許8255A通過(guò)數(shù)據(jù)總線向CPU發(fā)送數(shù)據(jù)或狀態(tài)字。
:寫(xiě)入信號(hào),當(dāng)這個(gè)輸入引腳為低電平時(shí),允許CPU將數(shù)據(jù)或控制字寫(xiě)入8255A。
A0、A1:地址輸入線。當(dāng)=0,芯片被選中時(shí),這兩位的4種組合00、01、10、11分別用于選擇A、B、C口和控制寄存器。其組合如表2.3。
表2.3  8255A控制信號(hào)功能表
總線高阻
3并行I/O總線(24條):這些總線用于和外設(shè)相連,分別與A、B、C口相對(duì)應(yīng),用于8255A和外設(shè)之間傳送數(shù)據(jù),共分三組:
PA0~PA7:端口A輸入輸出線,一個(gè)8位的數(shù)據(jù)輸出鎖存器/緩沖器,一個(gè)8位的數(shù)據(jù)輸入鎖存器。
PB0~PB7:端口B輸入輸出線,一個(gè)8位的I/O鎖存器,一個(gè)8位的輸入輸出緩沖器。
PC0~PC7:端口C輸入輸出線,一個(gè)8位的數(shù)據(jù)輸出鎖存器/緩沖器,一個(gè)8位的數(shù)據(jù)輸入緩沖器。
4電源線(2條):VCC為+5V電源線,允許變化±10%;GND為地線。
    (2)8255A方式控制字
8255A有兩個(gè)控制字:方式控制字和C口單一置復(fù)位控制字。用戶(hù)通過(guò)程序可以把這兩個(gè)控制字送到8255A的控制寄存器(A1A0=11B),以設(shè)定8255A的工作方式和C口各位狀態(tài)。這兩個(gè)控制字以D7位狀態(tài)作為標(biāo)志。8255A各端口工作于什么方式和是輸入還是輸出方式,是由方式控制字決定的。方式控制字格式如圖2.7所示。
D7為控制字標(biāo)志位,若D7=1,則本控制字為方式控制字,若D7=0,則本控制字為C口單一置復(fù)位控制字。
D6~D3為A組控制位。其中,D6和D5位A組方式選擇位:若D6D5=00,則A組設(shè)定為方式0;若D6D5=01,則A組設(shè)定為方式1:若D6D5=1×(×為任意),則A組設(shè)定為方式2。D4為A口輸入/輸出控制位:若D4=0,則PA0~PA7,用于輸出數(shù)據(jù);若D4=0,則PA0~PA7用于輸入數(shù)據(jù)。D3位C口高4位輸入/輸出控制位:若D3=0,則PC4~PC7為輸出數(shù)據(jù)方式;若D3=1,則PC4~PC7為輸入方式。
圖2.8  方式控制字
D2~D0為B組控制位,其作用和D6~D3類(lèi)似。其中,D2為方式選擇位,若D2=0,則B組設(shè)定為方式0,若D2=1,則B組設(shè)定為方式1。D1為B口輸入/輸出控制位,D1=0,則PB0~PB7用于輸出數(shù)據(jù),若D1=1,則PB0~PB7用于輸入數(shù)據(jù)。D0為C口低4位輸入/輸出控制位,若D0=0,則PC0~PC3用于輸出數(shù)據(jù),若D0=1,則PC0~PC3用于輸入數(shù)據(jù)。如圖2.9所示:
圖2.9  置位控制字
    (3)8255A的工作方式
8255A有三種工作方式:方式0(Mode0)、方式1(Mode1)和方式2(Mode2)。正確的選用方式控制字,并把它通過(guò)程序送給8255A的控制字寄存器就可設(shè)定8255A的工作方式。
方式0(基本輸入/輸出方式):
這種方式不需要任何選通信號(hào)。A口、B口及C口的兩個(gè)4位口中的任何一個(gè)端口都可以被設(shè)定為輸入或輸出。輸出鎖存,輸入不鎖存。根據(jù)控制字D4、D3、D1、D0位的變化,方式0有16種不同的輸入、輸出組合方式。
方式1(選通輸入/輸出方式):
這種方式下,A口、B口、C口分為兩組。A組包括A口和C口的高4位,A口可由編程設(shè)定為輸入口或輸出口,C口的高四位則用來(lái)作為輸入/輸出操作的控制和同步信號(hào);B組包括B口和C口的低4位,B口可由編程設(shè)定為輸入口或輸出口,C口的低四位則用來(lái)作為輸入/輸出操作的控制和同步信號(hào)。A口和B口的輸入輸出數(shù)據(jù)都被鎖存。
方式2(雙向總線方式):
這種方式下,A口為8位雙向總線口,C口的PC3~PC7用來(lái)作為輸入/輸出操作的控制和同步信號(hào);B口和C口的PC0~PC2則可編程為方式0或方式1工作。
    (4)8255A與CPU 8031的接口
8255A與CPU 8031的接口連線如圖2.10所示。
圖2.10 8255A與CPU8031的接線圖
8255A與單片機(jī)間有3組連線:D7~D8根數(shù)據(jù)線依次與P0口的P0.7~P0.0一一對(duì)應(yīng)連接:RD、WR、RESET等3根控制線與單片機(jī)的同名引腳互連;片選端CS則與P2口相連;A1、A0兩根地址線與單片機(jī)的兩個(gè)I/O引腳連接。
    2.4.2  存儲(chǔ)功能擴(kuò)展
由于我們需要保存一定的數(shù)據(jù),而8031片內(nèi)沒(méi)有程序存儲(chǔ)功能,因此,EA管腳總是接低電平。根據(jù)保存的數(shù)據(jù)量需要,我們選用了EPROM 2764為外擴(kuò)的數(shù)據(jù)存儲(chǔ)器。
(1)態(tài)緩沖輸出的8D鎖存器,由于單片機(jī)的三總線結(jié)構(gòu)中,數(shù)據(jù)線與地址線的低8位共用P0口,因此必須用地址鎖存器將地址信號(hào)和數(shù)據(jù)信號(hào)區(qū)分開(kāi)。74LS373的鎖存控制端直接與單片機(jī)的鎖存控制信號(hào)ALE相連,在ALE的下降沿鎖存低8位地址。其中,D0~D7為數(shù)據(jù)輸入端;Q0~Q7為數(shù)據(jù)輸出端;OE為三態(tài)允許控制端(低電平有效);LE為鎖存允許端。
圖2.11  74LS373 引腳
該片如何工作由功能表2.4決定,表中L為低電平、H為高電平、Z為高阻抗(相當(dāng)開(kāi)路)X為任意電平,一般將OE接低電平,LE接ALE就能正常工作。
表2.4  74LS373真值表
   
LE
   
Dn
   
Qn
L
   
H
   
H
   
H
L
   
H
   
L
   
L
L
   
L
   
L
   
L
L
   
L
   
H
   
H
H
   
X
   
X
   
Z
   
    (2)2764 EPROM紫外線擦除電可編程只讀存儲(chǔ)器EPROM是國(guó)內(nèi)用得較多的程序存儲(chǔ)器。EPROM芯片上有一個(gè)玻璃窗口,在紫外線照射下,存儲(chǔ)器中的各位信息均變1,即處于擦除狀態(tài)。擦除干凈的EPROM可以通過(guò)編程器將應(yīng)用程序固化到芯片中。本次設(shè)計(jì)所選用的是2764 EPROM。
    ①2764的概述
這是一種可以擦去重寫(xiě)的只讀存儲(chǔ)器。通常用紫外線對(duì)其窗口進(jìn)行照射,即可把它所存儲(chǔ)的內(nèi)容擦去。之后,又可以對(duì)其重新進(jìn)行編程,寫(xiě)入新的內(nèi)容。一旦寫(xiě)入,其存儲(chǔ)的內(nèi)容可以長(zhǎng)期(幾十年)地保存,即使去掉電源電壓,也不會(huì)影響它所存儲(chǔ)的內(nèi)容。圖2.11為通用的EPROM 2764的引腳圖,它的容量為8 K×8bit。8 K表示有8×1024個(gè)存儲(chǔ)單元,8位表示每個(gè)單元存儲(chǔ)數(shù)據(jù)的寬度是8位。前者確定了地址線的位數(shù)是12位(A0~A12),后者確定了數(shù)據(jù)線的位數(shù)是8位(D0~D7)。目前,除了串行存儲(chǔ)器之外,一般情況下,我們使用的都是8位數(shù)據(jù)存儲(chǔ)器。單一+5 V供電,工作電流為75 mA,維持電流為35 mA,讀出時(shí)間最大為250 ns,DIP28封裝。



   
圖2.12 2764引腳圖
②引腳功能
其中,A0~A12為地址線;D0~D7為數(shù)據(jù)線; 為片選線;是讀線;是編程輸入;Vpp為編程電源。
除了12條地址線和8條數(shù)據(jù)線之外, 為片選線,低電平有效。也就是說(shuō),只有當(dāng)為低電平時(shí),2764才被選中,否則,2764不工作。  
    ③EPROM 2764和鎖存器74LS373與8031組成最小系統(tǒng)
8031單片機(jī)擴(kuò)展一片2764程序存儲(chǔ)器電路如圖2.12所示。
1地址線。單片機(jī)擴(kuò)展片外存儲(chǔ)器時(shí),地址是由P0和P2口提供的。圖2.12中,2764的13條地址線(A0~A12)中,低8位A0~A7通過(guò)鎖存器74LS373與P0口連接,高4位A8~A12直接與P2口的P2.0~P2.3連接,P2口本身有鎖存功能。注意,鎖存器的鎖存使能端LE必須和單片機(jī)的ALE管腳相連。



   
圖2.13  8031擴(kuò)展2764 EPROM硬件接線圖
2數(shù)據(jù)線。2764的8位數(shù)據(jù)線直接與單片機(jī)的P0口相連。因此,P0口是一個(gè)分時(shí)復(fù)用的地址/數(shù)據(jù)線。
3控制線。CPU執(zhí)行2764中存放的程序指令時(shí),取指階段就是對(duì)2764行讀操作。注意,CPU對(duì)EPROM只能進(jìn)行讀操作,不能進(jìn)行寫(xiě)操作。CPU對(duì)2764的讀操作控制都是通過(guò)控制線實(shí)現(xiàn)的。2764控制線的連接有以下幾條:
CE:直接P2.5。
OE:接8031的讀選通信號(hào)端。在訪問(wèn)片外程序存儲(chǔ)器時(shí),只要端出現(xiàn)負(fù)脈沖,即可從2764中讀出程序。
第2.5節(jié)  輸入/輸出接口系統(tǒng)設(shè)計(jì)
輸入/輸出接口系統(tǒng)就是指人與計(jì)算機(jī)之間建立聯(lián)系、交換信息的輸入/輸出設(shè)備接口,就是人機(jī)交互接口。這些輸入/輸出設(shè)備主要有鍵盤(pán)和顯示器等。它們是系統(tǒng)中必不可少的輸入、輸出設(shè)備,是控制系統(tǒng)與操作人員之間交互的窗口。
2.5.1  鍵盤(pán)系統(tǒng)設(shè)計(jì)
鍵盤(pán)是若干按鍵的集合,是向系統(tǒng)提供操作人員干預(yù)命令及數(shù)據(jù)的接口設(shè)備。鍵盤(pán)可以分為編碼鍵盤(pán)和非編碼鍵盤(pán)兩種類(lèi)型。前者能自動(dòng)識(shí)別按下的按鍵并且能產(chǎn)生相應(yīng)的代碼,以并行或串行的方式發(fā)送給CPU。它使用方便,接口簡(jiǎn)單,響應(yīng)速度快,但是需要專(zhuān)用的硬件電路。本次設(shè)計(jì)中所采用的就是編碼鍵盤(pán)。



   
如圖2.3中所示,8255A為給定值輸入接口。為了使系統(tǒng)簡(jiǎn)單,設(shè)計(jì)了一個(gè)由二極管矩陣組成的編碼鍵盤(pán),如圖2.14所示:
圖2.14 編碼鍵盤(pán)原理圖
鍵盤(pán)輸出信號(hào)D,C,B,A(BCD碼)分別接到8255A的A口PA3-PA0,鍵選通信號(hào)KEYSTROBE(高電平有效),經(jīng)反向器接到8031的INT0管腳。當(dāng)按下某一個(gè)按鍵時(shí),KEYSTROBE為高電平,經(jīng)過(guò)反相后的下降沿向8031申請(qǐng)中斷。8031響應(yīng)后,讀入BCD碼值,作為定值,并送顯示。本次設(shè)計(jì)只有3位顯示,所以最多只能給定999。輸入順序?yàn)閺淖罡呶唬ò傥粩?shù))開(kāi)始。
當(dāng)按鍵未按下時(shí),所有輸出端口均為高電平。當(dāng)有按鍵按下以后該按鍵的BCD碼將會(huì)出現(xiàn)在輸出線上。
2.5.2  顯示系統(tǒng)設(shè)計(jì)
為了使操作人員及時(shí)掌握生產(chǎn)情況,在一般的微型計(jì)算機(jī)控制系統(tǒng)或者智能儀器當(dāng)中,都配有顯示程序。本次設(shè)計(jì)采用LED數(shù)碼顯示。
(1)LED數(shù)碼管的結(jié)構(gòu)及顯示原理
常用的顯示器件有:①顯示和記錄儀表,②CRT顯示終端,③LED或者LCD顯示器,④大屏幕顯示器。本次設(shè)計(jì)所采用的是LED數(shù)碼管。LED數(shù)碼管具有結(jié)構(gòu)簡(jiǎn)單,體積小,功耗低,響應(yīng)速度快,易于匹配,壽命長(zhǎng),可靠性高等優(yōu)點(diǎn)。
LED數(shù)碼管是由發(fā)光二極管組成,由于材料的不同,可以發(fā)出各種單色光線。發(fā)光二極管可以有多種組成形式,其中7段數(shù)碼管應(yīng)用最多,根據(jù)發(fā)光二極管內(nèi)部的連接方式不同,又有共陰極或共陽(yáng)極兩種形式。如圖2.15所示



   
圖2.15  LED數(shù)碼管結(jié)構(gòu)
    (2)74LS138結(jié)構(gòu)及功能
圖2.16  74LS138結(jié)構(gòu)
A1、A2、A3分別為輸入端,G1為使能端的高電平,0、Y1、Y2、Y3、Y4、Y5、Y6、Y7分別為輸出端。在講38譯碼器的時(shí)候,老師還講了38譯碼器的邏輯真值表,而且,38譯碼器就是根據(jù)邏輯真值表研制出的,如下圖:
圖2.17  74LS138 真值表
注:表中的藍(lán)色區(qū)域?yàn)檩斎胧鼓芏耍S色區(qū)域?yàn)檩斎脒x擇端,綠色區(qū)域表示該譯碼器不工作。其引腳功能為:A、B、C為譯碼地址輸入端;G1為選通端;2A、2B為選通端(低電平有效);Y0~Y7為譯碼輸出端(低電平有效)。
(3) 74LS377結(jié)構(gòu)及功能
簡(jiǎn)單輸出接口通常用74LS377芯片。該芯片是一個(gè)種8D鎖存器,該芯片的引腳排列如下圖所示:
                                圖2.18  74LS377引腳及功能
圖中相關(guān)引腳的功能如下:
D0-D7:8位數(shù)據(jù)端輸入端。
Q0-Q7:8位數(shù)據(jù)輸出端。
G:使能控制端。
CLK:時(shí)鐘信號(hào),上升沿鎖存數(shù)據(jù)。
       表2.5 74LS377真值表
   
CLK
   
D
   
Q
1
   
X
   
X
   
Q
0
   
1
   
1
   
1
0
   
1
   
0
   
0
X
   
0
   
X
   
Q
   
    下圖是利用74LS377進(jìn)行簡(jiǎn)單輸出接口的擴(kuò)展的電路,圖中,由于74LS的G端與P2.7口連接,所以他的地址是:0XXX XXXX XXXX XXXXB。如果把“X”全置1的話,就是0111 1111 1111 1111B即7FFH
  
圖2.19 74LS377輸出接口的擴(kuò)展電路
   
    由于51的與74LS的CLK端相連,當(dāng)信號(hào)由低電平變高時(shí),數(shù)據(jù)總線上的數(shù)據(jù)證實(shí)輸出的數(shù)據(jù)。而此時(shí)P2.7也正輸出低電平,有效,因此,數(shù)據(jù)就被鎖存,有關(guān)程序如下:
MOV  DPTR, #7FFH  : 地址
MOV   A,   #DATA  :  DATA為要送出的數(shù)據(jù)
MOV  @DPTR, A      :   P0口數(shù)據(jù)被74LS377鎖存
第2.6節(jié)  條形碼閱讀器設(shè)計(jì)
條形碼閱讀器是傳感器大家族中的成員,它把發(fā)射端和接收端之間光的強(qiáng)弱變化轉(zhuǎn)化為電流的變化以達(dá)到探測(cè)的目的。條形碼閱讀器具有如下特點(diǎn):輸出回路和輸入回路是電隔離的(即電絕緣),體積小、精度高、檢測(cè)距離遠(yuǎn),防水、防腐蝕、防震動(dòng),抗光、電、磁等干擾。所以它可以在冶金、紡織、煙草、造紙、化工、電力、保安等各種行業(yè)得到應(yīng)用。條形碼閱讀器(光電傳感器)利用被檢測(cè)物對(duì)光束的遮擋或反射,由同步回路選通電路,從而檢測(cè)物體有無(wú)。物體不限于金屬,所有能反射光線的物體均可被檢測(cè)。條形碼閱讀器將輸入電流在發(fā)射器上轉(zhuǎn)換為光信號(hào)射出,接收器再根據(jù)接收到的光線的強(qiáng)弱或有無(wú)對(duì)目標(biāo)物體進(jìn)行探測(cè)。工作原理如圖2.20所示。
圖2.20 光電傳感器工作原理
條形碼閱讀器在一般情況下由三部分構(gòu)成,它們分別為發(fā)送器、接收器和檢測(cè)電路。條形碼閱讀器的重要功能是能夠處理光的強(qiáng)度變化,利用光學(xué)元件,在傳播媒介中間使光束發(fā)生變化,利用光束來(lái)反射物體,使光束發(fā)射經(jīng)過(guò)長(zhǎng)距離后瞬間返回。發(fā)射器對(duì)準(zhǔn)目標(biāo)發(fā)射光束,發(fā)射的光束一般來(lái)源于發(fā)光二極管(LED)和激光二極管。光束不間斷地發(fā)射,或者改變脈沖寬度。受脈沖調(diào)制的光束輻射強(qiáng)度在發(fā)射中經(jīng)過(guò)多次選擇,朝著目標(biāo)不間斷地運(yùn)行。接收器由光電二極管或光電三極管組成。在接收器的前面,裝有光學(xué)元件如透鏡和光欄等。在其后面的是檢測(cè)電路,它能濾出有效信號(hào)和應(yīng)用該信號(hào)。此外,條形碼閱讀器的結(jié)構(gòu)元件中還有發(fā)射板和光導(dǎo)纖維。
條形碼閱讀器的種類(lèi)也很多,根據(jù)條形碼閱讀器在檢測(cè)物體時(shí)發(fā)射器所發(fā)出的光線被折回到接收器的途徑的同,可分為漫反射式、鏡反射式、對(duì)射式等。
第2.7節(jié)  電機(jī)控制電路設(shè)計(jì)
為了提高抗干擾能力,系統(tǒng)采用了光電隔離技術(shù)。電機(jī)可以采用多種方法控制,如固態(tài)繼電器(SSR)、可控硅(SCR)及大功率場(chǎng)效應(yīng)管等,本設(shè)計(jì)采用固態(tài)繼電器(SSR)。采用電機(jī)控制是為了提高效率,當(dāng)條形碼確認(rèn)后,由電磁閥帶動(dòng)電機(jī),拉動(dòng)柜門(mén)打開(kāi),代替手工,方便顧客取包。
2.7.1  固態(tài)繼電器介紹
固態(tài)繼電器(Solid State Relay)簡(jiǎn)稱(chēng)SSR,它是用晶體管或可控硅代替常規(guī)繼電器的觸點(diǎn)開(kāi)關(guān),而在前級(jí)中與光電隔離器融為一體,因此固態(tài)繼電器實(shí)際上是一種帶光電隔離器的無(wú)觸點(diǎn)開(kāi)關(guān)。根據(jù)結(jié)構(gòu)形式,固態(tài)繼電器有直流型固態(tài)繼電器和交流型固態(tài)繼電器。本設(shè)計(jì)采用的是交流型固態(tài)繼電器。
(1)直流型SSR。
直流型SSR的原理電路如圖2.21所示:
圖2.21  直流型SSR的原理電路
直流型SSR主要用于帶直流負(fù)載的場(chǎng)合,如直流電機(jī)控制。直流步進(jìn)電機(jī)控制和電磁閥等。
(2)交流型SSR。
交流型SSR又可分為過(guò)零型和移向型兩類(lèi)。它采用雙向可控硅作為開(kāi)關(guān)器件,用于交流大功率場(chǎng)合,如交流電機(jī)、交流電磁閥控制等。其原理電路,如圖2.21所示。
圖2.22  交流型SSR的原理電路
過(guò)零型必須在負(fù)載電源電壓接近零且輸入控制信號(hào)有效時(shí)。輸入端負(fù)載電源才導(dǎo)通,只在流過(guò)雙向可控硅負(fù)載電流為零時(shí)才關(guān)斷。
2.7.2  電機(jī)控制電路原理
    電機(jī)控制電路如圖2.23所示:
圖2.23  電機(jī)控制電路
第2.8節(jié)  電源
除了220V的電源,我們還選擇了LM7805三端穩(wěn)壓器產(chǎn)生一個(gè)+5V的電源。其電路如圖2.24所示。
圖2.24  +5V電源電路
三端固定輸出集成穩(wěn)壓器,它是一種串連調(diào)整式穩(wěn)壓器。它將全部電路集成在單塊硅片上,整個(gè)集成穩(wěn)壓電路只有輸入、輸出和公共三個(gè)引出端,使用非常方便。典型的有78××正電壓輸出系列,79××負(fù)電壓輸出系列。
當(dāng)輸入的電壓VI、輸出電流IO或溫度變化時(shí),輸出電壓VO可保持不變;另外,當(dāng)輸出短路。可使輸出電流IO限制為一定值;若穩(wěn)壓器過(guò)熱,則它就停止工作,以免穩(wěn)壓器遭到損壞。
三端固定輸出電壓集成穩(wěn)壓器,因內(nèi)部有過(guò)熱、過(guò)流保護(hù)電路,因此它的性能優(yōu)
良、可靠性高。有因這種穩(wěn)壓器具有體積小、使用方便、價(jià)格低廉等優(yōu)點(diǎn),所以我們選用了這種芯片。
第3章  系統(tǒng)流程圖
第3.1節(jié)  控制主程序流程圖
根據(jù)硬件設(shè)計(jì)要求,控制主程序流程圖如圖3.1所示。存儲(chǔ)柜通上電以后,單片機(jī)上電,首先進(jìn)行程序的初始化,包括定時(shí)器,外部中斷等初始化,以及各參數(shù)初始值的設(shè)定。默認(rèn)存儲(chǔ)柜為初始狀態(tài),根據(jù)存包指令,掃面計(jì)數(shù)器的存儲(chǔ)包狀態(tài)。然后根據(jù)鍵盤(pán)才做的狀態(tài)。確定強(qiáng)度確定存儲(chǔ)狀態(tài)。用數(shù)碼管顯示存儲(chǔ)柜號(hào)和密碼。當(dāng)啟動(dòng)鍵按下以后,存儲(chǔ)柜進(jìn)入待命狀態(tài),完成存包——取密——掃描——取包的循環(huán)過(guò)程。當(dāng)存儲(chǔ)出現(xiàn)錯(cuò)誤,發(fā)出控制蜂鳴器發(fā)聲。
                                   
圖3.1  控制主程序流程圖
第3.2節(jié)  顯示子程序程圖
    子程序的顯示,顯示緩沖區(qū)的首地址并指向最左邊的一位,8255A口地址。當(dāng)存包時(shí),輸出一密碼條,取出顯示的條碼。取包的時(shí)候,在掃描口掃描密碼條,等待顯示的數(shù)據(jù),送顯示碼到8255A。進(jìn)行密碼核對(duì)并執(zhí)行開(kāi)柜或者密碼錯(cuò)誤返回重新執(zhí)行掃描。



   
圖3.2  子程序流程圖
第3.3節(jié)  輸入給定值中斷服務(wù)程序
工作過(guò)程中所需的各種計(jì)時(shí)均有定時(shí)器0定時(shí)中斷服務(wù)程序提供。單片機(jī)晶振頻率12MHZ,定時(shí)器0選擇工作方式1,設(shè)置時(shí)間常數(shù),每0,1秒中斷一次。中斷處理流程如下:



   
圖3.3  中斷服務(wù)程序
結(jié)    論
為期一學(xué)期的畢業(yè)設(shè)計(jì)結(jié)束了,在這短短的幾個(gè)月當(dāng)中,我們不僅鞏固了以前學(xué)到的專(zhuān)業(yè)知識(shí),更重要的是我們學(xué)到了許多新知識(shí),學(xué)會(huì)了設(shè)計(jì)一個(gè)系統(tǒng)的步驟、方法和設(shè)計(jì)思想,還學(xué)到了作為一個(gè)設(shè)計(jì)人員應(yīng)該具備的素質(zhì)。
在畢業(yè)設(shè)計(jì)之初,我們首先拿到了畢業(yè)設(shè)計(jì)的題目《自動(dòng)存包控制系統(tǒng)設(shè)計(jì)》,從中我們知道了這次設(shè)計(jì)的目的、要求以及要完成的工作。開(kāi)題之后我們進(jìn)入了資料檢索階段,通過(guò)在網(wǎng)上及圖書(shū)館查找資料,了解了自動(dòng)存包控制系統(tǒng)的發(fā)展?fàn)顩r以及現(xiàn)狀,從中得到了許多對(duì)我們?cè)O(shè)計(jì)有用的東西,并最終確定一套方案。
我們的方案是利用單片機(jī)來(lái)實(shí)現(xiàn)的,所以翻閱了大量的單片機(jī)書(shū)籍。我們以前的學(xué)習(xí)是圍繞MCS—51系列的單片機(jī),故在我們的系統(tǒng)中我們選擇了8031為CPU。我們?cè)趫D書(shū)館和和網(wǎng)站上查到了好多的單片機(jī)和傳感器方面的知識(shí),這對(duì)我們的設(shè)計(jì)是很有必要的,它也會(huì)對(duì)我們以后的工作有很大的幫助。
設(shè)計(jì)總是在不斷的改進(jìn)和完善中完成的,每一個(gè)器件的選擇都要有很多的考慮。我們?cè)谠O(shè)計(jì)中不斷的更換新的器件和設(shè)計(jì)方法,最后做成了本次設(shè)計(jì)。基本實(shí)現(xiàn)了畢業(yè)設(shè)計(jì)任務(wù)書(shū)中的要求
在設(shè)計(jì)中我們盡量做到完善。但在這次畢業(yè)設(shè)計(jì)中還存在很多不能令人滿意的地方,這些地方也暴露了我們?cè)谝郧皩W(xué)習(xí)過(guò)程中的疏漏之處。我一定會(huì)在以后的工作中逐步的改正。
附    錄
程序
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INT0
LED1                           EQU  22H              ;
IED2                            EQU  23H             ;
LED3                           EQU  24H             ;
BOX1                           EQU  25H             ;
BOX2                           EQU  26H             ;
BOX3                           EQU  27H             ;
BOXES                          EQU  28H             ;
PARTS:                        EQU  2BH             ;
PRECNT                         EQU  2EH             ;
LEDADD1                       EQU   8400H          ;
LEDADD2                       EQU   8800H          ;
LEDADD3                       EQU   8C00H          ;
BUFF                           EQU   2FH            ;
                                ORG    0100H  
MAIN:                         MOV         SP, #50H  
MOV         R0, #22H
MOV         A,  #00H
MOV         R1, #0DH
CLRZERO:                     MOV         @R0, A     ;
INC          R0
DJNZ       R1,CLRZERO
MOV         20H, #00H     ;
MOV         21H, #00H
MOV      DPTR, #8003H     ;
MOV         A,    #98H  
MOVX      @DPTR ,  A
SETB      IT0                ;
SETB           EX0          ;
SETB          EA ;
MOV        R0,#BOXES
MOV    DPTR, #LEDADD1   ;
PUSH    DPH
PUSH    DOL
MOV     DPTR,  #8002H
WAIT:                         MOV       A,  PRECNT    ;
                                CJNE     A,  #06H, WAIT   ;
WORK:                       SETB      00H            ;
SETB      03H        ;
MOV    A, 20H        ;
MOV      DPTR, #8002H
MOVX   @DPTR, A
LOOP1:                        MOVX   A,    @DPTR
JNB      ACC.7,  LOOP1  ;
MOV     LED1,  #00H    ;
MOV     LED2,  #00H
MOV     LED3,  #00H
LCALL    DISPLAY        ;
CLR       00H            ;
SETB      01H         ;
MOV       A,20H     ;
MOV      DPTR, #8002H
MOVX    @DPTR , A
LOOP2:                        MOV    DPTR, #8002H
MOVX     A,@DPTR
JNB      ACC.6, LOOP2   ;
JNB      ACC.4,  STOP   ;
LCALL   PARTADD1      
  ; LCALL   DISPLAY          ;
LCALL   PARTCOMP        ;
JB       08H,STOPM        ;
AJMP     LOOP2         ;
STOPM:                       LCALL   BOXADD1        ;
LCALL   BOXCOMP       ;
JB       09H,  FINISH  ;
LJMP     WORK       ;
FINISH:                        CLR      00H    ;
CLR      01H
MOV    A, 20H
MOVX   @DPTR, A
MOV     BOX1,  #00H
MOV     BOX2,  #00H
MOV     BOX3,  #00H
LOOP3 MOV                    DPTR,#8002H           ;
MOVX   A, @DPTR
JB      ACC.5, LOOP3
LJMP   WORK          ;
STOP:
CLR         00H        ;
CLR         01H
MOV      A,  20H
MOVX     @DPTR,A
LJMP      MAIN         ;
INTO:                         MOV   @DPTR, #8000H      ;
MOVX     A,@DPTR
MOV     @RO,  A
MOV   DPTR, #8001H        ;
MOVX    @DPTR, A
POP         DPL             ;
POP         DPH            
MOVX     @DPTR, A       ;
MOV         A ,DPH
ADD        A  , #04H    ;
MOV        DPH,   A
PUSH        DPH       ;
PUSH        DPL
INC          R0          ;
INC      PRECNT        ;
REST
DISPLAY:                      MOV    A,LED1            ;
MOV   DPTR,#SEGTBL
MOVC   A,@A+DPTR        ;
MOV    DPTR, #8001H      ;
MOVX    @DPTR,A
MOV   DPTR,#LEDADD1     ;
MOVX   @DPTR,A
MOV      A, LED2          ;
MOV    DPTR,#SEGTBL
MOVC  A,@A+DPTR
MOV     DPTR,  A
MOVX  @DPTR,A
MOV    DPTR,#LEDADD2    ;
MOVX    @DPTR, A
MOV     A, LED3           ;
MOV   DPTR#SEGTBL
MOVC   A,A+DPTR
MOV   DPTR,8001H
MOVX   @DPTR,A
MOV   DPTR, #LEDADD3    ;
MOVX  @DPTR, A
RET
SEGTBL  DB    3FH,06H, 5BH, 4FH, 66H,6DH,7DH,07H,7FH,67H
PARTADD1:                    MOV   R0, #LED3   ;
MOV     A,@R0
ADD       A, 01H
DA        A
JB         24H,ADD2
RET
ADD2:                        CLR       24H
DEC       R0
MOV       A, @R0
ADD       A, #01H
DA      A
JB      1CH,ADD3
RET
ADD3:                         CLR     1CH
DEC      R0
MOV     A,@R0
ADD     A,#01H
DA       A
JB        14H,ADD4
RET
ADD4:                         CLR      14H
MOV     R0,#00H
RET
PARTCOMP:                    MOV     R0,#PARTS        ;
MOV     R1,#LED1        ;
MOV     R2,#03H
COMP1:                       MOV     A, @R0
MOV     BUFF,@R1
CJNE     A,CUFF,COMP2
INC        R0
INC        R1
DINZ       R2, COMP1
SETB       08H          ;
RET
COMP3:                       CLR       08H
RET
COMP2:                       JNC        COMP3
LJMP       ALARM
BOXCOMP:       RET
BOXADD1:       RET
ALARM:                       SETB        02H
CLR         00H
CLR         01H
CLR         03H
MOV         A, 20H
MOV       DPTR,#8002H
MOVX    @DPTR, A
LJMP      MAIN
參考文獻(xiàn)
[1]劉德?tīng)I(yíng),張志霞,李志偉.單片機(jī)原理及接口技術(shù)[M].北京: 中國(guó)水利水電出版社,2006.1~54,90~121.
[2]潘新民,王燕芳.微型計(jì)算機(jī)控制技術(shù)[M].北京:電子工業(yè)出版社,2003.71~99,360~364.
[3]宋浩,田豐.單片機(jī)原理及應(yīng)用[M].北京:清華大學(xué)出版社,2005.1~39,134~179.
[4]薛棟梁.MCS-51/151/251單片機(jī)原理與應(yīng)用[M].北京:中國(guó)水利水電出版社,2001,111~112,125~126.
[5]薛棟梁.MCS-51/151/251單片機(jī)原理與應(yīng)用[M].北京:中國(guó)水利水電出版社,2001,1~5,254~261.
[6]王路茜.電子設(shè)計(jì)技術(shù)[J]. 維普中文期刊.2006年02期.
[7]方佩敏.新編傳感器原理•應(yīng)用•電路詳解[J].北京:電子工業(yè)出版社,1994,112~117.
[8]何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2002,97~104,149~156.
[9]姜德譚,范茂軍.新編電子電路大全[M].北京:計(jì)量出版社,1985. 90~121.
[10]丁元杰.單片微機(jī)原理及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2003,40~77.
[11]何立民.單片機(jī)應(yīng)用技術(shù)選編[M].北京:北京航空航天大學(xué)出版社.1997.10.
[12]李廣第.單片機(jī)基礎(chǔ)[M].北京:北京航空航天大學(xué),1999.90~148.
[13]Adel S.Sedra and Kenneth.Smith[M]:Microelectronic Circuits,4rd ed,Oxford University Press.Inc,1998.20~58.
[14]Adel S.Sedra and Kenneth.Smith[M]:Microelectronic Circuits,4rd ed,Oxford University Press.Inc,1998.31~98.
[15]P.R.Gray and R.G.Meyer,Analysis and Design of Analog Integrated circuits 3rd Edition,John Wiley&Sons,New York,1993. 97~104.
致    謝
緊張、充實(shí)而又難忘的大學(xué)學(xué)習(xí)生涯即將結(jié)束,在大學(xué)四年和撰寫(xiě)論文期間得到了許多人的幫助,使我終身難以忘懷。在這里我首先要感謝這四年來(lái)為我授課的各位老師,真心地說(shuō)一句:你們辛苦了!感謝魯小利老師在我的論文選題、定稿以及中期檢查等方面都給了我精心的指導(dǎo)。您提出的寶貴意見(jiàn)使我在論文選題、撰寫(xiě)以及修改的過(guò)程中,不再像當(dāng)初那樣茫然無(wú)措,而是知道自己論文的不足和修改的方向。您正直、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度對(duì)我影響頗深,受益匪淺,無(wú)論在今后的學(xué)習(xí)還是工作當(dāng)中,我都銘記于心。
最后,感謝電子信息工程系和同組的各位同學(xué)以及所有支持我關(guān)心我的人。在你們的幫助和協(xié)助下共同完成了本次設(shè)計(jì)。謝謝你們!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表