微型計(jì)算機(jī)原理及應(yīng)用全套教學(xué)課件_第1頁
微型計(jì)算機(jī)原理及應(yīng)用全套教學(xué)課件_第2頁
微型計(jì)算機(jī)原理及應(yīng)用全套教學(xué)課件_第3頁
微型計(jì)算機(jī)原理及應(yīng)用全套教學(xué)課件_第4頁
微型計(jì)算機(jī)原理及應(yīng)用全套教學(xué)課件_第5頁
已閱讀5頁,還剩564頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

微型計(jì)算機(jī)原理及應(yīng)用全套可編輯PPT課件1.1概述圖靈,英國(guó)數(shù)學(xué)家,1936年提出“圖靈機(jī)”設(shè)想足夠長(zhǎng)的磁帶讀寫磁頭有限的控制部件馮.諾依曼,美籍匈牙利數(shù)學(xué)家,1946年設(shè)計(jì)并建立馮.諾依曼計(jì)算機(jī)體系1.1.1計(jì)算機(jī)的發(fā)展歷史馮.諾伊曼體系結(jié)構(gòu)①用二進(jìn)制形式表示數(shù)據(jù)和指令;②存儲(chǔ)程序控制:程序和數(shù)據(jù)預(yù)先存入存儲(chǔ)器③確立了計(jì)算機(jī)系統(tǒng)的5大基本部件。

運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備、輸出設(shè)備1946年,“莫爾小組”

世界上第一臺(tái)計(jì)算機(jī)

電子數(shù)字積分器與計(jì)算器(ENIC)字長(zhǎng)12位、5000次/S

體積大、重量大、功耗大、昂貴計(jì)算機(jī)發(fā)展的四個(gè)時(shí)代微處理器(MPU)……..微處理器(MPU)

單片機(jī)微型計(jì)算機(jī)由單片集成電路芯片構(gòu)成。CPU存儲(chǔ)器定時(shí)器/計(jì)數(shù)器I/O接口單片機(jī)(Singlechip)微控制器(MCU)嵌入式微控制器(EMCU)1.1.3單片微型計(jì)算機(jī)發(fā)展歷史MCS是Intel公司生產(chǎn)單片機(jī)的系列號(hào),主要有MCS-48、MCS-51、MCS-96系列。MCS-51系列單片機(jī)包括3個(gè)基本型,分別是8031(80C31)、8051(80C51)、8751(87C51)。20世紀(jì)80年代中期以后,Intel公司以專利形式將8051技術(shù)轉(zhuǎn)讓給許多半導(dǎo)體廠家ATMEL、PHILIPS、ANALOG、DEVICE、DALLAS等,所以這些廠家生產(chǎn)的單片機(jī)與MCS-51系列單片機(jī)兼容。

第一階段(1976~1978年)為低性能單片機(jī)的探索階段。第二階段(1978~1982年)為高性能單片機(jī)階段。第三階段(1982~1990年)為16位單片機(jī)階段。第四階段(1990年~)為微控制器的全面發(fā)展階段?!?.2微型計(jì)算機(jī)中數(shù)制和數(shù)的表示數(shù)制是人們利用符號(hào)來記數(shù)的科學(xué)方法。1.2.1.數(shù)制

數(shù)制的數(shù)碼個(gè)數(shù)稱為基,數(shù)制的每一位所具有的值稱為權(quán),權(quán)實(shí)際上是以基為底的冪。十進(jìn)制(D)0,1,2,3,4,5,6,7,8,9基為10二進(jìn)制(B)0,1基為2十六進(jìn)制(H)0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F基為16

1.十進(jìn)制轉(zhuǎn)換為二進(jìn)制十進(jìn)制整數(shù)轉(zhuǎn)換二進(jìn)制除2反向取余十進(jìn)制小數(shù)轉(zhuǎn)換二進(jìn)制乘2正向取整

1.3.2.數(shù)制的轉(zhuǎn)換方法用8位二進(jìn)制表示53的二進(jìn)制形式為:

00110101B。0.625對(duì)應(yīng)的二進(jìn)制數(shù)為0.1010特別指出:若小數(shù)位不是0.00,則還得繼續(xù)乘下去,直至變成0.00為止,也有可能永遠(yuǎn)不會(huì)出現(xiàn)0.00。

2.二進(jìn)制轉(zhuǎn)換為十進(jìn)制二進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)的方法是由二進(jìn)制數(shù)各位的權(quán)乘以各位的數(shù)碼(0或1)再加起來就得到對(duì)應(yīng)的十進(jìn)制數(shù)。101011B=1×25+0×24+1×23+0×22+1×21+1×20=43D0.101B=1×2-1+0×2-2+1×2-3=0.625D

3.十進(jìn)制轉(zhuǎn)換為十六進(jìn)制十進(jìn)制整數(shù)轉(zhuǎn)換十六進(jìn)制除16反向取余十進(jìn)制小數(shù)轉(zhuǎn)換十六進(jìn)制乘16正向取整53的兩位十六進(jìn)制形式表示為35H。1.2.3.計(jì)算機(jī)中數(shù)的表示

機(jī)器數(shù)是指用二進(jìn)制表示的計(jì)算機(jī)能夠直接識(shí)別的數(shù),機(jī)器數(shù)表示數(shù)的范圍取決于計(jì)算機(jī)的位數(shù)。真值是機(jī)器數(shù)對(duì)應(yīng)的真實(shí)數(shù)值習(xí)慣上人們用帶正負(fù)號(hào)的十進(jìn)制表示。1.機(jī)器數(shù)和真值

機(jī)器數(shù)可分為無符號(hào)數(shù)和有符號(hào)數(shù)。無符號(hào)數(shù)只能表示0和正數(shù),有符號(hào)數(shù)能表示正數(shù)、負(fù)數(shù)和0。2.機(jī)器數(shù)的分類1)無符號(hào)數(shù)

無符號(hào)數(shù)的特點(diǎn)是數(shù)的所有二進(jìn)制位均為數(shù)值位,主要用來表示計(jì)算機(jī)中的地址值、索引值、指針等。

有符號(hào)數(shù)的特點(diǎn)是用二進(jìn)制0、1表示符號(hào),計(jì)算機(jī)科學(xué)中規(guī)定二進(jìn)制0代表正符號(hào),二進(jìn)制1代表負(fù)符號(hào)。2)有符號(hào)數(shù)3有符號(hào)數(shù)的定點(diǎn)與浮點(diǎn)表示

計(jì)算機(jī)中的有符號(hào)數(shù)表示形式可分為定點(diǎn)表示和浮點(diǎn)表示兩種。用定點(diǎn)表示有符號(hào)數(shù)的計(jì)算機(jī)稱為定點(diǎn)計(jì)算機(jī)(例如MCS-51單片機(jī)),用浮點(diǎn)表示有符號(hào)數(shù)的計(jì)算機(jī)稱為浮點(diǎn)計(jì)算機(jī)(例如PC機(jī))。1).有符號(hào)數(shù)定點(diǎn)表示

定點(diǎn)表示有兩種形式:純整數(shù)形式和純小數(shù)形式,定點(diǎn)機(jī)中通常采用純整數(shù)形式,用8位二進(jìn)制數(shù)表示一個(gè)純整數(shù),格式如下:馮.諾依曼體系計(jì)算機(jī),用()形式表示數(shù)據(jù)和指令。程序代碼二進(jìn)制十進(jìn)制十六進(jìn)制ABCD提交單選題1分2).有符號(hào)數(shù)浮點(diǎn)表示對(duì)于任意一個(gè)有符號(hào)二進(jìn)制數(shù)N可以表示為N=S×2P,其中S是數(shù)N的尾數(shù),P是數(shù)N的階碼,階碼P可以根據(jù)小數(shù)點(diǎn)的位置取不同的數(shù)值。機(jī)器數(shù)的浮點(diǎn)規(guī)格化數(shù)形式,即通過改變二進(jìn)制浮點(diǎn)數(shù)的階碼值將其尾數(shù)設(shè)為1/2≤|S|<1,即保證尾數(shù)的小數(shù)點(diǎn)后面的一位必須為1。

其表示格式如下:Pf表示階碼的正負(fù),Sf表示尾數(shù)的正負(fù)。N=0.0011010B×200B規(guī)格化數(shù)形式N=0.11010B×2–10B設(shè)計(jì)算機(jī)位數(shù)為8位,且階碼和尾數(shù)位數(shù)相等,則二進(jìn)制數(shù)N的機(jī)器數(shù)形式表示如下:由于計(jì)算機(jī)位數(shù)有限,尾數(shù)超出三位小數(shù)的部分自動(dòng)舍去,因此用浮點(diǎn)法表示數(shù)有可能產(chǎn)生誤差。4.機(jī)器數(shù)的編碼形式1)原碼

計(jì)算機(jī)科學(xué)中,機(jī)器數(shù)常采用三種編碼形式,即原碼、反碼和補(bǔ)碼。無符號(hào)數(shù)只有原碼形式,而有符號(hào)數(shù)具有原碼、反碼和補(bǔ)碼三種形式。

無符號(hào)數(shù)原碼為十進(jìn)制自然數(shù)直接轉(zhuǎn)換后的二進(jìn)制序列,8位無符號(hào)數(shù)原碼可表示28=256個(gè)自然數(shù),范圍是0~255,16位無符號(hào)數(shù)原碼可表示216=65536個(gè)自然數(shù),范圍是0~65535。

有符號(hào)數(shù)原碼為十進(jìn)制有理數(shù)轉(zhuǎn)換后的二進(jìn)制序列,其最高位表示符號(hào)位,其它位存放該數(shù)的絕對(duì)值。8位定點(diǎn)有符號(hào)數(shù)的原碼可表示256(=28)個(gè)數(shù),范圍是-127~+127,16位定點(diǎn)有符號(hào)數(shù)原碼表可表示65536(=216)個(gè)數(shù),范圍是-32767~+32767。需要指出,定點(diǎn)有符號(hào)數(shù)原碼包含+0和-0,+0的8位原碼為00000000B,-0的8位原碼為10000000B。優(yōu)點(diǎn):簡(jiǎn)單直觀,與真值轉(zhuǎn)換容易;缺點(diǎn):由于符號(hào)位問題,不便直接應(yīng)用于二

進(jìn)制加減運(yùn)算。2)反碼

