![機電一體化系統(tǒng)的微機控制的選擇與設計課件_第1頁](http://file4.renrendoc.com/view/38977a0744e284aae5f0dbd1ea55a22a/38977a0744e284aae5f0dbd1ea55a22a1.gif)
![機電一體化系統(tǒng)的微機控制的選擇與設計課件_第2頁](http://file4.renrendoc.com/view/38977a0744e284aae5f0dbd1ea55a22a/38977a0744e284aae5f0dbd1ea55a22a2.gif)
![機電一體化系統(tǒng)的微機控制的選擇與設計課件_第3頁](http://file4.renrendoc.com/view/38977a0744e284aae5f0dbd1ea55a22a/38977a0744e284aae5f0dbd1ea55a22a3.gif)
![機電一體化系統(tǒng)的微機控制的選擇與設計課件_第4頁](http://file4.renrendoc.com/view/38977a0744e284aae5f0dbd1ea55a22a/38977a0744e284aae5f0dbd1ea55a22a4.gif)
![機電一體化系統(tǒng)的微機控制的選擇與設計課件_第5頁](http://file4.renrendoc.com/view/38977a0744e284aae5f0dbd1ea55a22a/38977a0744e284aae5f0dbd1ea55a22a5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第四章機電一體化系統(tǒng)的微機控制系統(tǒng)的選擇與設計微機控制系統(tǒng);8086/8088微機的硬件結構特點;單片機的結構特點及其最小應用系統(tǒng);數(shù)字顯示器及鍵盤的接口電路;微機應用系統(tǒng)的輸入/輸出控制的可靠性設計。常用檢測傳感器的性能特點、選用及其微機接口14.1微機控制系統(tǒng)控制系統(tǒng)的設計就是選用微機、設計接口、選用控制形式和動作控制方式的問題。4.1.1微機控制系統(tǒng)專用與通用、硬件與軟件的抉擇和權衡在設計中,首先遇到的問題有以下幾種。1)專用與通用的抉擇專用控制系統(tǒng)適合于大批量生產(chǎn)的機電一體化產(chǎn)品。23專用控制系統(tǒng)的設計問題,實際上就是選用適當?shù)耐ㄓ肐C芯片來組成控制系統(tǒng),以便與執(zhí)行元件和檢測傳感器相匹配,或重新設計制作專用集成電路,把整個控制系統(tǒng)集成在一塊或幾塊芯片上。對于多品種、中小批量生產(chǎn)的機電一體化產(chǎn)品來說,由于還在不斷改進,結構還不十分穩(wěn)定,特別是對現(xiàn)有設備進行改造時,采用通用控制系統(tǒng)比較合理。通用控制系統(tǒng)的設計,主要是合理選擇主控制微機機型,設計與其執(zhí)行元件和檢測傳感器之間的接口,并在此基礎上編制應用軟件的問題。實質(zhì),這就是通過接口設計和軟件編制來使通用微機專用化的問題。52)硬件與軟件的權衡。例如運算與判斷處理等,適宜用軟件來實現(xiàn)。而在其余大多數(shù)情況下.對于某種功能來說,既可用硬件來實現(xiàn),叉可用軟件來實現(xiàn)。因此,控制系統(tǒng)中硬件和軟件的合理組成,通常要根據(jù)經(jīng)濟性和可靠性的標準權衡決定。在設計控制系統(tǒng)時,對于提高包括環(huán)境適應性和抗干擾能力在內(nèi)的可靠性時必須特別注意采取必要的措施。64.1.2微機控制系統(tǒng)的設計思路1、確定系統(tǒng)整體控制方案首先應了解被控對象的控制要求,構思微機控制系統(tǒng)的整體方案。通常,先從系統(tǒng)構成上考慮是采用開環(huán)控制還是閉環(huán)控制。當采用閉環(huán)控制時,應考慮采用何種檢測傳感元件,檢測精度要求如何。其次考慮執(zhí)行元件采用何種方式,是電動、氣動還是液動。比較其方案的優(yōu)缺點,擇優(yōu)而選。第三要考慮是否有特殊控制要求,對于具有高可靠性、高精度和快速性要求的系統(tǒng),應采取哪些措施。73選擇微型計算機對于給定的任務,選擇微機的方案不是唯一的,從控制的角度出發(fā),微機應能滿足具有較完善的中斷系統(tǒng)、足夠的存儲容量、完善的輸入/輸出通道和實時時鐘等要求。1)較完善的中斷系統(tǒng)。微型計算機控制系統(tǒng)必須具有實時控制性能。實時控制包含兩個意思:一是系統(tǒng)正常運行時的實時控制能力;二是在發(fā)生故障時緊急處理的能力。出現(xiàn)異?;蚓o急情況時應報警和處理92)足夠的存儲容量。由于微型計算機內(nèi)存容量有限,當內(nèi)存容量不足以存放程序和數(shù)據(jù)時,應擴充內(nèi)存,有時還應配備適當?shù)耐獯鎯ζ?。微型計算機系統(tǒng)通常有32~64KB以上的內(nèi)存,一般配備磁盤(硬盤或軟盤)作為外存儲器,系統(tǒng)程序和應用程序可保存在磁盤內(nèi),運行時由操作系統(tǒng)從磁盤調(diào)入內(nèi)存。系統(tǒng)機亦可擴充2~8KB以上的只讀存儲器,調(diào)試成功的應用程序同樣可以存入只讀存儲器內(nèi),這樣使用方便、可靠性高。3)完備的輸入/輸出通道和實時時鐘。開關量輸入/輸出通道;模擬量輸入/輸出通道;同時具有開關量輸入/輸出通道和模擬量輸入/輸出通道10選擇微型計算機除應滿足上述幾點要求外,從不同的被控制對象角度而言,還應考慮幾個特殊要求:1)字長。微處理器的字長定義為并行數(shù)據(jù)總線的線數(shù)。字長直接影響數(shù)據(jù)的精度、尋址能力、指令的數(shù)目和執(zhí)行操作的時間。對于通常的順序控制、程序控制可選用1位微處理器。對于計算量小,計算精度和速度要求不高的系統(tǒng)可選用4位機(如計算器、家用電器及簡單控制等)。對于計算精度要求較高、處理速度較快的系統(tǒng)可選用8位機(如線切割機床等普通機床控制、溫度控制等)。對于計算精度高、處理速度快的系統(tǒng)可選用16位機(如控制算法復雜的生產(chǎn)過程控制、要求高速運行的機床控制、特別大量的數(shù)據(jù)處理等)。11單片機是在一個雙列直插式集成電路中包括了數(shù)字計算機的四個基本組成部分(CPU、EPROM、RAM和I/O接口),具有價格低、體積小等特點,可滿足很多場合的應用。其缺點是需要開發(fā)系統(tǒng)對其軟硬件進行開發(fā)。選擇微機時,還應考慮成本高低、程序編制難易以及擴充輸入/輸出接口是否方便等因素,從而確定是選用單片機、單板機,還是選用微型計算機系統(tǒng)。
單板機也具有價格較低、體積較小的特點,適合于生產(chǎn)現(xiàn)場使用,便于維護和管理。其缺點是內(nèi)存容量較小,接口電路少;另外使用機器語言編程,編程和調(diào)試比較困難。13微型計算機系統(tǒng)有豐富的系統(tǒng)軟件,可用高級語言、匯編語言編程,程序編制和調(diào)試都很方便。系統(tǒng)機內(nèi)存容量大且有軟(硬)磁盤等大容量的外存儲器,通常都有數(shù)據(jù)通道,可實現(xiàn)內(nèi)外存儲器之間的快速批量信息交換。其缺點是成本較高,當用來控制一個小系統(tǒng)時,往往不能充分利用系統(tǒng)機的全部功能,抗干擾能力差。4系統(tǒng)總體設計
在總體設計時,要綜合考慮硬件和軟件措施,解決微機、被控制對象和操作者三者之間可靠的、適時進行信息交換的通路和分時控制的時序安排問題,保證系統(tǒng)能正常地運行。設計中主要考慮硬件和軟件功能的分配和協(xié)調(diào)、接口設計、通道設計、操作控制臺設計、可靠性設計等問題。14
(1)接口設計通常有下述三種方法可供選用。1)選用功能接口板。在功能接口板上,有多組并(串)行數(shù)字量輸入/輸出通道,或多組模擬量輸入/輸出通道。采用選配功能插板擴展接口方案的最大優(yōu)點是硬件工作量小,可靠性高,但功能插板價格較貴,一般只用來組成較大的系統(tǒng)。2)選用通用接口電路。在組成一個較小的控制系統(tǒng)時,有時采用通用接口電路來擴展接口。由于通用接口電路是標準化的,只要了解其外部特性與CPU的連接方法、編程控制方法就可進行任意擴展。15如果要采用程序中斷方式,就要考慮中斷申請輸入、中斷優(yōu)先級排隊等問題。若要采用直接存儲器存取方式,則要增加直接存儲器存取(DMA)控制器作為輔助電路加到接口。(2)通道設計輸入/輸出通道是計算機與被控對象相互交換信息的部件。每個控制系統(tǒng)都要有輸入/輸出通道。一個系統(tǒng)中可能要有開關量的輸入/輸出通道、數(shù)字量的輸入/輸出通道或模擬量的輸入/輸出通道。在總體設計中就應確定本系統(tǒng)應設置什么通道,每個通道由幾部分組成,各部分需要什么樣元器件等。17轉(zhuǎn)換、保護、濾波、隔離等措施轉(zhuǎn)換成計算機能接受的邏輯信號1819模擬量輸出通道21(3)操作控制臺設計微型計算機控制系統(tǒng)必須便于人機聯(lián)系。通常都要設計一個現(xiàn)場操作人員使用的控制臺。操作員控制臺一般應有下列一些功能:①有一組或幾組數(shù)據(jù)輸入鍵(數(shù)字鍵或撥碼開關等),用于輸入或更新給定值、更改控制器參數(shù)或其它必要的數(shù)據(jù);②有一組或幾組功能鍵或轉(zhuǎn)換開關,用于轉(zhuǎn)換工作方式,起動、停止或完成某種指定的功能;③有一個數(shù)字顯示裝置或顯示屏,用于顯示各狀態(tài)參數(shù)及故障指示等;22④控制板上應有一個“急?!卑粹o,用于在出現(xiàn)事故時停止系統(tǒng)運行,轉(zhuǎn)入故障處理。應當指出,控制臺上每一數(shù)字信號或控制信號都與系統(tǒng)的工作息息相關,設計時必須明確這些轉(zhuǎn)換開關、按鈕、鍵盤、數(shù)字顯示器和狀態(tài)、故障指示燈等的作用和意義,仔細設計控制臺硬件及其相應的控制臺管理程序.使設計的操作控制臺既方便操作又安全可靠,即使操作失誤也不會引起嚴重后果。235軟件設計微機控制系統(tǒng)的軟件主要分兩大類,即系統(tǒng)軟件和應用軟件。系統(tǒng)軟件包括操作系統(tǒng)、診斷系統(tǒng)、開發(fā)系統(tǒng)和信息處理系統(tǒng)。通常這些軟件一般不需要用戶設計,對用戶來說,基本上只須了解其大致原理和使用方法就行了。應用軟件都要由用戶自行編寫,所以軟件設計主要是應用軟件設計??刂葡到y(tǒng)對應用軟件的要求是實時性、針對性、靈活性和通用性。對于工業(yè)控制系統(tǒng)來說由于是實時控制系統(tǒng),所以要求應用軟件能夠在對象允許的時間間隔內(nèi)進行控制、運算和處理。25應用軟件的最大特點是具有較強的針對性,即每個應用程序都是根據(jù)一個具體系統(tǒng)的要求設計。1)模塊化程序設計法。在微機控制系統(tǒng)中,大體上可以分為數(shù)據(jù)處理和過程控制兩大基本類型。數(shù)據(jù)處理主要是數(shù)據(jù)的采集、數(shù)字濾波、標度變換以及數(shù)值計算等。過程控制程序主要是使微機按照指定的方法(如PID或直接數(shù)字控制)進行計算,然后再輸出,以便控制生產(chǎn)過程。所謂“模塊”,實質(zhì)上就是能完成一定功能、相對獨立的程序段。這種程序設計方法就叫做模塊化程序設計法。264.1.3微型計算機的系統(tǒng)構成及種類1微型計算機的系統(tǒng)構成人們常用“微機”這個術語。該術語是三個概念的統(tǒng)稱,即微處理機(微處理器)、微型計算機、微型計算機系統(tǒng)的統(tǒng)稱。微處理機(Microprocessor)簡稱μP或CPU。它是一個大規(guī)模集成電路(LSI)器件或超大規(guī)模集成電路(VLSI)器件.器件中有數(shù)據(jù)通道,多個寄存器、控制邏輯和運算邏輯部件,有的器件還含有時鐘電路,為器件的工作提供定時信號??刂七壿嬁梢允墙M合邏輯,也可以是微程序的存儲邏輯,可叭執(zhí)行機器語言描述的系統(tǒng)指令,是完成計算機對信息的處理與控制等的中央處理功能的器件,并非是完整的計算機。29微型計算機(Microcomputer)簡稱MC或μc,它是以微處理機(CPU)為中心,加上只讀存儲器(ROM)、隨機存取存儲器(RAM)、輸入/輸出接口電路、系統(tǒng)總線及其它支持邏輯電路組成的計算機。將配有系統(tǒng)軟件、外圍設備、系統(tǒng)總線接口的微型計算機稱為微型計算機系統(tǒng)(Microcomputersystem)簡稱MCS.圖4.1為微處理機、微型計算機、微型計算機系統(tǒng)的相互關系。微型計算機的基本硬件構成如圖4.2所示3031322.微型計算機的種類微型計算機可以按組裝形式、微處理機位數(shù)、微處理機的用途范圍來進行分類。(1)按組裝形式分類按組裝形式可將微型計算機分為單片機、單板機和微機系統(tǒng)等。單片機在一塊集成電路芯片(LSI)上裝有CPU、ROM、RAM以及輸入/輸出端口電路,該芯片就被稱為單片微型計算機(SCM——SingleChipMicrocomputer)簡稱單片機,例如Intel公司的MCS48系列、51系列、96系列等。其外觀如圖4.3所示。3334特點:集成度高、功能強、通用性好;具有體積小、重量輕、能耗低、價格便宜,可靠性高,抗干擾能力強和使用方便等獨特優(yōu)點使用:它很容易使各種機電、家電產(chǎn)品智能化、小型化、過程控制自動化,在不顯著增加機電一體化系統(tǒng)(或產(chǎn)品)的體積、能耗及成本的情況下,大大增加其功能、提高其性能隨著單片機性能的提高和功能的增強,目前,單片機已廣泛應用于家用電器、機電產(chǎn)品、儀器儀表、辦公室自動化產(chǎn)品、機器人等機電一體化產(chǎn)品上.35
2)單板機。如圖4.4所示,將微型計算機的基本體系CPU、一定容量的ROM和RAM、輸入/輸出端口(I/O電路)以及一些輔助電路分別作成LSI芯片,并將它們配置在一塊印制電路板上,用電纜線和外部設備直接連接起來,這樣的計算機就叫做單板微型計算機,簡稱單板機。例如TP801是以8位微處理器(如Z80)為核心組裝的8位單板機,SDK86是以16位微處理器(Intdel8086/8088)為中央處理器組裝的16位單板機。3637在單板機的印制電路板上裝有一個十六進制的小鍵盤和數(shù)字顯示器,可完成一些簡單的數(shù)據(jù)處理和編輯功能。用單板機實現(xiàn)機電產(chǎn)品的機電一體化成本較低,在簡易數(shù)控機械設備、檢測設備、工業(yè)機器人等領域中得到了廣泛應用。
3)微型計算機系統(tǒng)根據(jù)需要,將微型計算機、ROM、RAM、I/O接口電路、電源等組裝在不同的印制電路板上,然后組裝在一個機箱內(nèi),再配上鍵盤、CRT顯示器、打印機、硬盤和軟盤驅(qū)動器等多種外圍設備和足夠的系統(tǒng)軟件,就構成了一個完整的微型計算機系統(tǒng)。38如目前國內(nèi)使用較多的IBM—PC(如IBMPCXT、80286,80386、80486、80586、PII、PⅢ、PⅣ等):CROMEMCO公司的SystemI、Ⅱ、Ⅲ等都是多板微型計算機系統(tǒng),如圖4.5所示。39(2)按微處理機位數(shù)分類按微處理機位數(shù)可將微型計算機分為位片、4位、8位、16位、32位和64位等機種。所謂位數(shù)是指微處理機并行處理的數(shù)據(jù)位數(shù),即可同時傳送數(shù)據(jù)的總線寬度。(3)按用途分類可以將微型計算機分為控制用和數(shù)據(jù)處理用微型計算機。對單片機來說,可分為通用型和專用型40工業(yè)控制計算機簡介工業(yè)控制計算機系統(tǒng)硬件組成的一般形式用在工業(yè)環(huán)境、適應工業(yè)要求的計算機系統(tǒng),是處理來自檢測傳感裝置的輸入,并把處理結果輸出到執(zhí)行機構來控制生產(chǎn)過程,同時可對生產(chǎn)進行監(jiān)督、管理的計算機系統(tǒng)。簡稱“工業(yè)控制機”或“工控機”典型的工業(yè)計算機測控系統(tǒng)如圖所示,工業(yè)控制機系統(tǒng)由兩大部分組成,即系統(tǒng)總線左面部分的計算機基本系統(tǒng)及系統(tǒng)總線右面部分的過程輸入/輸出(I/O)子系統(tǒng)4142工業(yè)控制機分類
1.可編程序控制器(PLC)PLC是從早期的繼電器邏輯控制系統(tǒng)與微型計算機技術相結合而發(fā)展起來的。它的低端即為繼電器邏輯控制的代用品,高端實際上是一種高性能的計算機實用控制系統(tǒng)。PLC是以微處理器為主的工業(yè)控制器,以掃描方式采集來自工業(yè)現(xiàn)場的信號。PLC的典型結構如圖所示。PLC主要功能有:條件控制即邏輯運算功能,定時控制,計數(shù)控制,步進控制,A/D、D/A轉(zhuǎn)換。數(shù)據(jù)處理和級間通訊等。PLC的特點是:工作可靠,可與工業(yè)現(xiàn)場信號直接連接,積木式組合,編程操作容易,易于安裝及維修等。43442.單回路調(diào)節(jié)器單回路調(diào)節(jié)器的基本構成方案如圖所示。它要處理數(shù)字和模擬兩種基本信號外部接口銜接器(PeripheralInterfaceAdapter,簡稱PIA)45單回路調(diào)節(jié)器多用于過程控制系統(tǒng),其控制算法多采用PID算法,可取代模擬控制儀表單回路調(diào)節(jié)器的主要特點是:(1)實現(xiàn)了儀表和計算機一體化;(2)具有豐富的運算和控制功能;(3)有專用的系統(tǒng)組態(tài)器;(4)人一機接口靈活;(5)便于級間通信;(6)有繼電保護和自診斷功能。目前,單回路調(diào)節(jié)器在控制算法上實現(xiàn)了自適應、自校正、自學習、自診斷和智能控制等控制方式。單回路調(diào)節(jié)器性能的提高,加速了儀表的更新?lián)Q代。目前,單回路調(diào)節(jié)器已成功地應用到各種過程控制領域。463.總線式工業(yè)控制機
總線式工業(yè)控制機是依賴于某種標準總線,按工業(yè)化標準設計,由包括主機在內(nèi)的各種I/O接口功能模板組成的計算機。例如,PC總線工業(yè)控制計算機、STD總線工業(yè)控制計算機以及Q—BUs、Multibus、VMEbus、PCL總線等??偩€式工業(yè)控制機的典型結構如圖所示??偩€式工業(yè)控制機與通用的商業(yè)化計算機比較具有如下特點:(1)取消,計算機系統(tǒng)母板;(2)采用開放式總線結構;(3)各種I/O功能模板可直接插在總線槽上:(4)選用工業(yè)化電源;(5)可按控制系統(tǒng)的要求配置相應的模板;(6)便于實現(xiàn)最小系統(tǒng)。4748
目前,這類工業(yè)控制機應用較為廣泛,如在過程控制、電力傳動、數(shù)控機床等方面STD總線工控機及PC總線工業(yè)控制機都有成功的經(jīng)驗。4.分布式計算機控制系統(tǒng)分布式計算機控制系統(tǒng)也稱為集散型計算機控制系統(tǒng),簡稱為集散控制系統(tǒng)。它是利用算機技術對生產(chǎn)過程進行集中監(jiān)視、操作、管理和分散控制。集散控制系統(tǒng)采用標準化、模塊化和系列化設計,由過程控制級、控制管理級和生產(chǎn)管理組成。它是一個以通信網(wǎng)絡為紐帶,采用集中顯示操作管理,控制相對分散的多級計算機網(wǎng)系統(tǒng)結構,具有配置靈活、組態(tài)方便等優(yōu)點。典型的具有三層結構模式的集散型控制系統(tǒng)如圖所示。4950集散型控制系統(tǒng)目前已廣泛地應用于大型工業(yè)生產(chǎn)過程控制及監(jiān)測系統(tǒng)中。特別是在大型鋼鐵廠、電站、機械及石油化工類企業(yè)中都有成功的應用的實例。514.28086/8088微機的硬件結構特點在PC系列微機中,應用較廣泛的是Intel公司的86系列。而8086/8088是Intel系列的16位/準16位微機,是86系列微機(包括Pentium和PentiumPro高性能奔騰)發(fā)展的基礎。8086與8088的內(nèi)部結構類似,都由算術邏輯單元ALU、累加器、專用和通用寄存器、指令寄存器、指令譯碼器、定時器控制電路等組成。
4·2·18086/8088CPU的主要結構特點1)8086/8088的內(nèi)部體系結構。其內(nèi)部的運算器、寄存器及內(nèi)部數(shù)據(jù)總線都為16位,其外部數(shù)據(jù)總線則不同:8086為16位、8088為8位。522)指令系統(tǒng)功能強。8086有100多條指令,能完成數(shù)據(jù)傳送、算術運算(包括乘法除法)、循環(huán)移位、字符串操作、控制傳送和處理器管理等工作。算術運算可以按字或字節(jié)帶符號或無符號、二進制或十進制的方式進行運算。3)多種尋址方式適用于高級語言中的數(shù)組和記錄等數(shù)據(jù)結構。4)20位地址線。尋址范圍可達1048576字節(jié)(即1M字節(jié))的存儲空間。5)16位I/O端口地址線??蓪ぶ?4K端口地址。536)中斷功能強??商幚韮?nèi)部軟件中斷和外部中斷請求,中斷源允許達256個。7)具有管理DMA操作和多處理器工作的能力。4·2.28086/8088CPU的最大與最小工作模式8086/8088CPU的這兩種模式是由CPU內(nèi)部的硬件結構決定的。當CPU的引腳MN/MX接到+5V時,8086/8088工作于最小模式MN/MX接地,8086/8088則工作于最大模式。54所謂最小工作模式是指單處理器系統(tǒng),即系統(tǒng)中只有8086或8088一個微處理器。在這種系統(tǒng)中,8086/8088提供所有的總線控制信號,因此,系統(tǒng)中的總線控制邏輯電路被減到最少。最大工作模式是相對于最小模式而言的。其特征是系統(tǒng)中可以包括兩個或多個微處理器,即允許多個處理器一起工作,系統(tǒng)的控制信號由總線控制器提供。在8086/8088最大工作模式系統(tǒng)中,主處理器為8086/8088,其它處理器稱為協(xié)處理器。與8086/8088配合的協(xié)處理器有兩個,一個是數(shù)值協(xié)處理器8087,一個是輸入輸出協(xié)處理器8089。558087是一種專用于數(shù)值運算的處理器,能實現(xiàn)多種類型的數(shù)值操作,比如高精度的整數(shù)和浮點運算,也可以進行超越函數(shù)(如三角函數(shù)、對數(shù)函數(shù))的計算。
8089有一套專門用于輸入/輸出操作的指令系統(tǒng),它可以直接為輸入/輸出設備服務,使8086/8088不再承擔這類工作。所以,在系統(tǒng)中加入8089后,會明顯提高主處理器的效率,尤其是在輸入/輸出頻繁的場合。
4.2.38086/8088引腳的功能定義8086/8088CPU是一個具有40根引腳、雙列直插式結構LSI芯片。圖4.6為8086/8088CPU的引腳功能定義。561、地址/數(shù)據(jù)復用線2、地址/狀態(tài)復用線3、高8位總線允許/狀態(tài)保持請求/保持響應數(shù)據(jù)發(fā)送/接受信號57其引腳可以分成五種類型:①只傳送固定信息的引腳。如引腳32為讀信號面,其傳遞的信息是固定的。②電平的高低代表不同信息的引腳。如引腳33為MN/MX,其高電平為最小工作模式,低電平為最大工作模式。③在最大和最小工作模式下有不同定義的引腳;④每一個引腳可傳送兩種信息即在不同時刻傳送不同信息的引腳。一般稱這類引腳為分時復用引腳,如AD?!獳D15,是地址和數(shù)據(jù)的分時復用線,A代表地址,D代表數(shù)據(jù)。⑤輸入和輸出分別傳送不同信息的引腳。如引腳31為RQ/GT0,輸入時傳送總線請求,輸出時傳送總線請求允許信號。58ADl5~ADo(AddressDataBus)(地址/數(shù)據(jù)總線)輸入/輸出、三態(tài)、分時復用。每個周期開始時(T1)用作地址總線,輸出存儲器或I/O口地址,然后8086內(nèi)部的一個多路開關將它轉(zhuǎn)換成數(shù)據(jù)總線Dl5~D0,用來傳輸數(shù)據(jù),直到總線周期結束。在DMA方式,這些信號線懸空。A19/S6、A18/S5、A17/S4、A16/A3(Address/Status)(地址/狀態(tài)線)三態(tài)輸出、分時輸出地址和狀態(tài)。S6始終為低電平,即恒等于零;S5表明中斷允許標志位的狀態(tài),S5=1時表明CPU可以響應中斷的請求,S5=0時表明禁止屏蔽中斷。S4和S3用于表示當前訪問存儲器所用的段存儲器,S4和S3的編碼狀態(tài)見表4.15960BHE/S7(BusHighEnable/status)(高8位總線允許/狀態(tài))輸出、三態(tài)、低電平有效。在T1時,它用于把數(shù)據(jù)的高8位送到數(shù)據(jù)總線D15~D8。連接到高8位數(shù)據(jù)總線上的字長為8位的外設,通常用BHE實現(xiàn)選通功能。在T2、T3、TW和T4時輸出S7,S7是高電平有效。在“保持響應”時,此引線處于高阻抗狀態(tài)。BHE和A0組合可以表示數(shù)據(jù)總線上傳送的信息是字還是字節(jié),且可指示字節(jié)在哪個8位數(shù)據(jù)線上傳送(見表4.2)。61HOLD(HoldRequest)(保持請求)輸入、高電平有效。它是總線上的其它主控設備請求使用總線的信號。
HLDA(HoldAcknowledge)(保持響應)輸出。若8086同意讓出總線,則向發(fā)出HOLD信號的主設備發(fā)出此保持響應HLDA信號。DT/R(DataTransmit/Receive)(數(shù)據(jù)發(fā)送/接收信號)輸出、三態(tài)。它控制雙向驅(qū)動器的數(shù)據(jù)傳輸方向。當它為低電平時,CPU接收數(shù)據(jù);當它為高電平時,CPU發(fā)送數(shù)據(jù)。INTR(InterruptRequest)(中斷請求)輸入、高電平有效。CPU在每條指令的最后一個時鐘周期對它進行取樣,然后決定是否進入中斷響應周期。在中斷響應周期中,CPU接收中斷源發(fā)來的中斷向量,借助設置在存儲器中的中斷向量表,查到相應的中斷服務程序的入口地址。
INTA(InterruptAcknowledge)(中斷響應)輸出、低電平有效。在中斷響應周期中,INTA用作讀選通信號。62RESET(復位)輸入、高電平有效。它至少保持四個時鐘周期的高電平,使CPU停止操作,并使內(nèi)部的標志寄存器、段寄存器和指令隊列復位到起始狀態(tài)。READY(準備就緒)輸入、高電平有效。這是被訪問的存儲器或I/O設備發(fā)來的回答信號,表示數(shù)據(jù)傳送已準備就緒。若CPU執(zhí)行存儲器讀/寫或I/O讀/寫操作,而存儲器或I/O設備沒有準備好,則在此線上給出低電平,CPU自動插入一個或幾個等待周期(Tw),其目的是使CPU能和各種不同速度的存儲器或I/0同步。63TEST(測試)輸入。當CPU執(zhí)行WAIT指令時,每隔5個時鐘周期對TEST信號進行一次測試。如果TEST是高電平時,CPU則進入踏步狀態(tài),重復執(zhí)行WAIT指令;如果TEST是低電平時,CPU執(zhí)行下一條指令。S2、S1、S0(總線周期狀態(tài))輸出。這三條信號線的編碼表達了CPU總線的操作性質(zhì)(見表4.3)。在最大模式中,CPU通過8288總線控制器利用這三個狀態(tài)信息產(chǎn)生訪問存儲器和I/O的控制信號。6465RQ/GT0、RQ/GT1(RequestGrant)(請求/同意)輸入/輸出、雙向。這兩條線是在最大方式中總線的請求/同意信號,是供兩個外部處理器用來請求和獲得總線控制權的。這兩個信號的功能和在最小方式中的HOLD/HLDA是一樣的。所不同的是這兩條信號線是雙向的,而HOLD和HLDA是單向的。這兩條線專為利用協(xié)處理器8087、I/O處理器8089(本地方式)來構成多處理器系統(tǒng)而設計的,這兩條線可同時聯(lián)系兩個主控設備。RQ/GT1的優(yōu)先權高于RQ/GT0LOCK(封鎖)輸出、三態(tài)、低電平有效。LOCK總線封鎖信號,用軟件設置,即在一條指令的前面加上“LOCK”前綴,在該條指令執(zhí)行過程中,此信號向總線上其它主控設備表明,不允許它們占用總線。該指令執(zhí)行完,它便失去作用。66QS0、QS1(指令隊列狀態(tài)信號)輸出。用它表示8086/8088指令隊列狀態(tài)。如表4.4所示。674.2.48086CPU最小工作模式系統(tǒng)的典型配置圖4.7a示出了8086系統(tǒng)最小工作模式下的典型配置之一。圖4.7b示出了8086系統(tǒng)最小工作模式下的典型配置之二68內(nèi)部三態(tài)門總是允許輸出的69704.2.58086CPU最大工作模式系統(tǒng)的典型配置圖4.8a示出了8086最大工作模式系統(tǒng)的典型配置之一,在結構上與最小模式系統(tǒng)的主要區(qū)別是增設了一個總線控制器8288和一個總線仲裁器8289,它們可以構成8086CPU為核心的多處理器系統(tǒng)。圖4.8b示出了8086最大工作模式系統(tǒng)的典型配置之二。圖中8288對CPU發(fā)出的控制信號進行變換和組合,發(fā)出對存儲器和I/O端口的讀/寫信號和對鎖存器8282、總線收發(fā)器8286的控制信號,使總線控制功能更加完善。71實現(xiàn)多處理器對總線資源的共享控制72由8288提前一個時鐘周期發(fā)出信號,以便與較慢的存儲器和外部設備配合。73由于與CPU一起使用的存儲器不只一個,這就產(chǎn)生選片問題。一般采用譯碼器來選片。圖4.14為3—8譯碼器(74LSl38)的引腳配置。該芯片有三個片選端G1、G1A和G2A當G1=1、G1A=0、G2A=0時,芯片才被選通,否則輸出均為高電平。A、B、C為三位輸入端。輸出端的邏輯功能如表4.6所示。74754.4單片機的結構特點及其最小應用系統(tǒng)單片機(Single-chipMicrocomputer)的典型結構如圖4.25所示,目前常用的MCS一48、5l、96系列單片機的主要性能參數(shù)見表4.15。其中MCS一51系列單片機是目前8位微機中性能價格比最佳,應用較多的系列產(chǎn)品。767778下面以MCS一51系列產(chǎn)品為例,對其結構特點和應用作簡要說明。
1.MCS一51系列單片機的結構特點MCS一51系列單片機包括8051、8751和8031三種產(chǎn)品,其硬件設計簡單靈活。8051片內(nèi)有4KB的ROM。用戶將已開發(fā)好的程序交給芯片制造廠商,在制造芯片時用掩膜工序?qū)⒂脩舫绦驅(qū)懭隦OM。顯然用戶本身是無法將自己的程序?qū)懭?051芯片的。程序一經(jīng)寫入片內(nèi)ROM,用戶也無法改變程序。所以8051用在批量較大(1000片以上)時,經(jīng)濟上才合算。79
8051單片機包含中央處理器、程序存儲器(ROM)、數(shù)據(jù)存儲器(RAM)、定時/計數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在我們分別加以說明:·中央處理器:
中央處理器(CPU)是整個單片機的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進制數(shù)據(jù)或代碼,CPU負責控制、指揮和調(diào)度整個單元系統(tǒng)協(xié)調(diào)的工作,完成運算和控制輸入輸出功能等操作。
80數(shù)據(jù)存儲器(RAM):
8051內(nèi)部有128個8位用戶數(shù)據(jù)存儲單元和128個專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的的RAM只有128個,可存放讀寫的數(shù)據(jù),運算的中間結果或用戶定義的字型表。
程序存儲器(ROM):
8051共有4096個8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格定時/計數(shù)器(ROM):
8051有兩個16位的可編程定時/計數(shù)器,以實現(xiàn)定時或計數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向
81并行輸入輸出(I/O)口:
8051共有4組8位I/O口(P0、P1、P2或P3),用于對外部數(shù)據(jù)的傳輸全雙工串行口:
8051內(nèi)置一個全雙工串行通信口,用于與其它設備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當同步移位器使用
中斷系統(tǒng):
8051具備較完善的中斷功能,有兩個外中斷、兩個定時/計數(shù)器中斷和一個串行中斷,可滿足不同的控制要求,并具有2級的優(yōu)先級別選擇。
時鐘電路:
8051內(nèi)置最高頻率達12MHz的時鐘電路,用于產(chǎn)生整個單片機運行的脈沖時序,但8051單片機需外置振蕩電容。8283MCS一51系列單片機的引腳如圖4.26所示,其引腳功能可分為三大部分:(1)I/O口線P0、P1、P2、P3共四個8位口。P0、P2:電路中包含一個數(shù)據(jù)輸出鎖存器和兩個三態(tài)數(shù)據(jù)輸入緩沖器,另外還有一個數(shù)據(jù)輸出的驅(qū)動和控制電路。這兩組口線用來作為CPU與外部數(shù)據(jù)存儲器、外部程序存儲器和I/O擴展口,而不能象P1、P3直接用作輸出口。
P2口作為外部數(shù)據(jù)存儲器或程序存儲器的地址總線的高8位輸出口AB8-AB15,P0口由ALE選通作為地址總線的低8位輸出口AB0-AB7。外部的程序存儲器由PSEN信號選通,數(shù)據(jù)存儲器則由WR和RD讀寫信號選通,因為216=64k,所以8051最大可外接64kB的程序存儲器和數(shù)據(jù)存儲器。84(3)電源及時鐘Vcc、Vss、XTAL1/XTAL28051的時鐘有兩種方式,一種是片內(nèi)時鐘振蕩方式,但需在18和19腳外接石英晶體(2-12MHz)和振蕩電容,振蕩電容的值一般取10p-30p。另外一種是外部時鐘方式,即將XTAL1接地,外部時鐘信號從XTAL2腳輸入。
(2)控制口線PSEN(片外取指控制)、ALE(地址鎖存控制)、EA(片外存儲器選擇)、RESET(復位控制)。P1口為8位準雙向口,每一位均可單獨定義為輸入或輸出口。P3口為準雙向口,為適應引腳的第二功能的需要,增加了第二功能控制邏輯,在真正的應用電路中,第二功能顯得更為重要
858687其應用特性為:1)I/O口線不能都用作用戶I/O線。除805l/8751外真正可完全為用戶使用的I/O口線只有P1口以及部分作為第一功能使用的P3口。2)I/O口的驅(qū)動能力。P0口可驅(qū)動8個TTL門電路,P1、P2、P3則只能驅(qū)動4個TTL門電路。883)P口是雙重功能口,其引腳功能如下:引腳名引腳號功能Vcc40875l的編程,805l或875l的檢驗和正常運行時的電源,+5V。Vss40接地電平。P0口39~328位雙向I/O口,也是訪問外存儲器的低位地址和數(shù)據(jù)總線。在編程和校驗時,用于數(shù)據(jù)的輸入和輸出。P1口1~88位雙向I/O口。在編程和校驗時,用于接受低位地址字節(jié)。89P2口21~288位雙向I/O口。在訪問外存儲器時,輸出高位地址字節(jié);在編程和檢驗時,它也能接受高位地址和控制信號。P3口10~178位雙向I/O口。實現(xiàn)第二功能時,必須在相應的輸出鎖存器里寫入“l(fā)”。RST/Vpp9從低到高(約3V)的跳變使805l復位。若Vcc降到低于規(guī)定值,而Vpp在規(guī)定值范圍(約為5V)內(nèi),則Vpp將為RAM提供備用電源。90當8051通電,時鐘電路開始工作,在RESET引腳上出現(xiàn)24個時鐘周期以上的高電平,系統(tǒng)即初始復位。初始化后,程序計數(shù)器PC指向0000H,P0-P3輸出口全部為高電平,堆棧指鐘寫入07H,其它專用寄存器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開始執(zhí)行程序。然而,初始復位不改變RAM(包括工作寄存器R0-R7)的狀態(tài),8051的初始態(tài)如下表:
8051的復位方式可以是自動復位,也可以是手動復位,見下圖。此外,RESET/Vpp還是一復用腳,Vcc掉電期間,此腳可接上備用電源,以保證單片機內(nèi)部RAM的數(shù)據(jù)不丟失。
9192ALE/PROG30提供地址鎖存允許輸出信號。在訪問外存儲器時,鎖存低位地址字節(jié)。在進行EPROM編程時,接受編程脈沖輸入。PSEN29程序存儲允許輸出信號。當訪問外部程序存儲器時,此腳輸出負脈沖選通信號,PC的16位地址數(shù)據(jù)將出現(xiàn)在P0和P2口上,外部程序存儲器則把指令數(shù)據(jù)放到P0口上,由CPU讀入并執(zhí)行
EA/Vpp31低電平時,8051執(zhí)行外程序存儲器的指令。8051和8751單片機,內(nèi)置有4kB的程序存儲器,高電平時,當PC小于4KB時,8051執(zhí)行片內(nèi)ROM/EPROM。而超過4kB地址則讀取外部指令數(shù)據(jù)該腳也接收21V的EPROM編程電壓。93XTALl18振蕩器的高增益放大器輸入,接晶振或外部源。XTAL219振蕩器的放大器輸出,或接收外振蕩器信號。4個并行口P0、Pl、P2、P3提供了32根I/O線。芯片內(nèi)每個口由一個鎖存器(特殊功能寄存器P0到P3)、一個輸出驅(qū)動器和二個輸入緩沖器組成???和口2的輸出驅(qū)動器以及口0的輸入緩沖器用于訪問外部存儲器。此時,口0分別輸出外部低位地址、讀/寫數(shù)據(jù),而口2輸出外部存儲器高位地址。94引腳第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外部中斷)P3.3INT1(外部中斷)P3.4T0(定時器0外部輸入)P3.5T1(定時器1外部輸入)P3.6WR(外部數(shù)據(jù)存儲器寫脈沖)P3.7RD(外部數(shù)據(jù)存儲器讀脈沖)口3的每一根線可執(zhí)行第二功能:952.MCS一51系列單片機的最小應用系統(tǒng)及其擴展單片機的應用系統(tǒng)構成如圖4.27961)8031最小應用系統(tǒng)。8031內(nèi)部不帶ROM,需外接EPROM作外部程序存儲器。97它是一片三態(tài)輸出8D觸發(fā)器,當OE=0時三態(tài)門導通,輸出線上為8位鎖存器的狀態(tài)。當OE=1時輸出線呈高阻抗狀態(tài)。G為鎖存信號輸入線,G=1時鎖存器輸出等于D端輸入,G輸入端負跳變將輸入信息鎖存到8位鎖存器中。982)8031的數(shù)據(jù)存儲器的擴展在8031單片機應用系統(tǒng)中,最常用的靜態(tài)RAM(數(shù)據(jù)存儲器)芯片有6116(2k×8)和6264(8k×8)兩種。993)8031輸入/輸出口的擴展在使用單片機的實時控制系統(tǒng)中,往往需要通信的外部設備或控制對象比較多,單片機本身的I/O口無法滿足要求,因而需要擴展I/O口。用戶可以把MCS一51的64KB數(shù)據(jù)存儲器地址空間的一部分(例如0DH~FFH)作為外部I/O的地址空間,CPU像訪問外部RAM單元一樣讀寫擴展的I/O口。常用的I/O接口電路是通用的可編程并行8位接口芯片(8255A)。圖4.31為8031最小應用系統(tǒng)的I/O擴展接口電路。1001014.5數(shù)字顯示器及鍵盤的接口電路1.數(shù)字顯示器的結構及其工作原理單片機應用系統(tǒng)中,常使用LED(發(fā)光二極管)、CRT顯示器和LCD(液晶顯示器)等作為顯示器件。其中LED和LCD成本低、配置靈活、與單片機接口方便,故應用廣泛。數(shù)碼顯示器是單片機應用產(chǎn)品中常用的廉價輸出設備。它是由若干個發(fā)光二極管組成的。當發(fā)光二極管導通時,相應的一個點或一個筆劃發(fā)亮??刂撇煌M合的二極管導通,就能顯示出各種字符。常用七段顯示器的結構如圖4.32所示。102103七段顯示塊與單片機接口非常容易。只要將一個8位并行輸出口與顯示塊的發(fā)光二極管引腳相連即可。8位并行輸出口輸出不同的字節(jié)數(shù)據(jù)即可獲得不同的數(shù)字或字符。通常將控制發(fā)光二極管的8位字節(jié)數(shù)據(jù)稱為段選碼。共陽極與共陰極的段選碼互為補數(shù)。點亮顯示器有靜態(tài)和動態(tài)兩種方法。所謂靜態(tài)顯示,就是當顯示器顯示某一個字符時,相應的發(fā)光二極管恒定地導通或截止。這種顯示方式每一位都需要一個8位輸出口控制,三位顯示器的接口邏輯,如圖4.33所示。104105當顯示器位數(shù)很少(僅一、二位)時,采用靜態(tài)顯示方法是適合的。當位數(shù)較多時,用靜態(tài)顯示所需的I/0口太多,一般采用動態(tài)顯示方法。所謂動態(tài)顯示就是一位一位地輪流點亮各位顯示器(掃描)。對于每一位顯示器來說,每隔一段時間點亮一次。顯示器的亮度既與導通電流有關,也和點亮時間與間隔時間的比例有關。8位共陰極顯示器和8155的接口邏輯如圖4.34所示。106107
根據(jù)圖可寫出動態(tài)顯示子程序如下:DATASEGMENTSEGTABLDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,DB7FH,6FH,77H,7CH,39H,5EH,79H.71H;共陰極LED顯示模型PORTCNLDW0803H.0802H,0801H,0800H;8255A端口地址DISBUF1DB09,08,07,06,05,04,03,02,01;DISPLY1子程序待顯示數(shù)NDBOADH;延時常數(shù)(DIMS)MODELDB?;存取位選模型108109DATAENDSSTACKSEGMENTDW100DUP(?)TOSLABELWORDSTACKENDSCODESEGMENTMAINPROCFARASSUMECS:CODE,DS:DATA,SS:STACK110START:MOVAX,STACK;設置堆棧段及棧指針MOVSS,AXMOVSP,OFFSETTOSPUSHDS;返回DOS斷口MOVAX,0PUSHAXMOVAX,DATA;設數(shù)據(jù)段MOVDS,AX111MOVAL,80H;設8255為基本I/O,A口輸出,B口輸出MOVDX,PORTCNL0UTDX,ALMOVAH,0CALLDISPLYl;調(diào)用并行口動態(tài)顯示子程序MAINENDPDISPLYlPROCNEAR;并行口動態(tài)顯示子程序MOVBX,OFFSETDISBUFl;建立數(shù)據(jù)顯示緩沖區(qū)地址指針MOVCH,80H;從最左邊第一位開始顯示MOVSI,OFFSETSEGTABL;建立顯示碼表地址指針112
PUSHS1PUSHDXMOVAH,OMOVAL,[BX];取待顯示數(shù)ADDSI,AX;換成顯示碼MOVAL,[SI];表中針對9的顯示碼MOVDX,[PORTCNL+4];從8255B口輸出段選模型OUTDX,ALDECDX;從A口輸出位選模型MOVAL,CHOUTDX,AL113CALLD1MS;延時1msANDAL,01H;8位全顯示完了嗎?JZDISPLY2;未完,轉(zhuǎn)DISPY2POPDX;恢復原指針POPSIRETDISPLY2:INCBX;求下一位待顯示數(shù)的地址SHRCH;求下一個位選碼POPDX;恢復原指針POPSIJMPDISPYl114DISPLY1ENDPD1MSPROCNEAR;延時lmS子程序MOVCL,NLOP:DECCLJNZLOPRETDlMSENDPCODEENDSENDMAIN115動態(tài)掃描顯示程序流程如圖4.35所示,其程序清單如下:116MOVR3,#7FH;存首位位選字MOVA,R3LD0:MOVDPTR,#7F0lH;指向PA口MOVX@DPTR,A;送位選字入PA口INCDPTR;指向PB口MOVA,@R0;查段選碼ADDA,#0DH;#DH為從查表指令下一個機器碼至段選表首的偏移量MOVCA,@A+PC;段選碼送PB口MOVX@DPTR,A117ACALLDL1;延時1msINCRO;指向顯示緩沖區(qū)下一單元MOVA,R3JNBACC,0,LD1;判斷八位顯示完?RRA;未顯示完,變?yōu)橄乱晃晃贿x字MOVR3,AAJMPLDO;轉(zhuǎn)顯示下一位LD1:RETDSEG:DB3FH,06H,5BH,4FH,66H,6DH,7DH,“0”“1”“2”“3”“4”“5”“6”07H,7FH,6FH,77H,7CH,39H,5EH,“7”“8”“9”“A”“B”“C”“D”11879H,71H“E’’“F’’DL1:MOVR7,#02H;延時子程序DL:MOVR6,#OFFHDL6:DJNZR6,DL6DJNZR7,DLRET1192.鍵盤、顯示器接口電路8279芯片為專用鍵盤顯示控制芯片。1203.行列式鍵盤接口電路行列式鍵盤又叫矩陣式鍵盤。用I/O口線組成行、列結構,按鍵設置在行列的交點上。1)鍵盤工作原理行列式鍵盤電路原理如圖4.37所示,按鍵設置在行、列線交點上,行、列線分別連接到按鍵開關的兩端。當行線通過上拉電阻接+5V時,被嵌位在高電平狀態(tài)。鍵盤中有無按鍵按下是由列線送入全掃描字、行線讀入行線狀態(tài)來判斷的。其方法是:將列線的所有I/O線均置成低電平,然后將行線電平狀態(tài)讀入累加器A中。如果有鍵按下,總會有一根行線電平被拉至低電平,從而使行輸入不全為1。121122其方法是:依次給列線送低電平,然后查所有行線狀態(tài),如果全為1,則所按下之鍵不在此列。如果不全為l,則所按下的鍵必在此列。而且是在與0電平行線相交的交點上的那個鍵。若有鍵按下,求出按下鍵是哪一個鍵并求鍵值求鍵值:鍵盤上的每個鍵都有一個鍵值。鍵值賦值的最直接辦法是將行、列線按二進制順序排列,當某一鍵按下時,鍵盤掃描程序執(zhí)行到給該列置0電平,讀出各行狀態(tài)為非全l狀態(tài),這時的行、列數(shù)據(jù)組合成鍵值。如圖4.37中鍵盤鍵值從左至右、從上至下依次是77、7B、7D、7E、B7、BB、BD、BE、…、E7、BD、ED、EE。這種負邏輯表示往往不夠直觀,因而采取行、列線加反相器或軟件求反方法把鍵盤改成正邏輯,這時鍵值依次為88、84、82、81、48、44、42、41、…、18、14、12、ll。123在許多場合下,采用依次排列鍵值,鍵值與鍵號相一致的方法:求鍵值時,采用行值、列值兩個寄存器(或存儲器)。每掃描一行后,如無鍵按下,則行值寄存器加1;若有鍵按下,寄存器保持原值,并轉(zhuǎn)至求相應的列值。此時,首先將列值讀數(shù)右移,每移位一次列值寄存器加1,直到有鍵按下(低電平)為止。最后將行值和列值相加,即得到鍵值(十六進制數(shù))。(2)鍵盤工作方式鍵盤的工作方式有編程掃描方式、定時掃描方式和中斷掃描方式三種。這里僅簡單介紹一下編程掃描方式。1241.程控掃描法
如圖所示為4×8矩陣組成的32鍵盤與微型機接口電路。在圖中,8255A端C為行掃描口,工作于輸出方式,端口A工作于輸入方式,用來讀入列值。由圖可知,8255A的口地址為8003H,8000H,8001H,8002H125126為了說明鍵的具體位置,事先按一定順序給每一個鍵編一個號,如圖中0、1、2、…1E、1F等,稱為鍵值。所謂鍵譯碼就是找出每個鍵的鍵值,然后根據(jù)鍵值確定其是功能鍵還是數(shù)字鍵,并分別進行處理。程控掃描法是由程序控制鍵掃描的方法。程控掃描法的步驟:
(1)判斷是否有鍵按下。使所有的行輸出均為低電平,然后從端口A讀入列值。如無鍵按下,則讀入值為FFH,否則不為FFH。
(2)去除鍵抖動。若有鍵按下,則延時10~20ms,再一次判斷有無鍵按下,如果仍有鍵按下,則確認。127(3)求出閉合鍵的鍵值。對鍵盤逐行掃描。使PC0=0,然后讀入列值,看其是否等于FFH,若等于FFH,說明該行無鍵按下。再對下一行掃描(即令PC1=0),如果列值不等于FFH,則說明該行有鍵按下,求出其鍵值。求鍵值時,要采用行值、列值兩個寄存器(或存儲器)。每掃描一行后,如無鍵按下,則行值寄存器加08H;若有鍵按下,行值寄存器保持原值,并轉(zhuǎn)至求相應的列值。此時,首先將列值讀數(shù)右移,每移位一次列值寄存器加1,直到有鍵按下(低電平)為止。最后將行值和列值相加,即得到鍵值(十六進制數(shù))。128例如,X2行Y3列鍵被按下,求其鍵值。第一次掃描X0行(PC0=0),無鍵按下,行值寄存器=00H+08H;再掃描X1行,仍無鍵按下,再加08H,即行值寄存器=08H+08H=10H;第三次掃描X2行,此時發(fā)現(xiàn)有鍵按下(列值不等于FFH),則行值寄存器=10H,不變,轉(zhuǎn)向求列值。將列值讀數(shù)逐位右移,第一次移位,無鍵按下,列值寄存器=00H+01H=01H;第二次移位,無鍵按下;第三次移位仍無鍵按下,列值寄存器:01H+01H+01H=03H;當?shù)谒拇我莆粫r,發(fā)現(xiàn)有鍵按下(低電平),列值寄存器=03H,不變。將行值與列值相加,即行值寄存器+列值寄存器=10H+03H=13H故該鍵值為13H。129(4)鍵每閉合一次,CPU只作一次處理,程序需等閉合鍵釋放后才對其進行處理。完成上述任務的程控掃描法程序流程圖如圖130調(diào)顯示程序掃描整個鍵盤
有鍵按下嗎?延時10ms
再次掃描整個鍵盤輸出使Xi為低電平有鍵按下嗎?此行有鍵按下嗎?程控掃描子程序行值+08H求下一行為低電平模型各行均掃描完了嗎?列數(shù)據(jù)右移1位列值+1延時計算鍵值鍵釋放了嗎?調(diào)查找功能鍵程序(BuFF)←鍵值有鍵按下嗎?YNYNYYNNYYNN131DESEGSEGMENTPORTCNLDW8003H8002H8001H8000H;8255端口地址BUFFDB?;鍵值緩沖單元.NUMDW0643H;延時子程序常數(shù).DESEGENDSSTACKSEGMENTDW32DUP(?)TOSLABELWORDSTACKENDSCODESEGMANTBEGINPROCFARASSUMECS:CODE,DS:DESEG,SS:STACKSTART:PUSHDS;保護:DOS端口132
SUBAX,AX PUSHAX MOVAX,DESEG;設數(shù)據(jù)段 MOVDS,AX MOVAX,STACK;設堆棧段 MOVSS,AX MOVSP,OFFSETTOS
MOVDX,PORTCNL;設8255為A口輸入,C口低4位輸出MOVAL,90H OUTDX,ALKEYSCAN:CALLDISUP;調(diào)顯示子程序10010000133KEYPRO:CALLKEXAM;調(diào)檢查是否有鍵按下子程序 JZKEYPRO;若無鍵按下,繼續(xù)檢查 CALLD10ms;若有鍵按下,延時10ms,以防抖動 CALLKEXAM;再次檢查是否有鍵按下 JZKEYPRO;若無鍵按下,再次轉(zhuǎn)KEYPRO,繼續(xù)KEY1:MOVAH,0FEH;輸出使第Xi行為低電平模型,查被按下的鍵 MOVBH,0;列值寄存器清零 MOVBL,0;行值寄存器清零 DECDX;輸出行的掃描模型(從8255C口) MOVAL,AHKEY2:OUTDX,AL檢查是否有鍵按下,且防抖134DECDX;DECDXINAL,DXCMPAL,0FFHJNZKEY3;有鍵按下,轉(zhuǎn)求列值ADDBL,08H;此行無鍵按下,行值加8ROLAH,1;求下一行掃描模型MOVAL,AH;輸出下一行掃描模型INCDXINCDX
ANDAL,10H;四行都掃描完了嗎?JNZKEY2;未掃描完,繼續(xù)JMPKEYSCAN;全部掃描完畢,等待下一次按鍵135KEY3:INCBH;此行有鍵按下,求列值
SHR AL,1
JCKEY3KEY4:CALLD10ms;防抖動 CALLKEXAM; JNZ KEY4;若有鍵按下,轉(zhuǎn)KEY4,等待鍵釋放 ADD BL,BH;計算鍵值DECBL MOV BUFF,BL;存鍵值CALLKEYPRO;轉(zhuǎn)鍵值處理程序BEGINENDPD10msPROCNEAR;延時10ms子程序?????D10msENDP比如列值讀數(shù)136KEXAMPROCNEAR;查是否有鍵按下子程序PUSH DXDEC DX;從C口輸出使所有行均為低電平模型MOV AL,00HOUT DX,ALDEC DX;從A口讀入列值DEC DXIN AL,DXCMP AL,0FFHPOP DX;恢復DX初值(控制口)
RETKEXAMENDPDISUPPROCNEAR?????DISPENDPCODEENDSENDSTART137鍵值處理程序取鍵值是功能鍵?轉(zhuǎn)功能鍵處理程序?是數(shù)字鍵?轉(zhuǎn)換成相應的ASCII碼0~9的數(shù)字?A~F的字母?顯示1382.中斷掃描法為了更進一步節(jié)省CPU的時間,可采用中斷掃描法。這種方法的實質(zhì)是,當沒有鍵入操作時,CPU不對鍵盤進行掃描,以節(jié)省出大量的時間對系統(tǒng)進行監(jiān)控和數(shù)據(jù)處理。一旦鍵盤輸入,則向CPU申請中斷。CPU響應中斷后,即轉(zhuǎn)到相應的中斷服務程序,對鍵盤進行掃描,以便判別鍵盤上閉合鍵的鍵號,并作相應的處理。圖3-7所示為中斷掃描法硬件接線圖。在圖3—7中,當沒有鍵按下時,所有列線均為1,經(jīng)與非門輸出一低電平到IRQ2(Intel8259)中斷申請線,此時沒有中斷申請。139一旦某一個鍵按下以后,則高電平經(jīng)過按鍵加到該鍵所在行的二極管正端,使二極管導通,同時,該列線輸出為低平,使與非門74LS30輸出為高電平,從而使IRQ2發(fā)生正跳變,向CPU申請中斷。CPU響應后,即轉(zhuǎn)到中斷掃描程序,查出鍵號,且作相應處理。其掃描方法與程控法相同,不同的只是當有鍵按下時,才進行掃描。若無鍵按下,CPU執(zhí)行主程序或處理其他事情。這樣可節(jié)省大量的空掃描時間,從而提高了計算機的工作效率。140編程掃描工作方式是利用CPU在完成其它工作的空閑,調(diào)用鍵盤掃描子程序,來響應鍵輸入要求。在執(zhí)行鍵功能程序時,CPU不再響應鍵輸入要求。下面以圖4.38的8155擴展I/O口組成的行列式鍵盤為例,介紹編程掃描工作方式的工作過程與鍵盤掃描子程序流程。在該鍵盤中,鍵值與鍵號相一致,依次排列為0~31,共32個鍵,組成4×8的行列式鍵盤。在鍵盤掃描子程序中完成下述幾個功能:1)判斷鍵盤上有無鍵按下。其方法為:PA口輸出全掃描字00H,讀PC口狀態(tài),PC0~PC3為全l,則鍵盤無鍵按下,若不全為1,則有鍵按下。1411422)去鍵的機械抖動影響其方法為,在判斷有鍵按下后,軟件延時一段時間(10-20ms),再判斷鍵盤狀態(tài),如果仍為有鍵按下狀態(tài),則認為有一個確定的鍵按下,否則按鍵抖動處理。3)求按下鍵的鍵號。a:按照行列式鍵盤工作原理,圖中32個鍵的鍵值應對應作如下分布(PA、PC口為二進制碼,X為任意值):(按行、列線按二進制順序排列)FEXEFDXEFBXEF7XEEFXEDFXEBFXE7FXEFEXDFDXDFBXDF7XDEFXDDFXDBFXD7FXDFEXBFDXBFBXBF7XBEFXBDFXBBFXB7FXBFEX7FDX7FBX7F7X7EFX7DFX7BFX77FX7143按順序排列的鍵號,其相對應的鍵號如圖中所示。b:按照行首鍵號與列號相加的辦法處理,每行的行首鍵號依次為:0,8,16,24,列首依列線順序為0~7.4)為保證鍵閉合一次,CPU僅進行一次功能操作。其方法為,等待鍵釋放以后再將鍵號送入累加器A中
圖4.39為鍵掃描了程序框圖。編程掃描工作方式只有在CPU空閑時才調(diào)用鍵盤掃描子程序。1441454.6可編程邏輯控制器(PLC)的構成及應用舉例(1)PLC的構成及工作原理可編程邏輯控制器(PLC)是在工業(yè)環(huán)境中使用的數(shù)字操作的電子系統(tǒng)。它使用可編程存儲器儲存用戶設計的程序指令,這些指令用來實現(xiàn)邏輯運算、順序操作、定時、計數(shù)及算術運算和過數(shù)字或模擬輸入/輸出來控制各種機電一體化系統(tǒng)。它具有程序可變、抗干擾能力強、可靠性高、功能強、體積小、耗電低,特別是易于編程、使用操作方便、便于維修、價格便宜等特點,具有泛的應用前景。146PLC實質(zhì)上是一臺面向用戶的專用數(shù)字控制計算機。圖4.40為PLC的硬件結構框圖,PLC通過輸入/輸出接口與被控對象(工作機)相連接。147PLC主要是利用邏輯運算以實現(xiàn)各種開關量的控制。首先掃描輸入量(繼電器觸點、限位開關、按鈕等),然后把這些輸入量與程序規(guī)定的條件相比較,從而使輸出接通或斷開。實際上,PLC的執(zhí)行過程就是順序程序的執(zhí)行過程,也就是按照一定的順序從梯形圖的第一張執(zhí)行到最后一張,然后再次從第一張開始執(zhí)行,見圖4.41所示。順序程序是根據(jù)梯形圖所表達的順序過程用PLC指令編寫的程序,順序程序存儲在PLC控制板的EPROM中,它是由PLC編程器寫入EPROM中的。PLC編程器是編制順序程序不可缺少的輔助工具。它可以用來輸入順序程序、測試或修改順序程序以及把順序程序?qū)懭隕PROM中。順序程序的編制流程如圖4.42所示。1481494.7微機應用系統(tǒng)的輸入/輸出控制的可靠性設計微機應用系統(tǒng)的輸入/輸出是通過硬件電路和軟件共同完成的。對其硬件電路的要求是:①能夠可靠地傳遞控制信息,并能夠輸入有關運動機構的狀態(tài)信息;②能夠進行相應的信息轉(zhuǎn)換以滿足微機對輸入/輸出信息的轉(zhuǎn)換要求,如D/A、A/D轉(zhuǎn)換,并行數(shù)字量轉(zhuǎn)換成串行電脈沖、電平的轉(zhuǎn)換與匹配,電量與非電量之間的轉(zhuǎn)換,弱電與強電的轉(zhuǎn)換以及功率的匹配等;③應具有強的阻斷干擾信號進入微機控制系統(tǒng)的能力,以提高系統(tǒng)的可靠性。1501.光電隔離電路設計(1)光電隔離電路為了防止強電干擾及其它干擾信號通過I/O控制電路進入計算機,影響其工作,通常的辦法是首先采用濾波吸收,抑制干擾信號的產(chǎn)生,然后采用光電隔離的辦法,使微機與強電部件不共地,阻斷干擾信號的傳導。光電隔離電路主要由光電耦合器的光電轉(zhuǎn)換元件組成,如圖4.46所示。151152光電隔離電路的作用主要有以下幾個方面:1)可將輸入與輸出端兩部分電路的地線分開,各自使用一套電源供電。這樣信息通過光電轉(zhuǎn)換,單向傳遞,又由于光電耦合器輸入與輸出端之間絕緣電阻非常大(一般為1011~1012Ω
),寄生電容很小(一般為0.5~2pF),因此,干擾信號很難從輸出端反饋到輸入端,從而起到隔離作用。2)可以進行電平轉(zhuǎn)換。如圖4.46a所示電路,通過光電耦合器可以很方便地把微機的輸出信號變?yōu)?2V。3)提高驅(qū)動能力。隔離驅(qū)動用光電耦合器件,如達林頓晶體管輸出和晶閘管輸出型光電耦合器件,不但具有隔離功能,而且還具有較強的驅(qū)動負載能力。微機輸出信號通過這種光電耦合器件后,就能直接驅(qū)動負載。通常使用的光電耦合器如4.47所示。153用在100kHz以下的頻率信號輸出部分采用光敏二極管和高速開關管組成復合結構,具有較高的響應速度.以光敏二極管和放大晶體管構成達林頓管輸出,直接用于驅(qū)動較低頻率的負載輸出部分為光控晶閘管,用在大功率的隔離驅(qū)動場合154(2)光電耦合隔離電路應用采用光電耦合器可以將微機與前向、后向通道及其它相關部分切斷與電路的聯(lián)系,從而有效地防止干擾信號進入微機,其基本配置如圖4.48所示。155在微機應用系統(tǒng)中,由于端口的性質(zhì)不同,接口電路也有所不同.如803l的P3口,為準雙向口,作為輸入時拉成低電平,可由任何TTL或MOs電路所驅(qū)動。當外部輸入信號為低電平時,P3口被拉成高電平,它與光耦合器的連接如圖4.49所示。156采用這種電路可使開機復位時不因P1口強迫置成高電平而輸出不需要的信號由于8155、8255在上電復位時,端口初置為輸入狀態(tài),即高阻抗狀態(tài),為不使開機輸出額外的信息,晶體管基極應拉成低電平157如要輸出較大電流以驅(qū)動輸出設備,如繼電器、電磁離合器等,則應接成達林頓型,如圖4.52所示。為了進一步提高普通型光耦合器的光耦合速度,可采用圖4.53電路。在較惡劣環(huán)境中的前向通道,為了減少通道及電源的干擾,V/F轉(zhuǎn)換器(LM331)的頻率輸出可采用光耦合器隔離方法,使V/F轉(zhuǎn)換器與微機無電路聯(lián)系,如圖4.54所示。1581591602.信息轉(zhuǎn)換電路設計(1)弱電轉(zhuǎn)強電電路微機應用系統(tǒng)中的微機發(fā)出的控制信號一般要經(jīng)過功率放大后,才能驅(qū)動各類執(zhí)行元件,如圖4.55所示的幾種電路。繼電器交流接觸器161(2)數(shù)字脈沖轉(zhuǎn)換例如圖4.56所示的三相步進電動機驅(qū)動接口電路。該電路中電動機的每相驅(qū)動電路都單獨有光電隔離和放大電路,并聯(lián)接到微機并行輸出端口的一個二進制位上。脈沖信號經(jīng)光電隔離電路耦合、各相放大電路放大后,控制步進電動機按照一定方向轉(zhuǎn)動。(3)數(shù)/模(D/A)、模/數(shù)(A/D)轉(zhuǎn)換微機應用系統(tǒng)I/O控制回路中,還常用到D/A、A/D轉(zhuǎn)換。例如圖4.57所示的采用直流伺服電動機的控制回路中,就增加了D/A轉(zhuǎn)換環(huán)節(jié)。162163164(4)電量轉(zhuǎn)非電量I/O控制回路中還有一種電量到非電量的轉(zhuǎn)換。例如,開關量的電液轉(zhuǎn)換元件是電磁閥,這種電量到非電量的轉(zhuǎn)換可以采用圖4.55a和b所示的辦法實現(xiàn),其中DT就表示液壓電磁閥。另外一種電液轉(zhuǎn)換元件是電液伺服閥,在電液伺服控制電路中,需要數(shù)/模(D/A)轉(zhuǎn)換后的模擬信號,而且,也要經(jīng)過適當放大后,才能驅(qū)動電液伺服閥中的電磁元件。這種控制的流程框圖如圖4.58所示。1651664.8常用檢測傳感器的性能特點、選用及其微機接口4.8.1檢測傳感器的分類和基本要求傳感器是將機電一體化系統(tǒng)中被檢測對象的各種物理變化量變?yōu)殡娦盘柕囊环N變換器。傳感器在機電一體化設備中是不可缺少的組成部分,是整個設備的感覺器官,監(jiān)視、檢測著整個生產(chǎn)過程,以保證最穩(wěn)定的工作狀況,同時可用作數(shù)字顯示裝置。在閉環(huán)伺服系統(tǒng)中,傳感器又用作位置環(huán)的檢測反饋器件,直接影響到工作機械的運動性能、控制精度和智能水平。167按測量轉(zhuǎn)換形式可分為:(一)、分類如圖168169計數(shù)型——脈沖數(shù)字型(增量式光電碼盤和檢測光柵)代碼型——編碼器(絕對值型光電編碼器、接觸式編碼板等)。輸出的是代碼170按功能可分為位置式、位移式、角度式、速度式、加速度式、溫度式、壓力式、流量式、振動式等傳感器。表4.18傳感器按其工作原理還可分為壓電式、磁電式、光電式、熱電式、電阻式、電容式、電感式傳感器。171各種測量傳感器的基本特性參數(shù)如表4.19所示。172173機電一體化系統(tǒng)對檢測傳感器的基本要求:①體積小、重量輕、對整機的適應性好;②精度和靈敏度高、響應快、穩(wěn)定性好、信噪比高;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人民版道德與法治九年級上冊第七課《生命之間》配套聽課評課記錄
- 湘教版七年級數(shù)學下冊第2章2.1.2冪的乘方與積的乘方(第1課時)聽評課記錄
- 人教版七年級數(shù)學上冊:1.2.1《有理數(shù)》聽評課記錄
- 冀教版數(shù)學九年級上冊《平行線分線段成比例》聽評課記錄1
- 《兩漢的科技和文化》聽課評課記錄1(新部編人教版七年級上冊歷史)
- 蘇教版四年級數(shù)學下冊期末復習口算練習題三
- 湘教版數(shù)學八年級上冊《小結練習》聽評課記錄
- 聽評課記錄數(shù)學二年級
- 小學生營養(yǎng)餐飯?zhí)霉ぷ魅藛T聘用合同范本
- 人員派遣租賃協(xié)議書范本
- (正式版)FZ∕T 80014-2024 潔凈室服裝 通 用技術規(guī)范
- 新起點英語二年級下冊全冊教案
- 【幼兒園戶外體育活動材料投放的現(xiàn)狀調(diào)查報告(定量論文)8700字】
- 剪映專業(yè)版:PC端短視頻制作(全彩慕課版) 課件 第3章 短視頻剪輯快速入門
- 湖南省長沙市開福區(qū)青竹湖湘一外國語學校2023-2024學年九年級下學期一模歷史試題
- 帶狀皰疹與帶狀皰疹后遺神經(jīng)痛(HZ與PHN)
- 漢密爾頓抑郁和焦慮量表
- 風電場事故案例分析
- 前列腺癌的診斷與治療
- 人教版八年級數(shù)學初中數(shù)學《平行四邊形》單元教材教學分析
- EPC項目設計及施工的配合
評論
0/150
提交評論