自動(dòng)加料機(jī)控制系統(tǒng)資料
自動(dòng)加料機(jī)控制系統(tǒng)資料,自動(dòng),加料,控制系統(tǒng),資料
目 錄
第一章 緒 論 1
1.1 題目來(lái)源及課題意義 1
1.2 自動(dòng)加料機(jī)控制系統(tǒng)的工作原理及技術(shù)要求 1
1.3 系統(tǒng)的主要技術(shù)參數(shù): 1
第二章 方案論證 2
2.1 單片機(jī)的選擇 2
2.2 物位傳感器的選擇 3
2.3 存儲(chǔ)器擴(kuò)展電路的選擇 5
2.4 LED顯示電路選擇 7
2.5. 鍵盤輸入電路 8
第三章 自動(dòng)加料機(jī)主電路 10
3.1 系統(tǒng)結(jié)構(gòu)原理圖 11
3.2 主機(jī)電路核心器件介紹 10
3.3 顯示電路 18
3.4 繼電器控制電路 22
3.5 鍵盤及顯示電路 23
3.6 外部存儲(chǔ)器擴(kuò)展電路 27
3.7 看門狗MAX813L電路 30
3.8 料位開(kāi)關(guān) 32
第四章 系統(tǒng)的抗干擾及可靠性 35
第五章 軟件設(shè)計(jì) 36
第六章 結(jié)論語(yǔ) 38
參考文獻(xiàn): 39
附錄A:系統(tǒng)框圖 40
附錄B:系統(tǒng)硬件框圖 41
程序清單: 41
第一章 緒 論
1.1 題目來(lái)源及課題意義
在現(xiàn)代科學(xué)技術(shù)的許多領(lǐng)域中,自動(dòng)控制技術(shù)起這愈來(lái)愈重要的作用,并且,隨著生產(chǎn)和科學(xué)技術(shù)的發(fā)展,自動(dòng)化水平也越來(lái)越高。自動(dòng)控制利用控制裝置使被控對(duì)象的某個(gè)參數(shù)自動(dòng)的按照預(yù)定的規(guī)律運(yùn)行。本設(shè)計(jì)的自動(dòng)加料機(jī)控制系統(tǒng)就是采用自動(dòng)控制技術(shù)來(lái)實(shí)現(xiàn)功能的,這樣就大大提高了工作的效率,整個(gè)過(guò)程又快又穩(wěn)。
1.2 自動(dòng)加料機(jī)控制系統(tǒng)的工作原理及技術(shù)要求
本設(shè)計(jì)的由單片機(jī)控制的自動(dòng)加料系統(tǒng)是與料斗式干燥機(jī)配套的加料系統(tǒng)。根據(jù)加料工藝要求,其工作原理是:先將真空管關(guān)閉,啟動(dòng)電機(jī),用低真空氣流將塑料樹(shù)脂粒子送入真空管,電機(jī)停轉(zhuǎn),再將粒子排入料斗,如此循環(huán)。
在設(shè)計(jì)的控制系統(tǒng)中,可用一個(gè)電機(jī)控制兩個(gè)加料生產(chǎn)線,由方向閥切換。兩個(gè)生產(chǎn)線既可單獨(dú)運(yùn)行,也可同時(shí)運(yùn)行。假如兩者同時(shí)運(yùn)行,當(dāng)一生產(chǎn)線輸送結(jié)束后,判斷到另一個(gè)生產(chǎn)線排料已經(jīng)結(jié)束,那么,電機(jī)不停轉(zhuǎn)而方向閥換向,從而為另一個(gè)生產(chǎn)線送料。這樣可以發(fā)揮控制系統(tǒng)和電機(jī)的效率,從而實(shí)現(xiàn)供料自動(dòng)化。
控制系統(tǒng)的控制器有單片機(jī)89C51和擴(kuò)展電路組成,單片機(jī)控制繼電器,繼電器控制交流接觸器,又由接觸器控制電機(jī)等執(zhí)行機(jī)構(gòu)的運(yùn)動(dòng)。本控制系統(tǒng)可以根據(jù)送料工藝的需要,設(shè)置兩條生產(chǎn)線的輸送、排料、滿料、空料等參數(shù)值,也可裝載系統(tǒng)前次工藝參數(shù)值。
1.3 系統(tǒng)的主要技術(shù)參數(shù):
(1) 用一臺(tái)電機(jī)控制兩條生產(chǎn)線
(2) 要能檢測(cè)到滿料狀態(tài),并顯示出輸送、排料、滿料時(shí)間
(3) 時(shí)間誤差:0.1秒
(4) 具有抗干擾能力
第二章 方案論證
2.1 單片機(jī)的選擇
20世紀(jì)80年代以來(lái),單片機(jī)的發(fā)展非常迅速,就通用單片機(jī)而言,世界上一些著名的計(jì)算機(jī)廠家已投放市場(chǎng)的產(chǎn)品就有50多個(gè)系列,數(shù)百個(gè)品種。目前世界上較為著名的8位單片機(jī)的生產(chǎn)廠家和主要機(jī)型如下:
美國(guó)Intel公司:MCS—51系列及其增強(qiáng)型系列
美國(guó)Motorola公司:6801系列和6805系列
美國(guó)Atmel公司:89C51等單片機(jī)
美國(guó)Zilog公司:Z8系列及SUPER8
美國(guó)Fairchild公司:F8系列和3870系列
美國(guó)Rockwell公司:6500/1系列
美國(guó)TI(德克薩司儀器儀表)公司:TMS7000系列
NS(美國(guó)國(guó)家半導(dǎo)體)公司:NS8070系列 等等。
盡管單片機(jī)的品種很多,但是在我國(guó)使用最多的還是Intel公司的MCS—51系列單片機(jī)和美國(guó)Atmel公司的89C51單片機(jī)
MCS—51系列單片機(jī)包括三個(gè)基本型8031、8051、8751
8031內(nèi)部包括一個(gè)8位CPU、128個(gè)字節(jié)RAM,21個(gè)特殊功能寄存器(SFR)、4個(gè)8位并行I/O口、1個(gè)全雙工串行口、2個(gè)16位定時(shí)器/計(jì)數(shù)器,但片內(nèi)無(wú)程序存儲(chǔ)器,需外擴(kuò)EPROM芯片。比較麻煩,不予采用
8051是在8031的基礎(chǔ)上,片內(nèi)集成有4K ROM,作為程序存儲(chǔ)器,是一個(gè)程序不超過(guò)4K字節(jié)的小系統(tǒng)。ROM內(nèi)的程序是公司制作芯片時(shí),代為用戶燒制的,出廠的8051都是含有特殊用途的單片機(jī)。所以8051適合與應(yīng)用在程序已定,且批量大的單片機(jī)產(chǎn)品中。也不予采用。
8751是在8031基礎(chǔ)上,增加了4K字節(jié)的EPROM,它構(gòu)成了一個(gè)程序小于4KB的小系統(tǒng)。用戶可以將程序固化在EPROM中,可以反復(fù)修改程序。但其價(jià)格相對(duì)8031較貴。8031外擴(kuò)一片4KB EPROM的就相當(dāng)與8751,它的最大優(yōu)點(diǎn)是價(jià)格低。隨著大規(guī)模集成電路技術(shù)的不斷發(fā)展,能裝入片內(nèi)的外圍接口電路也可以是大規(guī)模的。也不予采用。
AT89C51是美國(guó)ATMEL公司生產(chǎn)的低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含4K bytes的可反復(fù)擦寫的只讀程序存儲(chǔ)器(PEROM)和128bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(ROM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲(chǔ)單元。功能強(qiáng)大AT89C51單片機(jī)可提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。此設(shè)計(jì)就采用AT89C51。
2.2 物位傳感器的選擇
物位是指貯存容器或工業(yè)生產(chǎn)設(shè)備里的液體、粉粒壯固體、氣體之間的分界面位置,也可以是互不相溶的兩種液體間由于密度不等而形成的界面位置。根據(jù)具體用途分為液位、料位、界位傳感器或變送器。物位不僅是物料耗量或產(chǎn)量計(jì)量的參數(shù),也是保證連續(xù)生產(chǎn)和設(shè)備安全的重要參數(shù)。特別是在現(xiàn)代工業(yè)中,生產(chǎn)規(guī)模大,速度高,且常有高溫、高壓、強(qiáng)腐蝕性或易燃易爆物料,對(duì)于物位的監(jiān)視和自動(dòng)控制更是至關(guān)重要。
物位測(cè)量可用于計(jì)算物料儲(chǔ)量。對(duì)于粉粒體,必須考慮到顆粒間有空隙,應(yīng)區(qū)分密度和容重。密度是指不含空隙的物料每單位體積的質(zhì)量,即通常的質(zhì)量密度,如果乘以重力加速度g,就成為重力密度r,簡(jiǎn)稱為重度。容重是包含空隙在內(nèi)的每單位體積的重量v,也就是視在重度或宏觀重度,它總要比顆粒物質(zhì)本身的重度小,其差額決定于空隙率。而空隙率又取決與許多因素。例如顆粒形狀、尺寸的一致程度、是否受外力壓實(shí)、是否經(jīng)受過(guò)振動(dòng)、有無(wú)黏結(jié)性等,所以粉粒體物料的體積儲(chǔ)量和質(zhì)量?jī)?chǔ)量之間不易精確換算,這是需要注意的。
2.2.1 電容式物位傳感器
利用物料介電常數(shù)恒定時(shí)極間電容正比與物位的原理,可構(gòu)成電容式物位傳感器。
根據(jù)電機(jī)的結(jié)構(gòu)可將容式物位傳感器分為三中:(1)適用與導(dǎo)電容器中的絕緣性物料,且容器為立式圓筒形,器壁為一極,沿軸線插入金屬棒為另一極,其間構(gòu)成的電容C與物位成比例。也可懸掛帶重錘的軟導(dǎo)線作為電機(jī)。(2)適用與非金屬容器,或雖為金屬容器但非立式圓筒形,物料為絕緣性的。這時(shí)在棒壯電極周圍用絕緣支架套裝金屬筒,筒上下開(kāi)口,或整體上均勻分布多個(gè)孔,使內(nèi)外物位相同。中央圓棒和與之同軸的套筒構(gòu)成兩個(gè)電極,其間電容和容器形狀無(wú)關(guān),只取決于物位。所以這種電極只用于液位,粉粒體容易滯留在極間。(3)用于導(dǎo)電性物料,起外形和(1)一樣,但中央圓棒電極上包有絕緣材料,電容是由絕緣材料的介電常數(shù)和物位決定的,與物料的介電常數(shù)無(wú)關(guān),導(dǎo)電物料使筒壁與中央電極間的距離縮短為絕緣層的厚度,物位升降相當(dāng)于電極面積改變。
電容式物位傳感器無(wú)可動(dòng)部件,與物料密度無(wú)關(guān),但應(yīng)注意物料中含水分時(shí)將對(duì)測(cè)量結(jié)果影響很大,并且要求物料的介電常數(shù)與空氣介電常數(shù)差別大,需用高頻電路。所以不予采用。
2.2.2 阻力式料位傳感器
阻力式料位傳感器是指物料對(duì)機(jī)械運(yùn)動(dòng)所呈現(xiàn)的阻擋力。粉末顆粒狀物料比液態(tài)物質(zhì)流動(dòng)性差,對(duì)運(yùn)動(dòng)物體有明顯的阻力,利用這一特點(diǎn)可構(gòu)成各種料位傳感器。
(1)重錘探索法:在容器頂部安裝由脈沖分配器控制的步進(jìn)電機(jī),此電機(jī)正轉(zhuǎn)時(shí)緩緩釋放懸有重錘的鋼索。重錘下降到與料面接觸后,鋼索受到的合力突然減小,促使力傳感器發(fā)出脈沖。此脈沖改變門電路的狀態(tài),使步進(jìn)電機(jī)改變轉(zhuǎn)向重錘提升,同時(shí)開(kāi)始脈沖計(jì)數(shù)。待重錘升至頂部觸及行程開(kāi)關(guān),步進(jìn)電機(jī)停止轉(zhuǎn)動(dòng),同時(shí)計(jì)數(shù)器也停止計(jì)數(shù)并顯示料位(料位值即容器全高減去重錘行程之差)。顯示值一直保持到下次探索后刷新為另一值。開(kāi)始探索的觸發(fā)信號(hào)可由定時(shí)電路周期性地供給,也可以人為地啟動(dòng)。不進(jìn)行探索時(shí),重錘保持在容器頂部,以免物料將重錘淹埋。萬(wàn)一重錘被物位埋沒(méi),排放物料時(shí)產(chǎn)生的強(qiáng)大拉力就可能拉斷鋼索報(bào)警措施及出料過(guò)濾柵。
但這種方法運(yùn)用了邏輯電路和數(shù)字技術(shù),可連續(xù)測(cè)量料位值并輸出數(shù)字量,是數(shù)字傳感器,但其采樣是周期性的,對(duì)時(shí)間而言不連續(xù),此設(shè)計(jì)不予采用。
(2)旋槳或推板法:這是一種位式傳感器,或稱料位開(kāi)關(guān)。在容器壁的某一高度處裝小功率電動(dòng)機(jī),其軸伸入容器內(nèi),末端帶有槳狀葉片。葉片不接觸物料時(shí),自由旋轉(zhuǎn)的空載狀態(tài)下電動(dòng)機(jī)的電流很小,一旦料位上升到與葉片接觸,轉(zhuǎn)動(dòng)阻力增加,甚至成堵轉(zhuǎn)狀態(tài),電流顯著加大。根據(jù)電流的大小使繼電器的接點(diǎn)動(dòng)作,發(fā)出料位報(bào)警或位式控制信號(hào)。如電機(jī)軸經(jīng)過(guò)曲柄連桿機(jī)構(gòu)變?yōu)橥鶑?fù)運(yùn)動(dòng),則可帶動(dòng)活塞或平板在容器中做推拉動(dòng)作,即成推板法。旋槳法或推板法不一定都是靠電機(jī)電流的大小時(shí)繼電器接點(diǎn)動(dòng)作,也可以利用離合器或連桿上的傳動(dòng)機(jī)構(gòu),在葉片或推板負(fù)載增大時(shí)改變電接點(diǎn)的通斷狀態(tài)。所用電動(dòng)機(jī)應(yīng)能在長(zhǎng)時(shí)間堵轉(zhuǎn)狀態(tài)下,或離合器打滑狀態(tài)下,不致過(guò)熱而損壞。
這類原理構(gòu)成的料位開(kāi)關(guān),只能安裝在容器壁上,安裝高度取決于動(dòng)作所對(duì)應(yīng)的料位值。應(yīng)用不那么廣泛,所以次設(shè)計(jì)也不予采用。
(3)音叉法:根據(jù)物料對(duì)振動(dòng)中的音叉有無(wú)阻力探知料位是否到達(dá)或超過(guò)某高度,并發(fā)出通斷信號(hào),這種原理不需要大幅度的機(jī)械運(yùn)動(dòng),驅(qū)動(dòng)功率小,機(jī)械結(jié)構(gòu)簡(jiǎn)單、靈敏而可靠。
音叉由彈性良好的金屬制成,本身具有確定的固有頻率,如外加交變力的頻率與其固有頻率一致,則叉體處于共振狀態(tài)。由于周圍空氣對(duì)振動(dòng)的阻尼微弱,金屬內(nèi)部的能量損耗又很少,所以只需微小的驅(qū)動(dòng)功率就能維持較強(qiáng)的振動(dòng)。當(dāng)粉粒體物料觸及叉體之后,能量消耗在物料顆粒間的摩擦上,迫使振幅急劇衰減,音叉停振。
為了給音叉提供交變的驅(qū)動(dòng)力,利用放大電路對(duì)壓電元件施加交變電場(chǎng),靠逆壓電效應(yīng)產(chǎn)生機(jī)械力作用在叉體上。用另外一組壓電元件的正壓電效應(yīng)檢測(cè)振動(dòng),它把振動(dòng)力 為微弱的交變電信號(hào)。再由電子放大器和移相電路,把檢振元件的信號(hào)放大。經(jīng)過(guò)移相,施加到驅(qū)動(dòng)元件上去,構(gòu)成閉環(huán)振蕩器。在這個(gè)閉環(huán)中,既有機(jī)械能也有電能,叉體是其中的一個(gè)環(huán)節(jié),倘若受到物料阻尼難以振動(dòng),正反饋的幅值和相位都將明顯的改變,破壞了振蕩條件,就會(huì)停振。只要在放大電路的輸出端接以適當(dāng)?shù)钠骷浑y得到開(kāi)關(guān)信號(hào)。
為了保護(hù)壓電元件免受物料損壞和粉塵污染,將驅(qū)動(dòng)和檢振元件裝在叉體內(nèi)部,經(jīng)過(guò)金屬膜片傳遞振動(dòng)。如果在容器的上下方都裝叉體,可以實(shí)現(xiàn)自動(dòng)進(jìn)料或自動(dòng)出料的邏輯控制,或者把料位越限信號(hào)遠(yuǎn)傳到控制室。在控制室里的控制電路判斷料位是否越限,并按要求使被控的進(jìn)出料設(shè)備啟停。
并且叉體的制造和裝配良好時(shí),音叉也可用于液體測(cè)量和控制。在測(cè)量時(shí)不需要大幅度的機(jī)械運(yùn)動(dòng),驅(qū)動(dòng)功率小,機(jī)械結(jié)構(gòu)簡(jiǎn)單、靈敏而可靠。此設(shè)計(jì)選擇音叉法阻力式料位傳感器。
2.3 存儲(chǔ)器擴(kuò)展電路的選擇
2.3.1 24C01擴(kuò)展:
串行總線上的各單片機(jī)或集成電路模塊,通過(guò)一條數(shù)據(jù)線(SDA)和一條時(shí)鐘線(SCL),按照通信規(guī)約進(jìn)行尋址和信息傳輸。每個(gè)集成電路模塊都有唯—偽地址,既可以是主控機(jī)(能控制總線,并能完成一次傳輸過(guò)程的初始化和產(chǎn)生時(shí)鐘信號(hào)及傳輸終止信號(hào)的器件)或被控機(jī)(被主控器尋址的器件),可以是發(fā)送器(在總線1:發(fā)送信息的器件)或接收器(從總線上接收治息的器件) I2C總線上的器件,根據(jù)它的不同工作狀態(tài),可分為主控發(fā)送器、主控接收器、被控發(fā)送器、被控接收器。當(dāng)多個(gè)主控器同時(shí)企圖控制總線而不丟失信,這叫多主競(jìng)爭(zhēng)。這時(shí)就要進(jìn)行仲裁,仲裁就是針對(duì)這種情況進(jìn)行裁決的過(guò)程。只允許其卞一個(gè)主控器繼續(xù)占用總線,其它退出豐攙器狀態(tài)。仲裁過(guò)程中還要保證總線的信息不丟失。多主競(jìng)爭(zhēng)時(shí)必須對(duì)所有參與競(jìng)爭(zhēng)的主控器的時(shí)鐘信號(hào)進(jìn)行同步處理。信息傳輸時(shí),SCL為高電平期間,SDA上的信息必須保持穩(wěn)定不變,只有SCL為低電平期間,SDA上的信息才允許變化。同時(shí)SDA上信息每一位部和SCL的時(shí)鐘脈沖相對(duì)應(yīng)。SCL沒(méi)有時(shí)鐘信號(hào),SDA信息將停止傳輸處于等待狀態(tài)。這因?yàn)榫€“與”邏輯,使SCL在低電平時(shí)鉗住總線。實(shí)現(xiàn)線“與”邏輯功能各I2C總線接口的輸出端必須是漏極開(kāi)路或集電極開(kāi)路結(jié)構(gòu)。SCL保持高電平期間,SDA由高電平向低電平變化這種狀態(tài)定義為起始信號(hào)。SCL保持高電平期間,SDA由低電平向高電平變化,這種狀態(tài)定義為終止信號(hào)。SDA傳輸?shù)拿總€(gè)字節(jié)必須8位(最高有效位首先傳送),每個(gè)傳送字節(jié)必須跟隨一位應(yīng)答位。與應(yīng)答信號(hào)相應(yīng)的時(shí)鐘信號(hào)由主控器產(chǎn)生,發(fā)送器在這個(gè)時(shí)鐘信號(hào)釋放SDA,使它處于高電平狀態(tài),以便接收由接收器在這位發(fā)出的應(yīng)答信號(hào)。這時(shí)接收器還必須SCL在這位高電平期間,在SDA上輸出一個(gè)恒定低電平信氣以完成應(yīng)答信號(hào)的輸出。整個(gè)傳輸過(guò)程中,傳輸?shù)淖止?jié)數(shù)目是沒(méi)有限制的。數(shù)據(jù)傳輸一段時(shí)間后,接收器無(wú)法繼續(xù)接收更多的數(shù)據(jù),主控器同樣可以終止數(shù)據(jù)的傳送。
24C01是一種128字節(jié)串行CMOS EEPROM,它具有如下特點(diǎn):1.存儲(chǔ)容量為128字節(jié)。2.串行接口可使用普通兩根I/O接口。3.具有頁(yè)寫模式:每頁(yè)4字節(jié)。4.同步周期小于10ms。它只使用一條數(shù)據(jù)線和一條時(shí)鐘線,采用ATMEL公司的24C01串口存儲(chǔ)器,應(yīng)用簡(jiǎn)單方便,但是其編程較為復(fù)雜。
2.3.2 2864A芯片擴(kuò)展:
2864A是一種并行EEPROM,它的特點(diǎn)同上,但每頁(yè)有16字節(jié),2864A與8051單片機(jī)的接口電路如下圖所示,2864A的片選端與高地址線P2.7連接,P2.7=0才能選中2864A,這種線選法決定了2864A對(duì)應(yīng)多組地址空間,即0000H~1FFFH,2000H~3FFFH,4000H~5FFFH,6000H~7FFFH,這8K字節(jié)存儲(chǔ)器可作為數(shù)據(jù)存儲(chǔ)器使用,但掉電后數(shù)據(jù)不丟失。
2864A的四種工作方式:
(1)維持方式:當(dāng)為高電平時(shí),2864A進(jìn)入低功耗維持狀態(tài)。此時(shí),輸出線呈高阻狀態(tài),芯片的電流從140mA下降至維持電流60mA。
(2)讀方式:當(dāng)和均為低電平而為高電平時(shí),內(nèi)部的數(shù)據(jù)緩沖器被打開(kāi),數(shù)據(jù)送上總線,此時(shí),可進(jìn)行讀操作。
(3)寫方式:2864A提供了兩種數(shù)據(jù)寫入方式:頁(yè)寫入和字節(jié)寫入。
頁(yè)寫入:為了提高寫入速度,2864A片內(nèi)設(shè)置了16字節(jié)的“頁(yè)緩沖器”,并將整個(gè)存儲(chǔ)器陣列劃分成512頁(yè),每頁(yè)16個(gè)字節(jié)。頁(yè)的區(qū)分可由地址的高9位(A4~A12)來(lái)確定,地址線的低四位(A0~A3)用以選擇頁(yè)緩沖器中的16個(gè)地址單元之一。對(duì)2864A的寫操作可分為兩步來(lái)實(shí)現(xiàn):第一步,在軟件控制下把數(shù)據(jù)寫入頁(yè)緩沖器,這部稱為頁(yè)裝載,與一般的靜態(tài)RAM寫操作是一樣的。第二步,在最后一個(gè)字節(jié)(即第16個(gè)字節(jié))寫入到頁(yè)緩沖器后20ns自動(dòng)開(kāi)始,把頁(yè)緩沖器的內(nèi)容寫到EEPROM陣列中對(duì)應(yīng)的地址單元中,這一步成為頁(yè)存儲(chǔ)。
寫方式時(shí),為低電平,在下降沿,地址碼A0~A12被片內(nèi)鎖存器鎖存,在上升沿時(shí)數(shù)據(jù)被鎖存片內(nèi)還有一個(gè)字節(jié)裝載限時(shí)定時(shí)器,只要時(shí)間未到,數(shù)據(jù)可以隨機(jī)地寫入頁(yè)緩沖器。在連續(xù)向頁(yè)緩沖器寫入數(shù)據(jù)的過(guò)程中,不用擔(dān)心限時(shí)定時(shí)器會(huì)溢出,因?yàn)槊慨?dāng)下降沿時(shí),限時(shí)定時(shí)器自動(dòng)被復(fù)位并重新啟動(dòng)計(jì)時(shí)。限時(shí)定時(shí)器要求寫入一個(gè)字節(jié)數(shù)據(jù)的操作時(shí)間須滿足;3μS<<20μS,這樣是正確完成對(duì)2864A頁(yè)面寫入操作的關(guān)鍵。當(dāng)一頁(yè)裝載完畢,不再有信號(hào)時(shí),限時(shí)定時(shí)器將溢出,于是頁(yè)存儲(chǔ)操作隨即自動(dòng)開(kāi)始。首先把選中頁(yè)的內(nèi)容擦除,然后寫入的數(shù)據(jù)由頁(yè)緩沖器傳遞到EEPROM陣列中。
字節(jié)寫入:字節(jié)寫入的過(guò)程與頁(yè)寫入的過(guò)程類似,不同之處在于僅寫入一個(gè)字節(jié),限時(shí)定時(shí)器就溢出。
(4)數(shù)據(jù)查詢方式:數(shù)據(jù)查詢是指用軟件來(lái)檢測(cè)寫操作中的頁(yè)存儲(chǔ)周期是否完成。
在頁(yè)存儲(chǔ)期間,如對(duì)2864A執(zhí)行讀操作,那么讀出的是最后寫入的字節(jié),若芯片的轉(zhuǎn)儲(chǔ)工作未完成,則讀出數(shù)據(jù)的最高位是原來(lái)寫入字節(jié)最高位的反碼。據(jù)此,CPU可判斷芯片的編程是否結(jié)束。如果讀出的數(shù)據(jù)與寫入的數(shù)據(jù)相同,表示芯片已完成編程,CPU可繼續(xù)向2864A裝載下一頁(yè)數(shù)據(jù)。并且編程起來(lái)比較簡(jiǎn)單,所以此設(shè)計(jì)采用此方案。
2.4 LED顯示電路選擇
LED顯示器是由N個(gè)LED顯示塊拼接成N位LED顯示器。N個(gè)LED顯示塊有N跟位選線,根據(jù)顯示方式的不同,位選線和段選線的連接方法也各不相同,段選線控制顯示字符的字型,而位選線為各個(gè)LED顯示塊的公共端,它控制該LED顯示位的亮、暗。LED顯示器有靜態(tài)顯示和動(dòng)態(tài)顯示兩種顯示方式。
2.4.1 LED靜態(tài)顯示方式
LED顯示器工作于靜態(tài)顯示方式時(shí),各位的共陰極(或共陽(yáng)極)連接在一起并接地(或+5V);每位的段選線(a~dp)分別與一個(gè)8位的鎖存器輸出相連。所以稱為靜態(tài)顯示。各個(gè)LED的顯示字符一經(jīng)確定,相應(yīng)鎖存器的輸出將維持不變,直到顯示另一個(gè)字符為止。也正因此如此,靜態(tài)顯示器的亮度都較高。這種顯示方式接口編程容易。付出的代價(jià)是占用口線較多,若用I/O接口,則要占用4個(gè)8位I/O口,若用鎖存器接口,則要用4片74LS373芯片。如果顯示器位數(shù)增多,則靜態(tài)顯示方式更是無(wú)法適應(yīng),因此在顯示位數(shù)較多的情況下,一般都采用動(dòng)態(tài)顯示方式。
2.4.2 LED動(dòng)態(tài)顯示方式
在多位LED顯示時(shí),為了簡(jiǎn)化硬件電路,通常將所有位的段選線相應(yīng)的并聯(lián)在一起,有一個(gè)8位I/O口控制,形成段選線的多路復(fù)用。而各位的共陽(yáng)極或共陰極分別由相應(yīng)的I/O線控制,實(shí)現(xiàn)各位的分時(shí)選通。其中段選線占用一個(gè)8位I/O口,而位選線占用一個(gè)4位I/O口。由于各位的段選線并聯(lián),段碼的輸出對(duì)各位來(lái)說(shuō)都是相同的,因此,同一時(shí)刻,如果各位位選線都處于選通狀態(tài)的話,4位LED將顯示相同的字符。若要各位LED能夠顯示出與本位相應(yīng)的顯示字符,就必須采用掃描顯示方式,即在某一時(shí)刻,只讓某一位的位選線狀態(tài),而其他各位的位選線處于關(guān)閉狀態(tài),同時(shí),段選線上輸出相應(yīng)位要顯示字節(jié)的段碼。在確定LED不同位顯示的時(shí)間間隔,不能太短,因?yàn)榘l(fā)光二極管從導(dǎo)通到發(fā)光有一定的延時(shí),導(dǎo)通時(shí)間太短,發(fā)光太弱人眼無(wú)法看清。但也不能太長(zhǎng),因?yàn)楫吘挂芟抻谂R界閃爍頻率,而且此時(shí)間越長(zhǎng),占用CPU時(shí)間也越多,另外,顯示位增多,也將占用大量的CPU時(shí)間,因此動(dòng)態(tài)顯示實(shí)質(zhì)是一犧牲CPU時(shí)間來(lái)?yè)Q取元件的減少。
所以,由于本系統(tǒng)只涉及到2位顯示輸出,就采用了和2片8位移位寄存器串級(jí)使用的LED靜態(tài)顯示方式。
2.5. 鍵盤輸入電路
2.5.1 矩陣式鍵盤接口:
矩陣式鍵盤(也稱行列式鍵盤)適用于按鍵數(shù)目較多的場(chǎng)合,它由行線和列線組成,按鍵位于行列的交點(diǎn)上。一個(gè)3×3的行列結(jié)構(gòu)可以構(gòu)成一個(gè)有9個(gè)按鍵的鍵盤。同理,一個(gè)4×4的行列結(jié)構(gòu)可以構(gòu)成一個(gè)16鍵的鍵盤,很明顯,在按鍵數(shù)量較多的場(chǎng)合,矩陣式鍵盤與獨(dú)立式鍵盤相比,要節(jié)省很多的I/O口線。按鍵設(shè)置在行列線交點(diǎn)上,行列線分別接到按鍵開(kāi)關(guān)兩端。行線通過(guò)上拉電阻接到+5V上。平時(shí)無(wú)按鍵按下時(shí),行線處于高電平狀態(tài),而當(dāng)有按鍵按下時(shí),行線電平狀態(tài)將由于此行線相連的列線電平?jīng)Q定。列線電平如果為低電平,則行線電平為低電平,列線電平如果為高電平,則行線電平為高電平。這是識(shí)別矩陣鍵盤按鍵是否按下的關(guān)鍵所在。由于矩陣鍵盤中行列線為多鍵公用,各按鍵均影響該鍵所在行列的電平。因此各按鍵彼此將相互發(fā)生影響,所以必須將行列信號(hào)配合起來(lái)比做適當(dāng)?shù)奶幚?,才能確定閉合鍵的位置。
2.5.2 獨(dú)立式按鍵接口:
獨(dú)立式按鍵就是各按鍵相互獨(dú)立,每個(gè)按鍵各接入一根輸入線,一根輸入線上的按鍵工作狀態(tài)不會(huì)影響其他輸入線上的工作狀態(tài)。因此,通過(guò)檢測(cè)輸入線的電平狀態(tài)可以很容易判斷哪個(gè)按鍵按下了。獨(dú)立式按鍵電路配置靈活,軟件簡(jiǎn)單。但每個(gè)按鍵需要占用一個(gè)輸入口線,在按鍵數(shù)量較多時(shí),需要較多的輸入口線且電路結(jié)構(gòu)復(fù)雜,故此種鍵盤適用于按鍵較少或操作速度較高的場(chǎng)合。
由于此系統(tǒng)中共有啟動(dòng)兩條生產(chǎn)線的“啟動(dòng)1”鍵和“啟動(dòng)2”鍵、分秒選擇鍵、時(shí)間設(shè)置加、時(shí)間設(shè)置減、顯示生產(chǎn)線狀態(tài)的切換鍵,時(shí)間設(shè)置鍵、時(shí)間切換鍵。只有這8個(gè)鍵,比較簡(jiǎn)單。所以就采用獨(dú)立式按鍵接口電路。
第三章 自動(dòng)加料機(jī)主電路
主電路采用AT89C51,由于AT89C51內(nèi)含4KB容量,因此在設(shè)計(jì)中不需要外擴(kuò)ROM。硬件電路主要有LED顯示電路、鍵盤接受電路、繼電器控制電路、EEPROM外部存儲(chǔ)器擴(kuò)展電路,以及看門狗MAX813L等組成。
3.1 系統(tǒng)結(jié)構(gòu)原理圖
主電路采用AT89C51,由于AT89C51內(nèi)含4KB容量,因此在設(shè)計(jì)中不需要外擴(kuò)ROM。硬件電路主要有LED顯示電路、鍵盤接受電路、繼電器控制電路、EEPROM外部存儲(chǔ)器擴(kuò)展電路,以及看門狗MAX813L等組成。電路原理框圖
如圖所示:
3.2 主機(jī)電路核心器件介紹
AT89C51是美國(guó)ATMEL公司生產(chǎn)的低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含4K bytes的可反復(fù)擦寫的只讀程序存儲(chǔ)器(PEROM)和128bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(ROM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲(chǔ)單元。功能強(qiáng)大AT89C51單片機(jī)可提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。
3.2.1 AT89C51主要性能參數(shù)
.與MCS-51產(chǎn)品指令系統(tǒng)完全兼容
.4K字節(jié)可重擦寫Flash閃速存儲(chǔ)器
.1000次擦寫周期
.全靜態(tài)操作:0Hz---24MHz
.三級(jí)加密程序存儲(chǔ)器
.128×8字節(jié)內(nèi)部RAM
.32個(gè)可編程I/O 口線
.2個(gè)16位定時(shí)/計(jì)數(shù)器
.6個(gè)中斷源
.可編程串行UART通道
.低功率空閑和掉電模式
3.2.2 AT89C51 功能特性概述
AT89C51提供以下標(biāo)準(zhǔn)功能:4K字節(jié)Flash閃速存儲(chǔ)器,128字節(jié)內(nèi)部RAM,32個(gè)I/0 口線,兩個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí),AT89C51可將至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其他所有部件工作直到下一個(gè)硬件復(fù)位。
3.2.3 AT89C51 引腳功能說(shuō)明
.Vcc:電源電壓
.GND:地
.P0口:P0口是一組8位漏極開(kāi)路型雙向I/O,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動(dòng)8個(gè)TTL邏輯門電路,對(duì)端口寫“1”可作為高阻抗輸入端用
在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問(wèn)期間激活內(nèi)部上拉電阻。
在Flash編程時(shí),P0接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。
.P1口:P1口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過(guò)內(nèi)部的上拉電阻把端口拉倒高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。
Flash編程和程序校驗(yàn)期間,P1接收低8位地址。
.P2口:P2口是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。
在訪問(wèn)外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVE @DPTR指令)時(shí)。P2口送出高8位地址數(shù)據(jù)。在訪問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @RI指令)時(shí),P2口線上的內(nèi)容(也即特殊功能寄存器(SFR)區(qū)總R2寄存器的內(nèi)容),在整個(gè)訪問(wèn)期間不改變。
Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和其他控制信號(hào)。
.P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口,P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作輸入端時(shí),被外部拉低的P3口將用上拉電阻輸出電流(IIL)。
P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,如下表所示:
端 口 引 腳
第 二 功 能
P3.0
RXD (串行輸入口)
P3.1
TXD (串行輸出口)
P3.2
(外中斷0)
P3,3
(外中斷1)
P3.4
T0 (定時(shí)/計(jì)數(shù)器0)
P3.5
T1 (定時(shí)/計(jì)數(shù)器1)
P3.6
(外部數(shù)據(jù)存儲(chǔ)器寫選通)
P3.7
(外部數(shù)據(jù)存儲(chǔ)器讀選通)
P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。
.RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將單片機(jī)復(fù)位。
.ALE/:當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問(wèn)外部存儲(chǔ)器。ALE仍一時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。但要注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。
對(duì)Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖()。
如有必要,可通過(guò)對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令A(yù)LE才會(huì)被激活,此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無(wú)效。
.:程序存儲(chǔ)允許()輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C51由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,這兩次有效的信號(hào)不出現(xiàn)。
.EA/VPP:外部訪問(wèn)允許,欲使 CPU僅訪問(wèn)外部程序存儲(chǔ)器(地址為0000H--FFFFH),EA端必須保持低電平(接地)。需要注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。
如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部會(huì)鎖存EA端狀態(tài)。
Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。
.XTAL1:振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端。
.XTAL2:振蕩器3放大器的輸出端。
3.2.4 時(shí)鐘振蕩器
AT89C51中有一個(gè)用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL和XTAL2分別是該放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路如圖:
外接石英晶體(或陶瓷振蕩器)及電容C1、C2接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對(duì)外接電容C1、C2雖然沒(méi)有十分嚴(yán)格的要求,但電容容量的大小會(huì)輕微影響振蕩頻率的高低,振蕩器工作的穩(wěn)定性,起振的難易程序及溫度穩(wěn)定性,如果使用石英晶體,則推薦電容使用30pF10pF,而如使用陶瓷振蕩器建議選擇40pF10F。
用戶也可以采用外部時(shí)鐘,采用時(shí)鐘的電路如圖。在這種情況下,外部時(shí)鐘脈沖接到XTAL1端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端,XTAL2則懸空。
由于外部時(shí)鐘信號(hào)是通過(guò)一個(gè)2分鐘觸發(fā)器后作為內(nèi)部時(shí)鐘信號(hào)的,所以對(duì)外部時(shí)鐘信號(hào)的占空比沒(méi)有特殊要求,但最小高電平持續(xù)時(shí)間和最大的低電平持續(xù)時(shí)間應(yīng)符合產(chǎn)品技術(shù)條件的要求。
3.2.5 空閑節(jié)電模式
AT89C51有兩種可用軟件編程的省電模式,它們是空閑模式和掉點(diǎn)工作模式。這兩種方式是控制專用寄存器PCON(即電源控制寄存器)中的PD(PCON.1)和IDL(PCON.0)位來(lái)實(shí)現(xiàn)的。PD是掉電模式,當(dāng)PD=1時(shí),激活掉電工作模式,單片機(jī)模式,即PD和IOL同時(shí)為1,則先激活掉電模式。
在空閑工作模式狀態(tài),CPU保持睡眠狀態(tài)而所有片內(nèi)的外設(shè)保持激活狀態(tài),這種方式由軟件產(chǎn)生。此時(shí),片內(nèi)RAM和所有特殊功能寄存器的內(nèi)容保持不變??臻e模式可由任何允許的中斷請(qǐng)求或硬件復(fù)位終止。
終止空閑工作模式的方法有兩種,其一是任何一條被允許中斷的事件被激活,IDL(PCON.0)被硬件清除,即刻終止空閑工作模式。程序會(huì)首先響應(yīng)中斷,進(jìn)入中斷服務(wù)程序,執(zhí)行完中斷服務(wù)程序并緊隨RETI(中斷返回)指令后,下一條要執(zhí)行的指令就是使單片機(jī)進(jìn)入空閑模式那條指令后面的一條指令。
其二是通過(guò)硬件復(fù)位也可將空閑工作模式終止。需要注意的是,當(dāng)有硬件復(fù)位來(lái)終止空閑工作模式時(shí),CPU通常是從激活空閑模式那條指令的下一條指令開(kāi)始繼續(xù)執(zhí)行程序的,要完成內(nèi)部復(fù)位操作,硬件復(fù)位脈沖要保持兩個(gè)機(jī)器周期(24個(gè)時(shí)鐘周期)有效,在這種情況下,內(nèi)部禁止CPU訪問(wèn)片內(nèi)RAM,而允許訪問(wèn)其它端口。為了避免可能對(duì)端口產(chǎn)生意外寫入,激活空閑模式的那條指令后一條指令不應(yīng)是一條對(duì)端口或外部存儲(chǔ)器的寫入指令。
3.2.6 掉電模式
在掉點(diǎn)模式下,振蕩器停止工作,進(jìn)入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi)RAM和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié)。退出掉電模式的唯一方法是硬件復(fù)位,復(fù)位后將重新定義全部特殊功能寄存器但不改變RAM中的內(nèi)容,在VCC恢復(fù)到正常電平前,復(fù)位應(yīng)無(wú)效,且必須保持一定時(shí)間以使振蕩器重啟動(dòng)并穩(wěn)定工作。
模式
程序存儲(chǔ)器
ALE
/PSEN
P0
P1
P2
P3
空閑模式
內(nèi)部
1
1
數(shù)據(jù)
數(shù)據(jù)
數(shù)據(jù)
數(shù)據(jù)
空閑模式
外部
1
1
浮空
數(shù)據(jù)
地址
數(shù)據(jù)
掉電模式
內(nèi)部
0
0
數(shù)據(jù)
數(shù)據(jù)
數(shù)據(jù)
數(shù)據(jù)
掉電模式
外部
0
0
浮空
數(shù)據(jù)
數(shù)據(jù)
數(shù)據(jù)
空閑和掉電模式外部引腳狀態(tài)
3.2.7 程序存儲(chǔ)器的加密
AT89C51可使用對(duì)芯片上的3個(gè)加密位LB1、LB2、LB3進(jìn)行編程(P)或不編程(U)來(lái)得到下表所示的功能:
加密位保護(hù)功能表
程序加密位
保護(hù)類型
LB1
LB2
LB3
1
U
U
U
沒(méi)有程序保護(hù)功能
2
P
U
U
禁止從外部程序存儲(chǔ)器中執(zhí)行MOVC指令讀取內(nèi)部程序存儲(chǔ)器的內(nèi)容
3
P
P
U
除上表功能外,還禁止程序校驗(yàn)
4
P
P
P
除以上功能外,同時(shí)禁止外部執(zhí)行
當(dāng)加密位LB1被編程時(shí),在復(fù)位期間,EA端的邏輯電平被采樣并鎖存,如果單片機(jī)上電后一直沒(méi)有復(fù)位,則鎖存起的初始值是一個(gè)隨機(jī)數(shù),且這個(gè)隨機(jī)數(shù)會(huì)一直保存到真正復(fù)位為止,為使單片機(jī)能正常工作,被鎖存的EA電平必須與該引腳當(dāng)前的邏輯電平一致。此外,加密位只能通過(guò)整片擦除的方法清除。
Flash閃速存儲(chǔ)器的編程
AT89C51單片機(jī)內(nèi)部有4K字節(jié)的Flash PEROM,這個(gè)Flash存儲(chǔ)陣列出廠時(shí)已處于擦除狀態(tài)(即所有存儲(chǔ)單元的內(nèi)容均為FFH),用戶隨時(shí)可對(duì)其進(jìn)行編程。編程接口可接收高電壓(+12V)或低電壓(Vcc)的允許編程信號(hào)。低電壓編程模式適合于用戶在線編程系統(tǒng),而高電壓編程模式可與通用EPROM編程器兼容。
AT89C51單片機(jī)中,有些屬于低電壓編程方式,而有些則是高電壓編程方式。用戶可從芯片上的型號(hào)和讀取芯片內(nèi)的簽名字節(jié)獲得該信息。如圖
Vpp=12V
Vpp=5V
芯片頂面標(biāo)識(shí)
AT89C51
xxxx
yyww
AT89C51
xxxx—5
yyww
簽名字節(jié)
(030H)=1EH
(031H)=51H
(032H)=FFH
(030H)=1EH
(031H)=51H
(032H)=05H
AT89C51的程序存儲(chǔ)器列陣采用字節(jié)寫入方式編程的,每次寫入一個(gè)字節(jié),要對(duì)整個(gè)芯片內(nèi)的PEROM程序存儲(chǔ)器寫入一個(gè)非空字節(jié),必須使用擦除的方式將整個(gè)存儲(chǔ)器的內(nèi)容清楚。
3.2.8 編程方法
編程前,先設(shè)置好地址,數(shù)據(jù)及控制信號(hào),編程單元的地址加在P1口和P2口的P2.0—P2.3(11位地址范圍為0000H—0FFFH),數(shù)據(jù)從P0口輸入,引腳P2.6、P2.7和P3.6、P3.7的電平,PSEN為低電平,RST保持高電平,EA/Vpp引腳是編程電源的輸入端,按要求加上編程電壓,ALE/PROG引腳輸入編程脈沖(負(fù)脈沖)。編程時(shí),可采用4—20MHz的時(shí)鐘振蕩器,AT89C51編程方法如下:
1. 在地址線上加上要編程單元的地址信號(hào)。
2. 在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié)。
3. 激活相應(yīng)的控制信號(hào)。
4. 在高電壓編程方式時(shí),將/EA/Vpp端加上+12V編程電壓。
5. 每對(duì)Flash存儲(chǔ)陣列寫入一個(gè)字節(jié)或每寫入一個(gè)程序加密位,加上一個(gè)ALE/PROG編程脈沖。
改變編程單元的地址和寫入的數(shù)據(jù),重復(fù)1—5步驟,直到全部文件編程結(jié)束。
每個(gè)字節(jié)寫入周期是自身定時(shí)的,通常約為1.5ms
3.2.9 數(shù)據(jù)查詢
AT89C51單片機(jī)用數(shù)據(jù)查詢方式來(lái)檢測(cè)一個(gè)寫周期是否結(jié)束,在一個(gè)寫周期中,如需讀取最后寫入的那個(gè)字節(jié),則讀出的數(shù)據(jù)的最高位(P0.7)是原來(lái)寫入字節(jié)最高的反碼,寫周期完成后,有效的數(shù)據(jù)就會(huì)出現(xiàn)在所有輸出端上,此時(shí),可進(jìn)入下一個(gè)字節(jié)的寫周期,寫周期開(kāi)始后,可在任意時(shí)刻進(jìn)行數(shù)據(jù)查詢。
Ready/Busy:字節(jié)編程的進(jìn)度可通過(guò)RDY/BSY輸出信號(hào)監(jiān)測(cè),編程期間,ALE變成高電平“H”后P3.4端電平被拉低,表示正在編程狀態(tài)。編程完成后。P3.4變?yōu)楦唠娖奖硎緶?zhǔn)備就緒狀態(tài)。
3.2.11 程序校驗(yàn)及芯片擦除
如果加密位LB1、LB2沒(méi)有進(jìn)行編程,則代碼數(shù)據(jù)可通過(guò)地址和數(shù)據(jù)線讀回原編寫的數(shù)據(jù)。采用下圖電路。程序存儲(chǔ)器的地址由P1和P2口的P2.0-P2.3輸入,數(shù)據(jù)有P0口讀出,P2.6、P2.7和P3.6、P3.7的控制信號(hào)保持低電平,ALE、和RST保持高電平。校驗(yàn)時(shí)P0口須接上10K左右的上拉電阻。
加密位不可直接校驗(yàn),加密位的校驗(yàn)可通過(guò)對(duì)存儲(chǔ)器的校驗(yàn)和寫入狀態(tài)來(lái)驗(yàn)證。
利用控制信號(hào)的正確組合并保持ALE/引腳10ms的低電平脈沖寬度即可將PEROM陣列(4k字節(jié))和三個(gè)加密位整片擦除,代碼陣列在片擦除操作中將任何非空單元寫入“1”,這步驟需再編程之前進(jìn)行。
3.2.12 讀片內(nèi)簽名字節(jié)及編程接口
AT89C51單片機(jī)內(nèi)有3個(gè)簽名字節(jié),地址為030H、031H和032H。用于聲明該器件的廠商、型號(hào)和編程電壓。讀簽名字節(jié)的過(guò)程和單元030H、031H和032H的正常校驗(yàn)相仿,只需將P3.6、P3.7保持低電平,返回值意義如下:
(030H)=1EH 聲明產(chǎn)品由ATMEL公式制造。
(031H)=51H 聲明為AT89C51單片機(jī)。
(032H)=FFH 聲明為12V編程電壓。
(032H)=05H 聲明為5V編程電壓。
編程接口:采用控制信號(hào)的正確組合可對(duì)Flash閃速存儲(chǔ)陣裂中的每一代碼字節(jié)進(jìn)行寫入和存儲(chǔ)器的整片擦除,寫操作周期是自身定時(shí)的,初始化后它將自動(dòng)定時(shí)到操作完成。
3.2.13 AT89C51的極限參數(shù):
極限參數(shù):工作溫度………………-55℃to+125℃
儲(chǔ)藏溫度………………-65℃to+150℃
任一引腳對(duì)地電壓………-1.0Vto+7.0V
最高工作電壓………………………6.6V
直流輸出電流……………………15.0mA
3.3 顯示電路
在單片機(jī)應(yīng)用系統(tǒng)中,如果需要顯示的內(nèi)容只有數(shù)碼和某些字母,使用LED數(shù)碼管是一種較好的選擇。LED數(shù)碼管顯示清晰、成本低廉、配置靈活,與單片機(jī)接口簡(jiǎn)單易行。LED數(shù)碼管是由發(fā)光二極管作為顯示字段的數(shù)碼型顯示器件,其中七只發(fā)光二極管分別對(duì)應(yīng)a~g筆端構(gòu)成“日”字形,另一只發(fā)光二極管Dp作為小數(shù)點(diǎn)。因此這種LED顯示器稱為七段數(shù)碼管或八段數(shù)碼管。如圖所示:
LED數(shù)碼管按電路中的連接方式可分為共陰型和共陽(yáng)型兩大類,共陽(yáng)型是將各段發(fā)光二極管的正極連在一起,作為公共端COM,公共端COM接高電平,a~g、Dp各筆段通過(guò)限流電阻接控制端。某筆段控制端低電平時(shí),該筆段發(fā)光,高電平時(shí)不發(fā)光??刂颇硯锥喂P端發(fā)光,就能顯示出某個(gè)數(shù)碼或字符。共陰型是將各段發(fā)光二極管的負(fù)極連在一起,作為公共端COM接地,某筆段通過(guò)限流電阻接高電平時(shí)發(fā)光。
在自動(dòng)加料機(jī)控制系統(tǒng)中運(yùn)行是要顯示輸送、排料、滿料、空料時(shí)間,有時(shí)間切換鍵和標(biāo)志哪條生產(chǎn)線的發(fā)光二極管表示,顯示的位數(shù)少,所以就采用靜態(tài)顯示的方式。LED顯示器工作于靜態(tài)顯示方式時(shí),各位的共陰極(或共陽(yáng)極)連接在一起并接地(或+5V);每位的段選線(a~dp)分別與一個(gè)8位的鎖存器輸出相連。所以稱為靜態(tài)顯示。各個(gè)LED的顯示字符一經(jīng)確定,相應(yīng)鎖存器的輸出將維持不變,直到顯示另一個(gè)字符為止。也正因此如此,靜態(tài)顯示器的亮度都較高。這種顯示方式接口編程容易。若用I/O接口,則要占用4個(gè)8位I/O口,若用鎖存器接口,則要用4片74LS373芯片。如果顯示器位數(shù)增多,則靜態(tài)顯示方式便無(wú)法適應(yīng)。
在設(shè)計(jì)中,LED顯示電路采用74LS377驅(qū)動(dòng)器和MC14511B譯碼器控制LED數(shù)碼管。
3.3.1 74LS377芯片介紹
.D0~D7:8個(gè)信號(hào)輸入端。
.Q0~Q7:8個(gè)信號(hào)輸出端。
.CLK:時(shí)鐘信號(hào)輸入端。
. :鎖存允許信號(hào)。當(dāng)=0時(shí),CLK端的上跳變將把8位D輸入端的數(shù)據(jù)打入8位鎖存器。
74LS377真值表
CLK
D
Q
1
X
X
Q0
0
↑
1
1
0
↑
0
0
X
0
X
Q0
3.3.2 MC14511B芯片介紹
.A~D:四個(gè)信號(hào)輸入端。
.a~g:七個(gè)信號(hào)輸出端。
.LT、BI:接地。
.LE:接電源。
3.3.3 LED接口電路
LED顯示電路采用74LS377驅(qū)動(dòng)器和MC14511B譯碼器控制LED數(shù)碼管。兩個(gè)LED顯示一條生產(chǎn)線一個(gè)工作過(guò)程的秒數(shù)。兩片MC14511B把P0口的高四位和低四位譯碼成十進(jìn)制控制LED顯示。電路圖如下:
3.4 繼電器控制電路
在電氣控制領(lǐng)域或產(chǎn)品中,凡是需要邏輯控制的場(chǎng)合,幾乎都需要使用繼電器,從家用電器到工農(nóng)業(yè)應(yīng)用,甚至國(guó)民經(jīng)濟(jì)各個(gè)部門,可謂無(wú)所不見(jiàn)。繼電器是一種利用各種物理量的變化,將電量或非電量信號(hào)轉(zhuǎn)化為電磁力(有觸頭式)或使輸出狀態(tài)發(fā)生階躍變化(無(wú)觸頭式),從而通過(guò)其觸頭或突變量促使在同一電路或另一電路中的其它器件或裝置動(dòng)作的一種控制元件。根據(jù)轉(zhuǎn)化的物理量的不同,可以構(gòu)成各種各樣的不同功能的繼電器,以用于各種控制電路中進(jìn)行信號(hào)傳遞、放大、轉(zhuǎn)換、聯(lián)鎖等,從而控制主電路和輔助電路中的器件或設(shè)備按預(yù)定的動(dòng)作程序進(jìn)行工作,實(shí)現(xiàn)自動(dòng)控制和保護(hù)的目的。被轉(zhuǎn)化或施加于繼電器的電量或非電量稱為繼電器的激勵(lì)量,當(dāng)繼電器被激勵(lì),從一個(gè)起始位置達(dá)到預(yù)定的工作位置,并完成電路的切換動(dòng)作,稱為繼電器的工作特性,包括吸合。不吸合,保持與釋放狀態(tài)。當(dāng)輸入量變化到高于它的吸合值或低于它的釋放值時(shí),繼電器動(dòng)作,對(duì)于有觸頭式繼電器其觸頭閉合或斷開(kāi),對(duì)于無(wú)觸頭式繼電器起輸出發(fā)生階躍變化,以此提供一定的邏輯變量。
自動(dòng)加料機(jī)是把塑料粒子送到一個(gè)真空管,在輸送時(shí)真空管關(guān)閉合,排料時(shí)真空管需要打開(kāi),將粒子送到排料漏斗。本設(shè)計(jì)共需2個(gè)繼電器控制交流接觸器,一個(gè)接帶動(dòng)生產(chǎn)的電動(dòng)機(jī)。另一個(gè)為控制工作方向的方向閥。經(jīng)考慮采用4123無(wú)極12V直流控制24V的交流繼電器,并利用光耦合器件P521和MCU隔開(kāi)。89C51的P1初始值為0FFH,所以加一個(gè)74LS04反相器使得繼電器初始不產(chǎn)生閉合,使用MC1413為無(wú)源驅(qū)動(dòng)器,IN4007組成繼電器的續(xù)流二極管。
電路圖如下:
3.5 鍵盤及顯示電路
鍵盤在單片機(jī)應(yīng)用系統(tǒng)中能實(shí)現(xiàn)向單片機(jī)輸入數(shù)據(jù)、傳送命令等功能,是人工干擾單片機(jī)的主要手段。本設(shè)計(jì)采用8255A為I/O擴(kuò)展。
3.5.1 鍵盤接口
非編碼鍵盤與單片機(jī)的接口單片機(jī)系統(tǒng)所用的鍵盤有編碼鍵盤和非編碼鍵盤兩種。
編碼鍵盤本身除了按鍵之外,還包括產(chǎn)生鍵碼的硬件電路,只要按下某一個(gè)鍵,就能產(chǎn)生這個(gè)鍵的代碼,一般稱為鍵碼,同時(shí),還能產(chǎn)生一個(gè)脈沖信號(hào),以通知CPU接收(輸入)鍵碼。這種鍵盤的使用比較方便,亦不需要編寫很多程序,但使用的硬件較復(fù)雜,在微型計(jì)算機(jī)控制系統(tǒng)中使用還不多。
非編碼鍵盤是由一些按鍵排列成的一個(gè)行列矩陣。按鍵的作用,只是簡(jiǎn)單地實(shí)現(xiàn)接點(diǎn)的接通和斷開(kāi),但必須有一套相應(yīng)的程序與之配合,才能產(chǎn)生出相應(yīng)的鍵碼。非編碼鍵盤幾乎不需要附加什么硬件電路,目前,在微型計(jì)算機(jī)控制系統(tǒng)中使用比較普遍。
使用非編碼鍵需要用軟件來(lái)解決按鍵的識(shí)別,防止抖動(dòng)以及鍵碼的產(chǎn)生等工作。
設(shè)有一個(gè)6行×5列的非編碼鍵盤,其中有16個(gè)為數(shù)字鍵0~F,其余的為控制鍵,用以發(fā)布各種控制命令。鍵盤的行線接8155C口的六條線PC5~PC0,鍵盤的列線則接8155B口的5條線。在沒(méi)有任何鍵按下時(shí),所有鍵盤列線上的信號(hào)都是高電平。當(dāng)有按鍵按下時(shí),就會(huì)出現(xiàn)鍵的識(shí)別、防止抖動(dòng)以及確定鍵碼等一系列問(wèn)題。
按鍵識(shí)別有各種方法,此系統(tǒng)只 “行掃描”法:
(1)確定是否有按鍵按下。CPU通過(guò)并行口輸出000000到鍵盤的行線,然后檢測(cè)鍵盤的列線信號(hào)。若沒(méi)有鍵按下,則為11111。若有任一個(gè)按鍵按下,則有某一條列線為0,也就是當(dāng)PB4~PB0不為11111時(shí),就表示有鍵按下。
(2)通過(guò)“行掃描”確定已按鍵的行、列位置。所謂行掃描就是依次給每條行線輸入0信號(hào),而其余各行都輸入1,并檢測(cè)每次掃描時(shí)所對(duì)應(yīng)的列信號(hào)。在圖2中就是在C口先輸出111110(PC5~PC0),然后是111101,直到最后是011111,并檢測(cè)每次所對(duì)應(yīng)的B口輸入。
只有在某行上有鍵按下時(shí),在這一行上輸入0(其他行為1),在列輸出上才能檢測(cè)到0信號(hào)。若是輸入為0的這一行上沒(méi)有按鍵按下,則收到的列信號(hào)仍然全是1。因此,只要記下列信號(hào)不全為1時(shí)的C口輸出及B口輸入,就能確定以按鍵的位置。設(shè)圖2中處于第3行第1列的鍵已按下,則必須是行輸出信號(hào)為110111,檢測(cè)到的列信號(hào)為11101。對(duì)應(yīng)于其他的行信號(hào),列信號(hào)都是11111。這樣,通過(guò)行掃描,就可以確定按鍵的行、列坐標(biāo)。
(3)確定是否有多鍵同時(shí)按下。有時(shí)一次按下的鍵不止一個(gè),這在一般情況下是由于誤操作引起的,是不應(yīng)該出現(xiàn)的通常稱為竄鍵。出現(xiàn)這種情況時(shí),就可能有不止一次會(huì)得到列信號(hào)不為全1,這時(shí)就不容易判斷哪個(gè)鍵是真正需要按下的。為了處理這種情況可采取兩種辦法:一是行掃描一定是掃到最后一行才結(jié)束,而不是檢測(cè)到列信號(hào)不為全1時(shí)就結(jié)束,以便發(fā)現(xiàn)竄鍵;二是如果出現(xiàn)了竄鍵,最簡(jiǎn)單的處理辦法就是這次行掃描不算,再來(lái)一遍,即以最后放開(kāi)的那個(gè)鍵為準(zhǔn)。實(shí)際上,由于掃描的速度很快,真正找到兩個(gè)鍵同時(shí)按下的情況是很少的。
(4)消除鍵抖動(dòng)。一般按鍵在按下的時(shí)候有抖動(dòng)的問(wèn)題,即鍵的簧片在按下時(shí)會(huì)有輕微的彈跳,需經(jīng)過(guò)一個(gè)短暫的時(shí)間才會(huì)可靠地接觸。若在簧片抖動(dòng)時(shí)進(jìn)行掃描就可能得出不正確的結(jié)果。因此,在程序中要考慮防抖動(dòng)的問(wèn)題。最簡(jiǎn)單的辦法是在檢測(cè)到有鍵按下時(shí),等待(延遲)一段時(shí)間再進(jìn)行“行掃描”,延遲時(shí)間為10~20ms。這可通過(guò)調(diào)用子程序來(lái)解決,當(dāng)系統(tǒng)中有顯示子程序時(shí),調(diào)用幾次顯示子程序也能同時(shí)達(dá)到消除抖動(dòng)的目的。
3.5.2 8255A芯片介紹
自動(dòng)加料系統(tǒng)有8個(gè)按鍵:?jiǎn)?dòng)兩條生產(chǎn)線的“啟動(dòng)1”鍵和“啟動(dòng)2”鍵、分秒選擇鍵、時(shí)間設(shè)置加/減鍵、顯示生產(chǎn)線狀態(tài)切換鍵,時(shí)間設(shè)置鍵,時(shí)間切換鍵,由于單片機(jī)的并行口有限。本系統(tǒng)采用8255A擴(kuò)展并行口。
(1).8255A的內(nèi)部結(jié)構(gòu)
8255A的內(nèi)部結(jié)構(gòu)有以下幾部分組成:
a.并行I/O端口A、B、C 8255A的內(nèi)部有3個(gè)8位并行I/O口:A口、B口、C口。3個(gè)I/O口都可以通過(guò)編程選擇為輸入口或輸出口,但在結(jié)構(gòu)和功能上有所不同。
A口:含有一個(gè)8位數(shù)據(jù)輸出鎖存/緩沖器和一個(gè)8位輸入鎖存器。
B口:含有一個(gè)8位數(shù)據(jù)輸出鎖存/緩沖器和一個(gè)8位輸入鎖存器(不鎖存)。
C口:含有一個(gè)8位數(shù)據(jù)輸出鎖存/緩沖器和一個(gè)8位輸入鎖存器(不鎖存)。
當(dāng)數(shù)據(jù)傳送不需要聯(lián)絡(luò)信號(hào)時(shí),這3個(gè)端口都可以用作輸入口或輸出口。當(dāng)A口B口需要有聯(lián)絡(luò)信號(hào)時(shí),C口可以作為A口和B口的聯(lián)絡(luò)信號(hào)線。
b.工作方式控制電路:8255A的三個(gè)端口在使用使可分為A、B兩組。A組包括A口8位和C口高4位:B組包括B口8位和C口低4位。兩組的控制電路中分別有控制寄存器,根據(jù)寫入的控制字決定兩組的工作方式,也可對(duì)C口每一位置“1” 或清“0”。
c.數(shù)據(jù)總線緩沖器:數(shù)據(jù)總線緩沖器是三態(tài)雙向的8位緩沖器,是8255A與單片機(jī)數(shù)據(jù)總線的接口,8255A的D0~D7可以和AT89C51單片機(jī)的P0.0~P0.7直接相連。數(shù)據(jù)的輸入輸出、控制字和狀態(tài)信息的傳遞,均可通過(guò)數(shù)據(jù)總線緩沖器進(jìn)行。
d.讀/寫控制邏輯:8255A讀/寫控制邏輯的作用是從CPU的地址和控制總線上接受有關(guān)信號(hào),轉(zhuǎn)變成各種控制命令送到數(shù)據(jù)緩沖器及A組和B組的控制電路,控制A、B、C3個(gè)端口的操作。
3.5.3 8255A引腳功能
8255A共有40個(gè)引腳,一般為雙列直插DIP封裝,40個(gè)引腳可分為與CPU連接的數(shù)據(jù)線、地址和控制信號(hào)以及與外圍設(shè)備連接的三個(gè)端口線。
.D0~D7:雙向三態(tài)數(shù)據(jù)總線。
.RESET:復(fù)位信號(hào),輸入,高電平有效。復(fù)位后,控制寄存器清0,A口、B口、C口被置為輸入方式。
.:片選信號(hào),輸入,低電平有效。
.:讀信號(hào),輸入,低電平有效。有效時(shí),允許CPU通過(guò)8255A D0~D7讀取數(shù)據(jù)或狀態(tài)信息。
.:寫信號(hào),輸入,低電平有效。有效時(shí),允許
.A1A0:端口控制信號(hào),輸入。2位可構(gòu)成四種狀態(tài),分別尋址A口、B口、C口和控制寄存器
.PA0~PA7:A口數(shù)據(jù)線,雙向。
.PB0~PB7:B口數(shù)據(jù)線,雙向。
.PC0~PC7:C口數(shù)據(jù)/信號(hào)線,雙向。當(dāng)8255A工作于方式0時(shí),PC0~PC7分為兩組(每組4位)并行I/O數(shù)據(jù)線;當(dāng)8255A工作于方式1或方式2時(shí),PC0~PC7為A口、B口提供聯(lián)絡(luò)信號(hào)。
A1A0與 、、信號(hào)一起,可確定8255A的操作狀態(tài),如圖所示:
8255A功能操作
A1
A0
操 作
0
0
1
0
1
0
0
0
0
1
1
1
0
0
0
A口→數(shù)據(jù)總線
B口→數(shù)據(jù)總線
C口→數(shù)據(jù)總線
輸入操作
0
0
1
1
0
1
0
1
1
1
1
1
0
0
0
0
0
0
0
0
數(shù)據(jù)總線→A口
數(shù)據(jù)總線→B口
數(shù)據(jù)總線→C口
數(shù)據(jù)總線→控制口
輸出操
收藏
編號(hào):2690240
類型:共享資源
大小:631.55KB
格式:ZIP
上傳時(shí)間:2019-11-28
5
積分
- 關(guān) 鍵 詞:
-
自動(dòng)
加料
控制系統(tǒng)
資料
- 資源描述:
-
自動(dòng)加料機(jī)控制系統(tǒng)資料,自動(dòng),加料,控制系統(tǒng),資料
展開(kāi)閱讀全文
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書(shū)面授權(quán),請(qǐng)勿作他用。