有符號(hào)數(shù)原碼表示數(shù)的最大問題就在于1個(gè)數(shù)加上它的相反數(shù)不等于0,反碼的設(shè)計(jì)思想基于該問題提出。計(jì)算機(jī)科學(xué)中,規(guī)定正數(shù)的反碼等于原碼,負(fù)數(shù)的反碼為其原碼符號(hào)位不變,其它位按位取反。8位定點(diǎn)有符號(hào)數(shù)的反碼可表示256(=28)個(gè)數(shù),范圍是-127~+127,16位定點(diǎn)有符號(hào)數(shù)反碼表可表示65536(=216)個(gè)數(shù),范圍是-32767~+32767。需要指出,定點(diǎn)有符號(hào)數(shù)反碼包含+0和-0,+0的8位反碼為00000000B,-0的8位反碼為11111111B。同余數(shù)3)補(bǔ)碼[-128]補(bǔ)=10000000B[-32768]補(bǔ)=1000000000000000B

計(jì)算機(jī)科學(xué)中采用補(bǔ)碼思想引入有符號(hào)數(shù)的補(bǔ)碼形式,正數(shù)的補(bǔ)碼等于它的原碼,負(fù)數(shù)的補(bǔ)碼等于反碼加1。8位定點(diǎn)有符號(hào)數(shù)的補(bǔ)碼可表示256(=28)個(gè)數(shù),范圍是-128~+127,16位定點(diǎn)有符號(hào)數(shù)補(bǔ)碼表可表示65536(=216)個(gè)數(shù),范圍是-32768~+32767。特別指出§1.3.1微型計(jì)算機(jī)中的運(yùn)算電路

計(jì)算機(jī)中的運(yùn)算電路是由加法器構(gòu)成的,只會(huì)做二進(jìn)制加法運(yùn)算。全加器真值表Si=Ai+Bi+Ci§1.3微型計(jì)算機(jī)運(yùn)算電路及補(bǔ)碼運(yùn)算規(guī)則8位二進(jìn)制運(yùn)算電路A0A1A2A3A4A5A6A7為被加數(shù)/被減數(shù);B0B1B2B3B4B5B6B7為加數(shù)/減數(shù);S0S1S2S3S4S5S6S7

為和或差;C1C2C3C4C5C6C7C8為加法運(yùn)算中低位向高位的進(jìn)位;

SUB為加減控制信號(hào)。當(dāng)執(zhí)行減法指令時(shí),SUB=1,圖中各異或邏輯門均為反相邏輯門,則Si=Ai-Bi+Ci=Ai+Bi+Ci,并且FA0連同SUB的狀態(tài)一起做加法運(yùn)算。當(dāng)執(zhí)行加法運(yùn)算指令時(shí),SUB=0,圖中各異或邏輯門均為同相邏輯門,對(duì)加數(shù)沒有任何影響則Si=Ai+Bi+Ci;

計(jì)算機(jī)科學(xué)中將按位求反末位加1的操作稱為求補(bǔ)運(yùn)算。

圖中OV是溢出標(biāo)志位,運(yùn)算結(jié)果有溢出時(shí),OV=1,否則OV=0,溢出的原因是運(yùn)算結(jié)果超出了計(jì)算機(jī)中數(shù)的表示范圍。

圖中Cy是進(jìn)位(或借位)的狀態(tài)標(biāo)志位,做加法運(yùn)算時(shí)若最高位(FA7)有進(jìn)位,則Cy=1,否則Cy=0;做減法運(yùn)算時(shí)若FA7位無進(jìn)位,則Cy=1,否則Cy=0。Cy=C8⊕SUBOV=C7

C81.3.2微型計(jì)算機(jī)中的補(bǔ)碼運(yùn)算規(guī)則研究表明,計(jì)算機(jī)中的有符號(hào)數(shù)一律用補(bǔ)碼的形式表示的,兩個(gè)數(shù)加法運(yùn)算時(shí),應(yīng)將參加運(yùn)算的數(shù)化成補(bǔ)碼形式,相加后的結(jié)果仍為補(bǔ)碼,對(duì)于有符號(hào)數(shù)來說,符號(hào)位無須單獨(dú)處理,符號(hào)位可直接參加運(yùn)算,不影響最終結(jié)果。運(yùn)算規(guī)則如下:1)[X]補(bǔ)+[Y]補(bǔ)=[X+Y]補(bǔ)2)[X]補(bǔ)-[Y]補(bǔ)=[X-Y]補(bǔ)3)[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)

分析規(guī)則2)和規(guī)則3)可知,只要把-Y的補(bǔ)碼求出來,就能將減法問題轉(zhuǎn)化為加法問題,這就意味著在微處理器中只需要用加法器電路就能同時(shí)解決加減運(yùn)算。[-Y]補(bǔ)的補(bǔ)碼實(shí)際上是[Y]補(bǔ)求補(bǔ)運(yùn)算的結(jié)果,即[Y]補(bǔ)按位取反末位加1。該規(guī)則完全適用于無符號(hào)數(shù)。1)[X]補(bǔ)+[Y]補(bǔ)=[X+Y]補(bǔ)2)[X]補(bǔ)-[Y]補(bǔ)=[X-Y]補(bǔ)3)[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)

§1.3.3機(jī)器數(shù)補(bǔ)碼運(yùn)算規(guī)則實(shí)例解析

例23H+2AH

當(dāng)作有符號(hào)數(shù)時(shí):23H+2AH=[35]補(bǔ)+[42]補(bǔ)=[77]補(bǔ)=4DH,滿足[X]補(bǔ)+[Y]補(bǔ)=[X+Y]補(bǔ)規(guī)則,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕0=0,真值為77。執(zhí)行加法指令,SUB=0

當(dāng)作無符號(hào)數(shù)時(shí):23H+2AH=[35]原+[42]原=[35]補(bǔ)+[42]補(bǔ)=[77]補(bǔ)=4DH,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕0=0,真值為77。

例23H+2AH執(zhí)行加法指令,SUB=0例

23H-D6H執(zhí)行減法指令,SUB=1

當(dāng)作有符號(hào)數(shù)時(shí):23H-D6H=[35]補(bǔ)-[-42]補(bǔ)=[35]補(bǔ)+[42]補(bǔ)=[77]補(bǔ)=4DH,同時(shí)滿足[X]補(bǔ)-[Y]補(bǔ)=[X-Y]補(bǔ)和

[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)規(guī)則,Cy=C8⊕SUB=0⊕1=1,OV=C8⊕C7=0⊕0=0,真值為77?;A(chǔ)篇第1章微型計(jì)算機(jī)原理基礎(chǔ)知識(shí)

當(dāng)作無符號(hào)數(shù)時(shí):23H-D6H=[35]原-[214]原=[35]補(bǔ)+[42]補(bǔ)=[77]補(bǔ)=4DH,Cy=C8⊕SUB=0⊕1=1,OV=C8⊕C7=0⊕0=0,運(yùn)算結(jié)果對(duì)應(yīng)無符號(hào)數(shù)77,顯然真值不合理(Cy=1),此時(shí)可對(duì)運(yùn)算結(jié)果進(jìn)行調(diào)整,其真值應(yīng)為77-256=-179。例

23H-D6H執(zhí)行減法指令,SUB=1例

23H-2AH執(zhí)行減法指令,SUB=1

當(dāng)作有符號(hào)數(shù)時(shí):23H-2AH=[35]補(bǔ)-[42]補(bǔ)=[35]補(bǔ)+[-42]補(bǔ)=[-7]補(bǔ)=F9H,同時(shí)滿足[X]補(bǔ)-[Y]補(bǔ)=[X-Y]補(bǔ)和[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)規(guī)則,Cy=C8⊕SUB=0⊕1=1,OV=C8⊕C7=0⊕0=0,真值為-7;

當(dāng)作無符號(hào)數(shù)時(shí):23H-2AH=[35]原-[42]原=[35]補(bǔ)+[-42]補(bǔ)=[-7]補(bǔ)=F9H,Cy=C8⊕SUB=0⊕1=1,OV=C8⊕C7=0⊕0=0,運(yùn)算結(jié)果對(duì)應(yīng)無符號(hào)數(shù)249,顯然真值不合理,此時(shí)可對(duì)運(yùn)算結(jié)果進(jìn)行調(diào)整,其真值應(yīng)為249-256=-7。例

23H-2AH執(zhí)行減法指令,SUB=1例

23H+D6H執(zhí)行加法指令,SUB=0

當(dāng)作有符號(hào)數(shù)時(shí):23H+D6H=[35]補(bǔ)+[-42]補(bǔ)=[-7]補(bǔ)=F9H,滿足[X]補(bǔ)+[Y]補(bǔ)=[X+Y]補(bǔ)規(guī)則,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕0=0,真值為-7?;A(chǔ)篇第1章微型計(jì)算機(jī)原理基礎(chǔ)知識(shí)當(dāng)作無符號(hào)數(shù)時(shí):23H+D6H=[35]原+[214]原=[35]補(bǔ)+[-42]補(bǔ)=[-7]補(bǔ)=F9H,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕0=0,真值為249。例

23H+D6H執(zhí)行加法指令,SUB=0執(zhí)行減法指令,SUB=1例

55H-4EH當(dāng)作有符號(hào)數(shù)時(shí):55H-4EH=[85]補(bǔ)-[78]補(bǔ)=[85]補(bǔ)+[-78]補(bǔ)=[7]補(bǔ)=07H,同時(shí)滿足[X]補(bǔ)-[Y]補(bǔ)=[X-Y]補(bǔ)和[X-Y]補(bǔ)=[X]補(bǔ)+[-Y]補(bǔ)規(guī)則,Cy=C8⊕SUB=1⊕1=0,OV=C8⊕C7=1⊕1=0,真值為7。

當(dāng)作無符號(hào)數(shù)時(shí):55H-4EH=[85]原-[78]原=[85]補(bǔ)+[-78]補(bǔ)=[7]補(bǔ)=07H,Cy=C8⊕SUB=1⊕1=0,OV=C8⊕C7=1⊕1=0,真值為7。需要指出的是,運(yùn)算過程中最高位向更高位有運(yùn)算進(jìn)位,但是由于借位標(biāo)志Cy=0,最高位產(chǎn)生的運(yùn)算進(jìn)位會(huì)自動(dòng)丟失且不影響最終結(jié)果。執(zhí)行減法指令,SUB=1例

55H-4EH執(zhí)行加法指令,

SUB=0例

55H+B2H

當(dāng)作有符號(hào)數(shù)時(shí):55H+B2H=[85]補(bǔ)+[-78]補(bǔ)=[7]補(bǔ)=07H,滿足[X]補(bǔ)+[Y]補(bǔ)=[X+Y]補(bǔ)規(guī)則,Cy=C8⊕SUB=1⊕0=1,OV=C8⊕C7=1⊕1=0,真值為7。當(dāng)作無符號(hào)數(shù)時(shí):55H+B2H=[85]原+[178]原=[85]補(bǔ)+[-78]補(bǔ)=[7]補(bǔ)=07H,Cy=C8⊕SUB=1⊕0=1,OV=C8⊕C7=1⊕1=0,運(yùn)算結(jié)果對(duì)應(yīng)無符號(hào)數(shù)7,顯然真值不合理(Cy=1),真值應(yīng)為256+7=263。執(zhí)行加法指令,

SUB=0例

55H+B2H例

55H+4EH執(zhí)行加法指令,SUB=0

當(dāng)作有符號(hào)數(shù)時(shí):55H+4EH=[85]補(bǔ)+[78]補(bǔ)=A3H,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕1=1,正數(shù)相加出現(xiàn)了負(fù)數(shù)結(jié)果,不再滿足[X]補(bǔ)+[Y]補(bǔ)=[X+Y]補(bǔ)規(guī)則,此時(shí)OV=1,即運(yùn)算結(jié)果超出了正常有符號(hào)數(shù)的補(bǔ)碼表示范圍,做溢出提示即可。當(dāng)作無符號(hào)數(shù)時(shí):55H+4EH=[85]原+[78]原=[163]原=A3H,Cy=C8⊕SUB=0⊕0=0,OV=C8⊕C7=0⊕1=1,真值為163。例

55H+4EH執(zhí)行加法指令,SUB=0

計(jì)算機(jī)執(zhí)行加減指令時(shí),機(jī)器數(shù)在運(yùn)算電路中進(jìn)行加法運(yùn)算,有符號(hào)數(shù)采用補(bǔ)碼形式且運(yùn)算過程和運(yùn)算結(jié)果滿足補(bǔ)碼運(yùn)算規(guī)則(OV=1除外);無符號(hào)數(shù)相加時(shí),運(yùn)算過程和運(yùn)算結(jié)果與其對(duì)應(yīng)有符號(hào)數(shù)的運(yùn)算過程一致,利用Cy狀態(tài)確定真值,若Cy=0,運(yùn)算結(jié)果就是真值,若Cy=1,則真值為運(yùn)算結(jié)果加256(8位計(jì)算機(jī));無符號(hào)數(shù)相減時(shí),則采用求補(bǔ)運(yùn)算規(guī)則轉(zhuǎn)換為加法并用Cy狀態(tài)確定真值,若Cy=0,運(yùn)算結(jié)果就是真值,若Cy=1,則真值為運(yùn)算結(jié)果減去256(8位計(jì)算機(jī))。結(jié)論規(guī)

律(1)計(jì)算機(jī)不區(qū)分符號(hào)位和數(shù)值位,符號(hào)位和數(shù)值位一起參加運(yùn)算。(2)運(yùn)算電路在進(jìn)行運(yùn)算時(shí)只會(huì)根據(jù)加減指令設(shè)定加減控制信號(hào)SUB狀態(tài)。當(dāng)執(zhí)行加法指令即X+Y時(shí),則SUB=0,此時(shí)Y不變,運(yùn)算過程是直接將X和Y相加即可得運(yùn)算結(jié)果;當(dāng)執(zhí)行減法指令即X-Y時(shí),則SUB=1,運(yùn)算過程是X與Y求補(bǔ)運(yùn)算后的結(jié)果相加;(3)運(yùn)算電路運(yùn)算的同時(shí),會(huì)自動(dòng)設(shè)置進(jìn)/借位標(biāo)志位Cy和溢出標(biāo)志位OV的值及其它有關(guān)的標(biāo)志位;(4)對(duì)運(yùn)算結(jié)果進(jìn)行分析時(shí),若編程人員將X和Y看作無符號(hào)數(shù),則通過判斷Cy位的狀態(tài),確定運(yùn)算過程中是否有無符號(hào)數(shù)的進(jìn)/借位產(chǎn)生,進(jìn)而進(jìn)行真值合理性調(diào)整;若編程人員將X和Y看作有符號(hào)數(shù),則通過判斷OV位的狀態(tài),確定運(yùn)算過程是否發(fā)生溢出,進(jìn)而判斷結(jié)果是否有效。

1.4.2.ASCII碼編碼規(guī)則

計(jì)算機(jī)編碼:用規(guī)定好的二進(jìn)制組合表示數(shù)據(jù)、字符、漢字等信息。1.4微型計(jì)算機(jī)中的常用編碼

1.基本ASCII碼:7位二進(jìn)制數(shù)表示的字符編碼,128個(gè)字符。96個(gè)圖形字符10個(gè)十進(jìn)制數(shù)字52個(gè)英文字符34個(gè)其他字符32個(gè)控制字符回車符、換行符、退格符設(shè)備控制符和信息分隔符等

1.4.1.微型計(jì)算機(jī)編碼的基本概念

最高位為擴(kuò)展位,最高位若為0,即基本ASCⅡ碼。最高位若為1,則為擴(kuò)展的ASCⅡ碼,一般用來表示鍵盤上不可顯示的功能鍵編碼。`A`~`Z`的ASCⅡ編碼是41H~5AH;`a`~`z`的ASCⅡ編碼是61H~7AH;`0`~`9`的ASCⅡ編碼是30H~39H。

2.擴(kuò)展ASCII碼:8位二進(jìn)制數(shù)表示的字符編碼,256個(gè)字符。常用字符的ASCII碼如下:特殊字符的ASCII碼可查表。

用4位二進(jìn)制數(shù)表示1位十進(jìn)制數(shù),4位二進(jìn)制數(shù)稱為1位BCD碼字,因組成它的4位二進(jìn)制數(shù)碼的權(quán)為8、4、2、1而得名。1.4.2.8421BCD碼(十進(jìn)制數(shù)的二進(jìn)制編碼)00000B10001B20010B30011B40100B50101B60110B70111B81000B91001BA1010BB1011BC1100BD1101BE1110BF1111B非BCD碼冗余碼非法碼BCD碼注:在0~9之間十進(jìn)制數(shù)的BCD碼與十六進(jìn)制數(shù)的二進(jìn)制表示是相同的。1.壓縮型BCD碼壓縮型BCD碼是用4位二進(jìn)制表示1位十進(jìn)制,用一個(gè)字節(jié)表示兩位十進(jìn)制數(shù)。例如,10000110B表示十進(jìn)制數(shù)86,可簡(jiǎn)寫為86H。2.非壓縮型BCD碼非壓縮型BCD碼是用8位表示一位十進(jìn)制數(shù)。高4位總是0000B,低4位用0000B~1001B中的一種組合來表示0~9中的某一個(gè)十進(jìn)制數(shù)。3.BCD碼加減運(yùn)算BCD碼表示的是十進(jìn)制數(shù),作加法運(yùn)算時(shí)須按十進(jìn)制計(jì)算原則進(jìn)行運(yùn)算,才能使其運(yùn)算結(jié)果為正確BCD碼。但計(jì)算機(jī)運(yùn)算電路對(duì)二進(jìn)制位不作任何區(qū)分只會(huì)按照二進(jìn)制規(guī)則進(jìn)行相加運(yùn)算。這樣在相鄰BCD碼字之間即兩位十進(jìn)制數(shù)字之間只能“逢十六進(jìn)位”而非“逢十進(jìn)位”,進(jìn)位差別會(huì)導(dǎo)致結(jié)果出現(xiàn)非BCD碼或不合理結(jié)果。因此需要對(duì)結(jié)果進(jìn)行調(diào)整,做到“逢十進(jìn)位”。

BCD加法例

BCD加法BCD加法運(yùn)算結(jié)果修正的規(guī)則1)如果兩個(gè)對(duì)應(yīng)位BCD碼字相加的結(jié)果向高位無進(jìn)位,且結(jié)果是BCD碼,則該位不需要修正;若得到的結(jié)果是非BCD碼,則該位需要加6修正。2)如果兩個(gè)對(duì)應(yīng)位BCD碼字相加的結(jié)果向高位有進(jìn)位(結(jié)果大于或等于16),則該位需要進(jìn)行加6修正。BCD碼的減法運(yùn)算與加法運(yùn)算同理,減法運(yùn)算的調(diào)整原則:1)如果兩個(gè)對(duì)應(yīng)BCD碼字相減的結(jié)果低位向高位無借位,且結(jié)果是BCD碼,則該位不需要修正;若得到的結(jié)果是非BCD碼,則該位需要減6修正。2)如果兩個(gè)對(duì)應(yīng)BCD碼字相減的結(jié)果低位向高位有借位,則該位需要進(jìn)行減6修正。例

BCD減法例

BCD減法變加法1.5微型計(jì)算機(jī)系統(tǒng)

1.5.1.微型計(jì)算機(jī)系統(tǒng)組成1.5.1微型計(jì)算機(jī)主機(jī)結(jié)構(gòu)主機(jī)CPU存儲(chǔ)器輸入/出接口總線地址譯碼電路主機(jī)系統(tǒng)結(jié)構(gòu)圖

CPU地址譯碼電路I/O設(shè)備RAMROM地址信息片選信號(hào)I/O接口DBABCB1.CPU(中央處理器)計(jì)算機(jī)的核心部件,主要由運(yùn)算器、控制器和寄存器構(gòu)成運(yùn)算器(ALU)主要負(fù)責(zé)算術(shù)運(yùn)算和邏輯運(yùn)算控制器由指令寄存器、指令譯碼器和控制電路組成并按指令的要

求對(duì)微機(jī)各部件發(fā)出相應(yīng)的信息。寄存器CPU內(nèi)部用來暫時(shí)存放數(shù)據(jù)和運(yùn)算結(jié)果的空間,CPU對(duì)寄

存器讀寫方便快捷2.存儲(chǔ)器(Memory)

例如01001101B用于“記憶”信息的存儲(chǔ)元件,一般采用集成度高,容量大,體積小,功耗低的半導(dǎo)體芯片。字節(jié)(Byte)

基本單位,規(guī)定

8位二進(jìn)制數(shù)稱為1個(gè)字節(jié)。

1個(gè)字節(jié)數(shù)據(jù)的存儲(chǔ)空間稱為1個(gè)存儲(chǔ)單元,其中每1位稱為1bit。

計(jì)算機(jī)的存儲(chǔ)器是由許多存儲(chǔ)單元集合而成,每1個(gè)存儲(chǔ)單元唯一的對(duì)應(yīng)1個(gè)單元地址,也稱為存儲(chǔ)器的物理地址,計(jì)算機(jī)中的地址一般都用十六進(jìn)制數(shù)表示,如00006H。(00006H)=CFH存儲(chǔ)單元讀/輸入寫/輸出取數(shù)存數(shù)CPU執(zhí)行訪問內(nèi)存的指令時(shí),按指定的單元地址對(duì)相應(yīng)存儲(chǔ)單元進(jìn)行“讀、寫”操作。3.總線(Bus)

(1)數(shù)據(jù)總線DB:雙向傳輸數(shù)據(jù)信息。

傳送信息的公共導(dǎo)線根據(jù)所傳送信息的內(nèi)容與作用不同可分為數(shù)據(jù)總線DB(DataBus)、地址總線AB(AddressBus)、控制總線CB(ControlBus)DB寬度(根數(shù))與MPU提供的數(shù)據(jù)線的引腳數(shù)有關(guān)。(2)控制總線CB:傳送各種控制信號(hào)和狀態(tài)信號(hào)對(duì)于每一根來說信

號(hào)是單向傳送的。(3)地址總線AB:CPU執(zhí)行指令時(shí),用于單向傳送地址信息。地址信息操作數(shù)在數(shù)據(jù)存儲(chǔ)器中的地址信息指令代碼在程序存儲(chǔ)器中的地址信息AB的寬度決定了計(jì)算機(jī)系統(tǒng)的最大尋址能力最大尋址空間=2N,其中N為AB的寬度。MCS-51單片機(jī)N=16最大尋址空間=216=65536B=64KB8086/8088CPUN=20最大尋址空間220=1MB例.4.地址譯碼電路

凡是“掛”在總線上部件都被系統(tǒng)分配1個(gè)地址域,CPU訪問某部件時(shí),由指令提供被訪問部件的地址信息,該地址信息經(jīng)地址譯碼電路譯碼后唯一的產(chǎn)生1個(gè)選通信號(hào)(也稱片選信號(hào)),將被選中的部件“門”打開,使得數(shù)據(jù)得以傳輸。5.接口

接口是主機(jī)與外設(shè)連接的必然通路,是必經(jīng)的“橋梁”。每個(gè)接口可包含若干個(gè)端口,每個(gè)端口對(duì)應(yīng)1個(gè)端口地址,可由指令按地址訪問端口。接口功能為隔離主機(jī)與外設(shè)之間的數(shù)據(jù)、數(shù)據(jù)類型的轉(zhuǎn)換、電平轉(zhuǎn)換等。

1.5.2微型計(jì)算機(jī)的主要性能指標(biāo)1.字和字長(zhǎng)字長(zhǎng):字的二進(jìn)制位數(shù)。字長(zhǎng)是計(jì)算機(jī)的主要性能指標(biāo)之一!字長(zhǎng)越長(zhǎng)的計(jì)算機(jī),其運(yùn)算速度越快,數(shù)的表示范圍越寬,數(shù)據(jù)的運(yùn)算精度越高,機(jī)器的整體功能越強(qiáng)。字:計(jì)算機(jī)1次能并行處理的1個(gè)基本信息單位,稱為1個(gè)字。例如:1個(gè)數(shù)據(jù)(25、35.67、-0.0038……;)1個(gè)字符(A、a、#、……)等均稱為1個(gè)字。

8位機(jī)字長(zhǎng)為8(MCS-51單片機(jī))16位機(jī)字長(zhǎng)為16位(8086/8088CPU)2.存儲(chǔ)器容量存儲(chǔ)器容量是衡量微型計(jì)算機(jī)存儲(chǔ)二進(jìn)制信息量大小的1個(gè)重要指標(biāo)。存儲(chǔ)器容量(s)=存儲(chǔ)單元數(shù)(p)×數(shù)據(jù)位數(shù)(i)1024B=1KB

1024KB=1MB

1024MB=1GB

1024GB=1TB存儲(chǔ)器容量包括內(nèi)存容量和外存容量,內(nèi)存容量又分最大容量和實(shí)際裝機(jī)容量,外存容量是指硬盤和光盤等的容量。CPU主頻和每條指令的執(zhí)行所需的時(shí)鐘周期表示。3.運(yùn)算速度微機(jī)的運(yùn)算速度一般用每秒鐘所能執(zhí)行的指令條數(shù)來表示。MIPS(百萬條指令/秒)執(zhí)行時(shí)間最短的指令(如加法指令)為標(biāo)準(zhǔn)來估算運(yùn)算速度。4.系統(tǒng)總線系統(tǒng)總線是連接微機(jī)系統(tǒng)各功能部件的公共數(shù)據(jù)通道,其性能直接關(guān)系到微機(jī)系統(tǒng)的整體性能。系統(tǒng)總線的性能主要表現(xiàn)為它所支持的數(shù)據(jù)傳送位數(shù)和總線工作時(shí)鐘的頻率。數(shù)據(jù)傳送位數(shù)越多,總線工作時(shí)鐘頻率越高,則系統(tǒng)總線的信息吞吐率就越高,微機(jī)系統(tǒng)的性能就越強(qiáng)。外設(shè)擴(kuò)展能力是指微機(jī)系統(tǒng)配接各外部設(shè)備的可能性、靈活性和適應(yīng)性。一臺(tái)微機(jī)允許配接多少外部設(shè)備,對(duì)于系統(tǒng)接口和軟件研制都有重大影響。在微機(jī)系統(tǒng)中,打印機(jī)型號(hào)、顯示屏幕分辨率、外存儲(chǔ)器容量等都是外設(shè)配置中需要考慮的問題。5.外設(shè)擴(kuò)展能力軟件是微機(jī)系統(tǒng)必不可少的重要組成部分,它配置是否齊全,功能的強(qiáng)弱,是否支持多任務(wù)、多用戶操作等都是微機(jī)硬件系統(tǒng)性能可否得到充分發(fā)揮的重要因素。6.軟件配置情況1.6微型計(jì)算機(jī)仿真軟件Proteus謝謝聆聽!

微型計(jì)算機(jī)原理及應(yīng)用2.1微型計(jì)算機(jī)存儲(chǔ)器體系結(jié)構(gòu)2.2微型計(jì)算機(jī)內(nèi)存儲(chǔ)器結(jié)構(gòu)和分類2.2.1內(nèi)存分類隨機(jī)存取存儲(chǔ)器(RandomAccessMemory,簡(jiǎn)稱RAM)隨時(shí)可讀可寫,掉電信息丟失只讀存儲(chǔ)器(ReadOnlyMemory,簡(jiǎn)稱ROM)

隨時(shí)可讀但不可寫,信息永久保存2.2.2內(nèi)存的主要性能指標(biāo)1.容量存儲(chǔ)器芯片的容量是以存儲(chǔ)1位(bit)二進(jìn)制數(shù)為單位的,因此存儲(chǔ)器的容量即指每個(gè)存儲(chǔ)器芯片所能存儲(chǔ)的二進(jìn)制數(shù)的位數(shù)。存儲(chǔ)器容量=存儲(chǔ)單元數(shù)x位數(shù)例1Kx8

雖然微型計(jì)算機(jī)的字長(zhǎng)已經(jīng)達(dá)到16位、32位甚至64位,但其內(nèi)存仍以1個(gè)字節(jié)作為基本存儲(chǔ)單元,可根據(jù)計(jì)算機(jī)數(shù)據(jù)線寬度實(shí)現(xiàn)同時(shí)對(duì)2、4、8個(gè)存儲(chǔ)單元的訪問。2.存取速度

存儲(chǔ)器芯片的存取速度是用存取時(shí)間來衡量的。它是指從CPU給出有效的存儲(chǔ)器地址信息到完成有效數(shù)據(jù)存取所需要的時(shí)間。存取時(shí)間越短,則速度越快。超高速存儲(chǔ)器的存取時(shí)間已小于20ns,中速存儲(chǔ)器在100~200ns之間,低速存儲(chǔ)器的存取時(shí)間在300ns以上。2.2.3隨機(jī)存儲(chǔ)器(RAM)

RAM又稱數(shù)據(jù)存儲(chǔ)器,能夠利用程序?qū)崿F(xiàn)數(shù)據(jù)和信息的隨時(shí)寫入和讀出。1.靜態(tài)RAM(SRAM)SRAM內(nèi)部采用雙穩(wěn)態(tài)電路存儲(chǔ)二進(jìn)制數(shù)信息0和1。(1)SRAM存儲(chǔ)器基本二進(jìn)制位存儲(chǔ)電路(2)

SRAM的數(shù)據(jù)位存儲(chǔ)陣列16×16SRAM位存儲(chǔ)陣列256BSRAM結(jié)構(gòu)圖

存儲(chǔ)器的容量=2N,其中N為所需片內(nèi)地址線的根數(shù)。

1KB,片內(nèi)地址線10根(A9~A0)

2KB,片內(nèi)地址線11根(A10~A0)

4KB,片內(nèi)地址線12根(A11~A0)

8KB,片內(nèi)地址線13根(A12~A0)256BSRAM存儲(chǔ)陣列包含8根地址引腳線(A7~A0),計(jì)算機(jī)科學(xué)中將其稱之為片內(nèi)地址線。片內(nèi)地址線傳遞的256個(gè)地址信息分別對(duì)應(yīng)于256BSRAM的256個(gè)存儲(chǔ)單元,計(jì)算機(jī)科學(xué)中稱之為存儲(chǔ)器片內(nèi)地址(3)片內(nèi)地址線和片內(nèi)地址

SRAM采用雙穩(wěn)態(tài)電路,使用晶體管較多,所以集成度低,大容量的SRAM不多見,常用容量一般不超過1MB

典型的SRAM芯片有6116(2KB)/6264(8KB)/62128(16KB)/62256(32KB)6116芯片的容量為2K×8位,有2048個(gè)存儲(chǔ)單元,片內(nèi)地址線11根A10~A0,7根用于行地址譯碼輸入,4根用于列地址譯碼輸入,從而形成了16×128個(gè)位存儲(chǔ)陣列,6116芯片以字節(jié)為單位即總共有8×16×128=16384個(gè)存儲(chǔ)位。2.動(dòng)態(tài)RAM(DRAM)

電容C有電荷時(shí),為邏輯“1”,沒有電荷時(shí),為邏輯“0”。電容都存在漏電,電容的放電過程導(dǎo)致電荷流失,信息也就丟失,解決的辦法是刷新,即每隔一定時(shí)間(一般為2ms)就要刷新一次,使原來處于邏輯電平“1”的電容的電荷又得到補(bǔ)充,而原來處于電平“0”的電容仍保持“0”。2.2.4只讀存儲(chǔ)器(ROM)ROM是一種非易失性的半導(dǎo)體存儲(chǔ)器,其中的信息在使用時(shí)是不能被改變的,掉電后信息也不丟失,用來存放程序代碼和數(shù)據(jù)表格。在一般工作狀態(tài)和條件下,ROM中的信息只能讀出,不能寫入。2716(2KB)\2732(4KB)\2764(8KB)\7128(16KB)等,與相同容量的SRAM引腳兼容。1.光可擦除可編程ROM(EPROM)2.電可擦除PROM(E2PROM)(1)并行E2PROM(2)并行E2PROM2.2.5新一代可編程只讀存儲(chǔ)器-閃速存儲(chǔ)器閃速存儲(chǔ)器(FlashMemory)是一類非易失性存儲(chǔ)器NVM,即使在電源關(guān)閉后仍能保持片內(nèi)信息;

典型的閃存芯片有29C256(32KB)\29C512(64KB)\29C101(128KB)\29C020(256KB)\29C040(512KB8)\29C080(1024KB)等。

2.3內(nèi)存擴(kuò)展技術(shù)位擴(kuò)展字?jǐn)U展字位全擴(kuò)展2.3.1內(nèi)存擴(kuò)展方式1.字?jǐn)U展

所謂字?jǐn)U展就是存儲(chǔ)單元數(shù)的擴(kuò)展,數(shù)據(jù)寬度仍以字節(jié)為單位,只是對(duì)存儲(chǔ)器系統(tǒng)的尋址空間進(jìn)行擴(kuò)展。

字?jǐn)U展的連接方法①存儲(chǔ)器芯片的地址線、數(shù)據(jù)線、讀、控制信號(hào)線均并聯(lián)。②片選信號(hào)線是各自獨(dú)立被選中的。存儲(chǔ)器的字?jǐn)U展圖

2.位擴(kuò)展位擴(kuò)展的連接方法①存儲(chǔ)芯片的地址線,

片選信號(hào)線及控制信

號(hào)線均并聯(lián)。②數(shù)據(jù)線按數(shù)據(jù)位的高

低順序分別連到數(shù)據(jù)總

線上。

位擴(kuò)展方式是一種存儲(chǔ)單元個(gè)數(shù)不變,而單個(gè)存儲(chǔ)單元數(shù)據(jù)位數(shù)增加的擴(kuò)展方式。存儲(chǔ)器的位擴(kuò)展圖

3.字位全擴(kuò)展

字位全擴(kuò)展方式是由字?jǐn)U展方式和位擴(kuò)展方式組合起來的存儲(chǔ)器擴(kuò)展方式,既擴(kuò)展存儲(chǔ)單元數(shù),又?jǐn)U展單個(gè)存儲(chǔ)單元的數(shù)據(jù)位數(shù)。存儲(chǔ)器的字位全擴(kuò)展圖

2.3.2內(nèi)部存儲(chǔ)器擴(kuò)展技術(shù)1.存儲(chǔ)器與系統(tǒng)總線連接

在微型計(jì)算機(jī)系統(tǒng)中,CPU對(duì)存儲(chǔ)器進(jìn)行讀寫操作,首先要由地址總線給出地址信號(hào),然后發(fā)出讀寫控制信號(hào),最后才能在數(shù)據(jù)總線上進(jìn)行數(shù)據(jù)的讀寫。(1)CPU總線的帶負(fù)載能力CPU在設(shè)計(jì)時(shí),一般輸出線的帶負(fù)載能力為1個(gè)TTL電路或20個(gè)MOS器件。存儲(chǔ)器基本上均為MOS管,直流負(fù)載很小,主要是電容負(fù)載,故在簡(jiǎn)單系統(tǒng)中,CPU可直接與存儲(chǔ)器相連,而在較大系統(tǒng)中,可加驅(qū)動(dòng)器再與存儲(chǔ)器相連。(2)

CPU時(shí)序與存儲(chǔ)器存取速度之間的配合

CPU的取指周期和對(duì)存儲(chǔ)器讀寫都有固定的時(shí)序,由此決定了對(duì)存儲(chǔ)器存取速度的要求。具體地說,CPU對(duì)存儲(chǔ)器進(jìn)行讀操作時(shí),CPU發(fā)出地址和讀命令后,存儲(chǔ)器必須在限定時(shí)間內(nèi)給出有效數(shù)據(jù)。而當(dāng)CPU對(duì)存儲(chǔ)器進(jìn)行寫操作時(shí),存儲(chǔ)器必須在寫脈沖有效時(shí)間內(nèi)將數(shù)據(jù)寫入指定存儲(chǔ)單元,否則就無法保證迅速準(zhǔn)確地傳送數(shù)據(jù)。

(3)地址線的連接

存儲(chǔ)器片內(nèi)地址線只連接系統(tǒng)部分地址線,負(fù)責(zé)接收片內(nèi)地址信息,未被存儲(chǔ)器芯片連接的剩余地址線稱為片外地址線,計(jì)算機(jī)科學(xué)中將片外地址線傳遞的地址信息稱為存儲(chǔ)單元的片外地址。片外地址具有恒定不變特征,常用作地址譯碼電路輸入線產(chǎn)生片選信號(hào)選定存儲(chǔ)芯片。2.存儲(chǔ)器地址分配和片選問題(4)讀\寫控制信號(hào)的連接(5)數(shù)據(jù)線的連接

凡是掛接在系統(tǒng)總線上的存儲(chǔ)器芯片,都必須為各存儲(chǔ)器芯片分配相應(yīng)的地址空間(也稱地址范圍)以實(shí)現(xiàn)CPU對(duì)各存儲(chǔ)器芯片相應(yīng)存儲(chǔ)單元的讀寫操作。一個(gè)完整的存儲(chǔ)單元地址分為片外地址和片內(nèi)地址兩部分,片內(nèi)地址提供存儲(chǔ)單元的存儲(chǔ)陣列的行列信息,片外地址提供存儲(chǔ)單元所在存儲(chǔ)芯片的片選信息。(1)存儲(chǔ)器地址分配(2)存儲(chǔ)芯片的片選信號(hào)1)線選法注意:若有多條片外地址線同時(shí)作為片選線使用時(shí),在CPU訪問存儲(chǔ)器某芯片時(shí)只能有1條片選線處于有效狀態(tài),一般不允許出現(xiàn)多條片選線同時(shí)有效的現(xiàn)象。若有空閑的片外地址線,則狀態(tài)可“0”可“1”,在地址分配時(shí)會(huì)出現(xiàn)一個(gè)存儲(chǔ)單元有多個(gè)地址與之對(duì)應(yīng)的現(xiàn)象,計(jì)算機(jī)科學(xué)中稱之為地址重疊現(xiàn)象。利用片外地址線或其他直接與存儲(chǔ)器芯片片選引腳線連接,方法簡(jiǎn)單,不需附加譯碼電路,適用于存儲(chǔ)芯片較少,而且片外地址線充足的系統(tǒng)。2)譯碼器法

譯碼器法是采用譯碼器芯片產(chǎn)生片選信號(hào)的方法,譯碼器的輸入和使能信號(hào)由片外地址線提供,譯碼器輸出提供選定存儲(chǔ)芯片的片選信號(hào)。若片外地址線全部作為譯碼器的輸入或使能用,稱之為全譯碼法,反之則稱其為部分譯碼法。在全譯碼方式下,不存在地址重疊現(xiàn)象,而在部分譯碼方式下,會(huì)出現(xiàn)地址重疊現(xiàn)象。3)

地址譯碼器74LS138

地址譯碼器的功能是根據(jù)輸入的片外地址碼譯碼輸出選通一個(gè)存儲(chǔ)芯片或I/O設(shè)備,再結(jié)合片內(nèi)地址碼共同指向某一單元。任何時(shí)刻譯碼器的輸出是唯一的,即只能有一個(gè)設(shè)備被選中。3.存儲(chǔ)器擴(kuò)展舉例(1)構(gòu)造微機(jī)總線系統(tǒng)(AB/DB/CB);(2)存儲(chǔ)器芯片地址分析;(3)連接存儲(chǔ)器芯片,設(shè)計(jì)地址譯碼電路。8DB16AB2CB總線系統(tǒng)

例.線選法。

A14A15懸空,可選任意狀態(tài)(一般取0),因此產(chǎn)生地址重疊現(xiàn)象。00001FFF40005FFF

0000H

1FFFH

..

4000H

5FFFH

..80009FFF

8000H

9FFFH

..A000BFFF

A000H

BFFFH

..

部分譯碼法。

例.全譯碼法。例存儲(chǔ)器系統(tǒng)設(shè)計(jì)。利用74LS138譯碼器在8DB16AB2CB總線系統(tǒng)中擴(kuò)展2片6116和1片273。6116(1)從0000H開始編址,6116(2)與6116(1)地址連續(xù),2732從2000H開始編址,設(shè)計(jì)該存儲(chǔ)系統(tǒng)。謝謝聆聽!

微型計(jì)算機(jī)原理及應(yīng)用

中斷是現(xiàn)代計(jì)算機(jī)必須具備的重要功能,也是計(jì)算機(jī)發(fā)展史上的一個(gè)重要里程碑。中斷功能的主要優(yōu)點(diǎn)是,只有服務(wù)時(shí)才能得到CPU的響應(yīng),而不需要CPU不斷的查詢等待。這樣,CPU就可以空出時(shí)間去做其他事情,直到接口需要它服務(wù)時(shí)為止。3.1計(jì)算機(jī)中斷基本概念①中斷申請(qǐng)(中斷請(qǐng)求)中斷源向CPU提出處理請(qǐng)求

②中斷響應(yīng)CPU暫時(shí)終止自身的事務(wù),將斷點(diǎn)地

址壓入堆棧,并形成中斷入口地址

③中斷服務(wù)(或中斷處理)

CPU針對(duì)外部事件執(zhí)行的程序

④中斷返回?cái)帱c(diǎn)地址從堆棧中彈出,使CPU回到

斷點(diǎn)處繼續(xù)執(zhí)行被中斷前的程序。3.1.1中斷的定義3.1.2中斷意義①處理突發(fā)事件②多任務(wù)操作③提高CPU利用率3.1.3中斷源中斷源是指向CPU發(fā)出中斷申請(qǐng)的外部設(shè)備或引起中斷的來源。1.硬件中斷源(1).外部硬件中斷源(2).內(nèi)部硬件中斷源內(nèi)部資源產(chǎn)生的中斷,定時(shí)器/串行口/AD等外部擴(kuò)展設(shè)備產(chǎn)生的中斷請(qǐng)求2.故障中斷源(1).硬件故障中斷源(2).軟件故障中斷源3.軟件中斷源

操作系統(tǒng)提供的一些特定功能調(diào)用引起的中斷。軟件中斷源與其它中斷源不同之處在于其它中斷源的中斷服務(wù)程序是CPU被動(dòng)執(zhí)行的,而軟件中斷源的中斷服務(wù)程序是CPU主動(dòng)調(diào)用執(zhí)行的,因此軟中斷也稱為CPU內(nèi)部中斷。電源掉電等運(yùn)算結(jié)果溢出等3.1.4中斷的響應(yīng)1.中斷響應(yīng)的條件(1)CPU開放中斷。(2)申請(qǐng)中斷的中斷源優(yōu)先級(jí)別最高。(3)無特殊操作指令或動(dòng)作。(4)執(zhí)行完當(dāng)前指令后。(5)若當(dāng)前指令與中斷相關(guān),須再執(zhí)行其它1條指令。3.1.5中斷源優(yōu)先權(quán)1.軟件設(shè)定優(yōu)先權(quán)方案CPU響應(yīng)中斷請(qǐng)求后通過軟件查詢程序,確定請(qǐng)求中斷的中斷源的優(yōu)先權(quán)。2.硬件設(shè)定優(yōu)先權(quán)方案(1).鏈形電路

鏈形電路是利用外設(shè)在系統(tǒng)中的物理位置來決定其中斷優(yōu)先權(quán)的。(2).編碼電路

注:表中I0~I7=0表示有中斷請(qǐng)求,I0~I7=1表示無中斷請(qǐng)求,I0~I7=X表示不確定有無中斷請(qǐng)求。3.軟硬件結(jié)合優(yōu)先權(quán)管理方案

中斷優(yōu)先級(jí)的理想管理方案應(yīng)結(jié)合的方案實(shí)現(xiàn),即通過可編程中斷控制器。例如8259A是典型的軟硬件結(jié)合的中斷優(yōu)先級(jí)管理芯片,該芯片既有硬件方案的邏輯簡(jiǎn)單、響應(yīng)中斷快速等優(yōu)點(diǎn),又可以通過軟件控制命令字和操作命令字對(duì)中斷優(yōu)先級(jí)進(jìn)行靈活設(shè)置,因此被廣泛應(yīng)用于微型計(jì)算機(jī)中斷系統(tǒng)。3.1.5中斷嵌套中斷嵌套的原則是高級(jí)別中斷可以嵌套低級(jí)別中斷,低級(jí)別中斷不能嵌套高級(jí)別中斷,同級(jí)別中斷不能互相嵌套。3.1.7中斷服務(wù)程序

中斷服務(wù)程序包括保護(hù)現(xiàn)場(chǎng)、中斷處理、恢復(fù)現(xiàn)場(chǎng)、中斷返回。1.保護(hù)現(xiàn)場(chǎng)2.中斷處理3.恢復(fù)現(xiàn)場(chǎng)4.中斷返回3.2中斷系統(tǒng)1.矢量中斷系統(tǒng)2.絕對(duì)地址中斷系統(tǒng)謝謝聆聽!

微型計(jì)算機(jī)原理及應(yīng)用4.1微型計(jì)算機(jī)接口的基本概念

輸入/輸出設(shè)備即I/O設(shè)備統(tǒng)稱為外部設(shè)備(外設(shè)),它是計(jì)算機(jī)系統(tǒng)的重要組成部分。主機(jī)將數(shù)據(jù)送到外設(shè),稱為輸出外設(shè)將數(shù)據(jù)送到主機(jī),稱為輸入簡(jiǎn)稱I/O操作

接口——“橋梁”,系統(tǒng)與外部設(shè)備之間,主機(jī)與外設(shè)進(jìn)行數(shù)據(jù)傳輸,必須經(jīng)過接口,協(xié)助完成數(shù)據(jù)傳送和傳送控制任務(wù)的電路。4.1.1I/O接口傳遞的信息I/O接口傳遞的信息包括數(shù)據(jù)信息、狀態(tài)信息和控制信息。1.數(shù)據(jù)信息2.狀態(tài)信息3.控制信息I/O接口傳遞的最基本信息包括數(shù)字量、模擬量和開關(guān)量。CPU通過I/O接口與外設(shè)之間傳遞的反映外設(shè)工作狀態(tài)的信息。CPU向外設(shè)發(fā)出的控制信號(hào)或CPU寫給可編程接口控制字等。4.1.2I/O接口的端口

I/O接口傳遞信息的通道,稱為“端口”,

I/O接口的基本單元,端口有自己的地址(稱為端口地址),CPU用地址對(duì)每個(gè)端口進(jìn)行讀寫操作。1.端口的定義端口有寬度,一般以字節(jié)為單位,也可以用兩個(gè)地址相鄰的8位端口構(gòu)成1個(gè)16位寬度的端口,其中較低的1個(gè)地址可作為16位端口的共同地址在16位I/O指令中使用。2.端口的分類(1)數(shù)據(jù)端口(2)狀態(tài)端口(3)控制端口

執(zhí)行輸入指令時(shí),無論對(duì)數(shù)據(jù)端口還是狀態(tài)端口,讀入的內(nèi)容都送到數(shù)據(jù)總線DB上,進(jìn)而到達(dá)CPU;執(zhí)行輸出指令時(shí),無論是對(duì)數(shù)據(jù)端口還是控制端口,寫出的內(nèi)容也都經(jīng)過數(shù)據(jù)總線DB輸出。所以對(duì)I/O指令而言,三類端口僅地址不同而已,其內(nèi)容全都可以看成是“數(shù)據(jù)”在數(shù)據(jù)總線上傳輸。CPU與I/O設(shè)備傳送數(shù)據(jù)信息的中轉(zhuǎn)站。CPU讀取I/O設(shè)備的工作狀態(tài)的通道。CPU向I/O設(shè)備的發(fā)送控制命令的通道。4.1.3I/O接口的主要功能1.數(shù)據(jù)緩沖、隔離、和鎖存2.對(duì)信號(hào)的形式和數(shù)據(jù)的格式進(jìn)行變換3.對(duì)I/O端口進(jìn)行尋址4.1.4I/O接口編址1.統(tǒng)一編址方式2.獨(dú)立編址方式I/O端口和存儲(chǔ)單元統(tǒng)一編址,又稱為I/O的存儲(chǔ)器映像編址。I/O端口和存儲(chǔ)單元各自編址,即使地址編號(hào)相同也無妨。4.1.5I/O接口控制方式1.程序控制方式用程序控制CPU與外部設(shè)備之間的數(shù)據(jù)傳送,可分為無條件傳送方式和有條件傳送方式。(1)無條件傳送方式(同步傳送方式)

在傳送數(shù)據(jù)時(shí)總是假定外部設(shè)備已準(zhǔn)備就緒,因而不必查詢外部設(shè)備的狀態(tài)而直接進(jìn)行數(shù)據(jù)傳送。(2)有條件傳送方式(異步傳送方式)為了保證數(shù)據(jù)可靠傳送,CPU通過執(zhí)查詢行程序不斷讀取并測(cè)試外部設(shè)備狀態(tài),如果輸入設(shè)備處于已準(zhǔn)備好發(fā)送狀態(tài)或輸出設(shè)備為空閑狀態(tài)時(shí),則CPU才執(zhí)行傳送數(shù)據(jù)指令。由于條件傳送方式是CPU在不斷查詢外部設(shè)備的當(dāng)前狀態(tài)后才進(jìn)行數(shù)據(jù)傳送,所以又稱為“查詢傳送方式”。條件傳送方式的接口電路應(yīng)包括:數(shù)據(jù)端口和狀態(tài)端口。查詢傳送方式輸入接口電路查詢傳送方式輸出接口電路2.中斷控制方式查詢傳送方式中,CPU需要不斷的查詢外設(shè)狀態(tài),當(dāng)外設(shè)沒有準(zhǔn)備好時(shí),CPU需要等待,而多數(shù)外設(shè)(如鍵盤、打印機(jī)等)的工作速度比CPU要慢的多,CPU等待將浪費(fèi)掉大量的時(shí)間。由此為提高CPU利用率,可采用中斷控制方式,中斷控制數(shù)據(jù)傳送方式一般用于低速外部設(shè)備與CPU之間的信息交換。3.DMA控制方式DMA控制方式是一種塊傳送數(shù)據(jù)的方式。當(dāng)某一外部設(shè)備需要輸入/輸出一批數(shù)據(jù)時(shí),向DMA控制器發(fā)出請(qǐng)求,DMA控制器接收到這一請(qǐng)求后,向CPU發(fā)出總線請(qǐng)求;若CPU響應(yīng)DMA的請(qǐng)求把系統(tǒng)總線使用權(quán)賦給DMA控制器,數(shù)據(jù)傳送不再通過CPU,而直接在DMA控制器操縱下進(jìn)行。當(dāng)這批數(shù)據(jù)傳送完畢后,DMA控制器向CPU發(fā)出“結(jié)束請(qǐng)求”,CPU響應(yīng)這一請(qǐng)求,收回總線使用權(quán)。因此,采用DMA控制方式,CPU只需在數(shù)據(jù)傳送結(jié)束時(shí)收回中斷控制權(quán),不僅減輕了CPU的負(fù)擔(dān),同時(shí)提高了數(shù)據(jù)的傳送速度。4.1.6I/O接口的驅(qū)動(dòng)程序?qū)τ贗/O接口的驅(qū)動(dòng)程序而言,CPU執(zhí)行I/O指令僅僅作用于端口而已。由于I/O接口的引入,微機(jī)I/O驅(qū)動(dòng)程序從面向設(shè)備變成了面向端口,I/O端口與I/O設(shè)備之間,往往靠電路信號(hào)再進(jìn)一步完成傳送。I/O接口的驅(qū)動(dòng)程序?qū)嵸|(zhì)上是CPU通過狀態(tài)端口讀取外設(shè)狀態(tài)信息(可缺省),分析狀態(tài)信息后滿足條件通過控制端口發(fā)出設(shè)定的控制信息(命令字等),最后利用數(shù)據(jù)端口實(shí)現(xiàn)數(shù)據(jù)信息的傳送,所以I/O技術(shù)是軟件、硬件緊密結(jié)合的技術(shù)。4.2I/O接口結(jié)構(gòu)及芯片分類4.2.1I/O接口的內(nèi)部結(jié)構(gòu)數(shù)據(jù)寄存器,輸入時(shí)保存外設(shè)發(fā)往CPU的數(shù)據(jù)(輸入寄存器);在輸出時(shí)保存CPU發(fā)往外設(shè)的數(shù)據(jù)(輸出寄存器)。狀態(tài)和控制寄存器,分別用來保存狀態(tài)和命令;通過系統(tǒng)數(shù)據(jù)總線,CPU可以從狀態(tài)口中讀取當(dāng)前的接口狀態(tài),也可向控制口寫入命令。4.2.2I/O接口的外部特性I/O接口的外部特性由其對(duì)外的引出信號(hào)體現(xiàn)。接口信號(hào)分為面向主機(jī)或CPU一側(cè)的信號(hào)和面向外設(shè)一側(cè)的信號(hào)。對(duì)面向CPU一側(cè)的信號(hào),有數(shù)據(jù)總線、地址總線和控制總線。面向外設(shè)一側(cè)功能定義、時(shí)序及有效電平等差異較大。4.2.3I/O接口芯片分類1.通用接口芯片2.面向微機(jī)系統(tǒng)的專用接口芯片3.面向外設(shè)的的專用接口芯片支持通用的輸入/輸出及控制接口芯片;它適用于大部分外部設(shè)備,在某些專用的接口電路中也會(huì)用到它們。例如并行接口芯片8255,串行接口芯片8251等。與CPU配套使用,以增強(qiáng)其整體性能。例如用來擴(kuò)展系統(tǒng)中斷功能的中斷控制器8259A,用來支持DMA數(shù)據(jù)高速傳送的DMA控制器8237,用來為系統(tǒng)提供定時(shí)和計(jì)數(shù)功能的定時(shí)/計(jì)數(shù)器8253等。針對(duì)某種外設(shè)而設(shè)計(jì),僅用于某些特定的外設(shè)接口,例如鍵盤/顯示器接口芯片8279可支持簡(jiǎn)易鍵盤和數(shù)碼顯示器。4.2.4I/O接口芯片編程控制可編程的意思是指接口芯片的功能和工作方式可以通過程序來進(jìn)行設(shè)定(控制字或命令字)??删幊探涌谛酒哂卸喾N功能和工作方式,可以通過程序來選定其中的一種,有的芯片還可選定引腳信號(hào)的形式,為設(shè)定芯片的工作方式而編寫的程序段一般被稱為初始化程序段。由于可編程芯片具有多種工作方式和內(nèi)部資源,可以通過程序加以設(shè)置和選用,并且還可以在系統(tǒng)運(yùn)行過程中隨時(shí)加以改變,不僅簡(jiǎn)化了接口的設(shè)計(jì),并且為靈活運(yùn)用接口開辟了很大的空間。4.3可編程并行接口芯片8255A4.3.18255A內(nèi)部結(jié)構(gòu)及引腳功能4.3.1.18255A內(nèi)部結(jié)構(gòu)1.與外部設(shè)備設(shè)接口PA口(雙向8位)PB口(雙向8位)PC口(雙向8位),可單獨(dú)使用,也可以拆成兩個(gè)4位使用。PC口(高4位)PC口(低4位)A組B組與外設(shè)連接2.內(nèi)部控制邏輯電路設(shè)有專門的控制寄存器,可根據(jù)CPU送來的命令控制8255的工作方式或?qū)C口的指定位進(jìn)行置位/復(fù)位操作。3.與CPU接口數(shù)據(jù)線D0~D7PA、PB和PC3個(gè)I/O口與CPU進(jìn)行數(shù)據(jù)傳輸通道;地址線A0A1對(duì)PA、PB、PC口及控制寄存器進(jìn)行區(qū)分選擇;

控制線所以為片選、復(fù)位、讀、寫信號(hào)。1.面向CPU的引腳功能4.3.1.2引腳功能(1)D0~D7。8位三態(tài)數(shù)據(jù)線,雙向,連接系統(tǒng)數(shù)據(jù)線。(2)RESET。復(fù)位信號(hào),輸入,高電平有效。RESET有效時(shí),清除8255A中所有控制寄存器,并將各端口置成輸入

方式。(3)CS片選信號(hào),輸入,低電平有效。CS有效,表示8255A被選中。(4)RD/WR讀寫控制信號(hào),輸入,低電平有效。若RD有效,表示CPU讀8255A,即8255A向CPU傳送數(shù)據(jù)或狀態(tài)信息。若WR有效,表示CPU寫8255A,即8255A將控制字或數(shù)據(jù)寫入8255A。(5)A1A0。端口選擇信號(hào),輸入。8255A內(nèi)部包含PA端口、PB端口、

PC端口和控制端口(控制字寄存器)4個(gè)端口。2.面向外部設(shè)備的引腳及功能(1)PA0~PA7。PA數(shù)據(jù)口,雙向,用來連接外部設(shè)備。(2)PB0~PB7。PB數(shù)據(jù)口,雙向,用來連接外部設(shè)備。

(3)PC0~PC7。

PC數(shù)據(jù)口,雙向,用來連接外部設(shè)備數(shù)據(jù)口或其

控制及狀態(tài)信號(hào)。4.3.28255A控制字8255A有兩類控制字:一類用于定義各I/O口的工作方式,稱為方式選擇控制字;另一類專門用于對(duì)PC口的某一位進(jìn)行置位或/復(fù)位操作,稱為PC口置位/復(fù)位控制字。兩類控制字共用一個(gè)端口地址,都必須寫入控制口。1.工作方式選擇控制字用來設(shè)定各I/O口的工作方式及數(shù)據(jù)的傳送方向,通過定義工作方式控制字可將3個(gè)I/O口分別定義為不同的工作方式。2.PC口置位/復(fù)位控制字PC口可以對(duì)PC口的某一根I/O線實(shí)施單獨(dú)輸出控制,即位控制方式。PC口的位控功能可用于設(shè)置諸如電機(jī)啟停、繼電器開關(guān)、指示燈亮滅等外設(shè)的狀態(tài),還可用于設(shè)置PA口和PB口工作于方式1時(shí)的中斷允許位。3.兩個(gè)控制字的差別工作方式控制字特征是最高位為1,放在程序的開始部分;PC口的置位/復(fù)位控制字特征是最高位為0,可放在初始化程序以后的任何地方。4.3.38255A工作方式

8255A有3種工作方式,用戶可通過設(shè)置方式控制字來設(shè)置。1.方式0:基本輸入/出方式PA口、PB口及PC口均可以工作在方式0,CPU可從指定端口輸入信息,也可向指定端口輸出信息,適用于無條件數(shù)據(jù)傳送或查詢方式數(shù)據(jù)傳送。2.方式1:選通輸入/出方式PA、PB口可工作在方式1,可單獨(dú)連接外設(shè),通過控制字可將它們分別設(shè)置為輸入口或輸出口,方式1需要PC口提供聯(lián)絡(luò)信號(hào)與外設(shè)連接;PC口的高5位為PA口提供聯(lián)絡(luò)信號(hào)線,低3位為PB口提聯(lián)絡(luò)信號(hào)線。(1)方式1輸入。3)INTR。中斷請(qǐng)求信號(hào),輸出,高電平有效。在A組和B組控制電路中分別設(shè)置一個(gè)內(nèi)部中斷觸發(fā)器INTEA和INTEB。1)STB。選通信號(hào),輸入,低電平有效。STB有效時(shí),將外部輸入的數(shù)據(jù)鎖存到所選端口的輸入鎖存器中。2)IBF。輸入緩沖存儲(chǔ)器滿信號(hào),輸出,高電平有效。IBF有效時(shí),表示由輸入設(shè)備輸入的數(shù)據(jù)已占用該端口的輸入鎖存器,它實(shí)際上是對(duì)STB信號(hào)的回答信號(hào)。8255A工作方式1的輸入時(shí)序(2)方式1輸出。3)INTR。中斷請(qǐng)求信號(hào),輸出,高電平有效。在A組和B組控制電路中分別設(shè)置一個(gè)內(nèi)部中斷觸發(fā)器INTEA和INTEB。1)OBF。輸出緩沖存儲(chǔ)器滿信號(hào),輸出,低電平有效。OBF有效時(shí),表示CPU已將數(shù)據(jù)寫入該端口正等待輸出。2)ACK。外部應(yīng)答信號(hào),輸入,低電平有效。ACK有效,表示外部設(shè)備已收到8255A輸出的8位數(shù)據(jù),它實(shí)際上是對(duì)OBF信號(hào)的回答信號(hào)。8255A工作方式1的輸出時(shí)序3.方式2:雙向選通輸入/出方式

只有PA口可工作于方式2。當(dāng)PA口設(shè)定為方式2時(shí),它的控制信號(hào)由PC口提供,并可向CPU發(fā)出中斷請(qǐng)求信號(hào);同時(shí),允許PB口工作于方式0或方式1完成輸入/輸出功能。4.3.48255A的狀態(tài)字

若8255A的工作方式設(shè)定為方式1或方式2時(shí),讀PC口便可讀得相應(yīng)的狀態(tài)字,以便了解8255A的工作狀態(tài),并供CPU查詢。方式1的狀態(tài)字格式方式2的狀態(tài)字格式4.4定時(shí)/計(jì)數(shù)技術(shù)及其控制芯片8253A4.3.1定時(shí)/計(jì)數(shù)技術(shù)1.定時(shí)/計(jì)數(shù)概念定時(shí):學(xué)校的課間定時(shí)打鈴、交通紅綠燈、動(dòng)態(tài)存儲(chǔ)器的定時(shí)刷新、系統(tǒng)的日歷時(shí)鐘、定時(shí)采樣計(jì)數(shù):生產(chǎn)線產(chǎn)品計(jì)數(shù)、出租車計(jì)費(fèi)、點(diǎn)鈔機(jī)、電機(jī)編碼采樣、智能手環(huán)、心率計(jì)、電子投票2.計(jì)數(shù)功能的實(shí)現(xiàn)方法

計(jì)數(shù)功能的實(shí)現(xiàn)方法比較單一,大多是利用外部設(shè)備產(chǎn)生計(jì)數(shù)器的計(jì)數(shù)脈沖完成計(jì)數(shù)功能。3.定時(shí)功能的實(shí)現(xiàn)方法(1)軟件定時(shí)

延遲子程序,包含一定的指令,設(shè)計(jì)者要求對(duì)這些指令的執(zhí)行時(shí)間進(jìn)行嚴(yán)密的計(jì)算或者精確的測(cè)試,以便確立延遲時(shí)間是否符合要求,時(shí)間長(zhǎng)時(shí)用循環(huán)程序。

優(yōu)點(diǎn):不需添加硬件設(shè)備,只需編制有關(guān)延時(shí)程序缺點(diǎn):增加CPU的開銷,浪費(fèi)CPU資源。單穩(wěn)態(tài)延時(shí)電路或計(jì)數(shù)電路來實(shí)現(xiàn)延時(shí)或定時(shí)器件容易老化,導(dǎo)致定時(shí)不準(zhǔn)(RC決定脈沖寬度)

優(yōu)點(diǎn):與CPU并行工作,不占用CPU資源。

缺點(diǎn):定時(shí)時(shí)長(zhǎng)不靈活,器件老化等(2)不可編程硬件定時(shí)(3).可編程硬件定時(shí)

可編程硬件定時(shí)器在定時(shí)時(shí)長(zhǎng)可利用CPU對(duì)其進(jìn)行初始化,一旦設(shè)置完畢,啟動(dòng)定時(shí)后,與CPU并行工作,定時(shí)結(jié)束時(shí)可通過產(chǎn)生溢出信號(hào)等方式提供結(jié)束標(biāo)志,供CPU查詢或向CPU提出中斷請(qǐng)求以完成具體的任務(wù)。4.微機(jī)系統(tǒng)中的定時(shí)器/計(jì)數(shù)器

微機(jī)系統(tǒng)中的定時(shí)器/計(jì)數(shù)器都是可編程的,計(jì)數(shù)功能和定時(shí)功能本質(zhì)上都是由數(shù)字計(jì)數(shù)器來完成的,兩者區(qū)別僅在于計(jì)數(shù)脈沖特征不同。

定時(shí)器的計(jì)數(shù)脈沖一般由系統(tǒng)時(shí)鐘分頻提供,其脈沖周期是標(biāo)準(zhǔn)時(shí)間長(zhǎng)度。

計(jì)數(shù)器的計(jì)數(shù)脈沖則沒有標(biāo)準(zhǔn)時(shí)長(zhǎng)限制,大多來自外部設(shè)備產(chǎn)生的隨機(jī)脈沖信號(hào)。4.4.2定時(shí)/計(jì)數(shù)控制芯片8253A8253A功能特點(diǎn)如下:(1)具有3個(gè)獨(dú)立的16位減1計(jì)數(shù)器通道;(2)每個(gè)計(jì)數(shù)器通道都可以單獨(dú)進(jìn)行二進(jìn)制或十進(jìn)制計(jì)數(shù);(3)每個(gè)計(jì)數(shù)器的計(jì)數(shù)速率可達(dá)2MHz;(4)每個(gè)計(jì)數(shù)通道都可有程序選擇6種工作方式;(5)所有輸入\出電平都與TTL兼容。4.4.2.18253A內(nèi)部結(jié)構(gòu)1.與外部設(shè)備的接口8253A內(nèi)部包含三個(gè)功能完全相同的通道,每個(gè)通道內(nèi)部設(shè)有一個(gè)16位計(jì)數(shù)器,可進(jìn)行二進(jìn)制或十進(jìn)制(BCD碼)計(jì)數(shù)。與計(jì)數(shù)器相對(duì)應(yīng),每個(gè)通道內(nèi)設(shè)有一個(gè)16位計(jì)數(shù)值鎖存器,必要時(shí)可用來鎖存計(jì)數(shù)值。

計(jì)數(shù)過程中,計(jì)數(shù)器受門控信號(hào)GATE的控制。計(jì)數(shù)器的輸入與輸出以及門控信號(hào)之間的關(guān)系,取決于工作方式。2.與CPU的接口(1)數(shù)據(jù)總線緩沖器

8位三態(tài)緩沖器,CPU通過數(shù)據(jù)總線緩沖器向8253寫入數(shù)據(jù)和命令或從數(shù)據(jù)總線緩沖器向8253讀取數(shù)據(jù)或狀態(tài)信息。a.向8253寫入確定工作方式的命令b.向8253計(jì)數(shù)器寄存器裝入計(jì)數(shù)值c.讀出8253的計(jì)數(shù)值(2)

讀寫控制電路8253內(nèi)部操作的控制部分,接收來自系統(tǒng)總線的信息,產(chǎn)生控制整個(gè)芯片的控制信號(hào)。4.4.2.2引腳功能1.面向CPU的引腳及功能(1)D7~D0。8位三態(tài)數(shù)據(jù)線,雙向,用來與系統(tǒng)數(shù)據(jù)線連接。(2)CS

。片選信號(hào),低電平有效。

(3)A1A0—端口選擇信號(hào),由CPU輸入,選擇3個(gè)通道和控制端口。

(4)RD/WR。讀寫控制信號(hào),輸入,低電平有效。RD—CPU讀取A1A0所選定通道內(nèi)計(jì)數(shù)器的當(dāng)前值WR—CPU向8253控制字寄存器或向計(jì)數(shù)器置計(jì)數(shù)初值。2.面向外部設(shè)備的引腳及功能(1)CLKi(i=0,1,2)。計(jì)數(shù)脈沖輸入端,輸入。計(jì)數(shù)脈沖上升沿檢測(cè)門控信號(hào)GATEi,計(jì)數(shù)脈沖下降沿實(shí)現(xiàn)計(jì)數(shù)器減1計(jì)數(shù),8253A計(jì)數(shù)脈沖最高頻率不能超過2MHz。(2)GATEi(i=0,1,2)。門控信號(hào),輸入。8253A計(jì)數(shù)過程需要檢測(cè)門控信號(hào),門控信號(hào)可以使能和禁止計(jì)數(shù)。門控信號(hào)可以是高電平也可以是上升沿。(3)OUTi(i=0,1,2)。計(jì)數(shù)結(jié)束的輸出信號(hào),輸出。8253A計(jì)數(shù)結(jié)束時(shí)OUTi輸出一個(gè)結(jié)束信號(hào)表示本次計(jì)數(shù)過程結(jié)束,結(jié)束輸出信號(hào)形式由其對(duì)應(yīng)工作方式確定。4.4.38253A控制字及工作方式4.5.48253A初始化編程及鎖存命令1.8253A的初始化編程(2)設(shè)置計(jì)數(shù)器初值,即設(shè)置計(jì)數(shù)的初始值,其初始值可以是8位,也可以是16位,若是16位則需要用兩次輸出指令完成計(jì)數(shù)初值設(shè)定,順序是先送低字節(jié),后送高字節(jié)。計(jì)數(shù)器的初值必須在開始計(jì)數(shù)之前,由CPU用輸出指令預(yù)置。

(1)設(shè)置控制字,由CPU向8253A的控制寄存器輸出一個(gè)控制字,用來選擇計(jì)數(shù)器、設(shè)定工作方式和計(jì)數(shù)格式;

8253初始化后進(jìn)入工作狀態(tài),鎖存命令是配合CPU讀計(jì)數(shù)器當(dāng)前值而設(shè)置的,在讀計(jì)數(shù)值時(shí),必須先用鎖存命令,將當(dāng)前計(jì)數(shù)值在輸出鎖存器中鎖定,方可由CPU讀取,否則計(jì)數(shù)器的數(shù)值有可能正在改變過程中,可能讀取一個(gè)不確定的結(jié)果。鎖存命令一旦寫入8253,減法計(jì)數(shù)器計(jì)到某一個(gè)值,該值被鎖定,輸出鎖存器跟隨減法計(jì)數(shù)器,所以鎖存器鎖定的值就是計(jì)數(shù)器在同一時(shí)刻的值。2.8253的鎖存命令

注意:當(dāng)CPU將鎖定值用輸入指令在讀走時(shí),鎖存器自動(dòng)失鎖,又跟隨減法計(jì)數(shù)器工作,在鎖存和讀出計(jì)數(shù)值的過程中,不影響計(jì)數(shù)進(jìn)行。4.4.58253A的工作方式6種方式,遵從3個(gè)基本原則:

①控制字寫入8253A后,控制邏輯復(fù)位,OUTi進(jìn)入初始狀態(tài);

②裝入計(jì)數(shù)初值后,要經(jīng)過一個(gè)時(shí)鐘周期,計(jì)數(shù)器才開始工作,時(shí)鐘下降沿使計(jì)數(shù)器減1計(jì)數(shù);

③CLK上升沿,采樣門控信號(hào)。1.工作方式0—計(jì)數(shù)結(jié)束中斷2.工作方式1—可編程單脈沖發(fā)生器3.工作方式2—速率發(fā)生器4.工作方式3—方波發(fā)生器5.工作方式4—軟件觸發(fā)方式6.工作方式5—硬件觸發(fā)方式4.5.1串行通信基礎(chǔ)知識(shí)1.串行通信基本概念所謂串行通信,就是使數(shù)據(jù)一位一位依次進(jìn)行傳輸進(jìn)行通信。在傳輸過程中,每一位數(shù)據(jù)占用1個(gè)固定的時(shí)間長(zhǎng)度。只用幾根數(shù)據(jù)線就可以在系統(tǒng)之間進(jìn)行信息交換。與并行通信相比,串行通信可實(shí)現(xiàn)較遠(yuǎn)距離從幾十米到幾千米的通信,節(jié)省傳輸介質(zhì)。全球互聯(lián)網(wǎng)就是串行通信方式最典型的應(yīng)用。2.傳輸方式分類4.5串行通信及其接口芯片8251A(1)按通信的方向和時(shí)間分類,可分為單工、半雙工和全雙工。

串行通信在信息格式的約定上可分為兩種方式異步串行通信同步串行通信1).異步串行通信方式

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(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)論