版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1第6章數(shù)字量輸入輸出接口
2目錄6.1并行接口的概念6.2并行接口控制芯片8255A6.3數(shù)字量并行接口的應(yīng)用6.4數(shù)字量串行接口及芯片3概述數(shù)字量輸入輸出接口包括數(shù)字量輸入和數(shù)字量輸出兩大部分。數(shù)字量是計(jì)算機(jī)能夠直接識(shí)別和處理的信號(hào)。輸入輸出系統(tǒng)中的主要數(shù)字量包括開關(guān)量輸入和輸出。所以數(shù)字量又稱為開關(guān)量。本章主要介紹數(shù)字量并行輸入輸出接口、數(shù)字量串行輸入輸出接口以及光電隔離的輸入輸出接口。46.1并行接口的概念并行接口通信就是把一個(gè)字符的各位同時(shí)用幾根線進(jìn)行傳輸。并行通信用在傳輸速率要求較高,而傳輸距離較短的場(chǎng)合。圖6-1給出了數(shù)據(jù)總線進(jìn)行并行通行的例子。01010110
D0D1D2D3D4D5D6D7目的D0D1D2D3D4D5D6D7源圖6-1數(shù)據(jù)總線進(jìn)行并行通行的例子56.2并行接口控制芯片8255A8255A是Intel公司生產(chǎn)的可編程并行接口芯片,它有多種工作方式可以進(jìn)行選擇,并且通常無需外圍電路,使用方便而且廣泛。6.2.18255A的編程結(jié)構(gòu)6.2.28255A的引腳功能6.2.38255A的控制字6.2.48255A的工作方式66.2.18255A的編程結(jié)構(gòu)8255A的邏輯結(jié)構(gòu)如圖6-2所示,主要包括三個(gè)并行的輸入/輸出端口A、B和C,A組和B組的控制電路,數(shù)據(jù)緩沖器以及讀寫控制邏輯等部分。為了與A組和B組進(jìn)行區(qū)分,以下將端口A、B和C稱為PA口、PB口和PC口。78(1)PA、PB和PC口的作用與功能8255A有三個(gè)I/O端口,分別是PA、PB和PC,三個(gè)端口都是8位的,并且通過編程可以作為輸入、輸出或輸入/輸出端口使用。PA口是一個(gè)獨(dú)立的8位I/O口,有數(shù)據(jù)輸入/輸出鎖存功能。PB口也是一個(gè)獨(dú)立的8位I/O口,有數(shù)據(jù)輸出鎖存功能。PC口可以看作是一個(gè)獨(dú)立的8位I/O口;也可以看作是兩個(gè)獨(dú)立的4位I/O口,還可看作獨(dú)立的8位I/O口。有數(shù)據(jù)輸出鎖存功能。端口PA和PB通常獨(dú)立使用,而端口PC既可以獨(dú)立使用,也可以配合端口PA和PB的工作,為它們提供聯(lián)絡(luò)信號(hào),包括選通信號(hào)和應(yīng)答信號(hào)。端口PC在獨(dú)立工作時(shí),既可以8位并行輸入或輸出,也可以按位操作,具有更大的靈活性。9(2)A組和B組的控制電路在配合端口PA和PB工作時(shí),端口PC被分為兩部分,高4位(PC7~PC4)與端口PA一起構(gòu)成了A組,而低4位(PC3~PC0)與端口PB一起構(gòu)成了B組。A組和B組的控制電路接收由讀寫控制邏輯獲得的控制字,分別對(duì)A組和B組的工作方式進(jìn)行控制,因此A組和B組可以工作在不同方式下。10(3)數(shù)據(jù)緩沖器雙向、三態(tài)的數(shù)據(jù)緩沖器是8255A與數(shù)據(jù)總線的接口,微處理器可以通過它向三個(gè)I/O端口寫入或讀出數(shù)據(jù),或者寫入控制字以選擇8255A的工作方式。(4)讀寫控制邏輯讀寫控制邏輯電路負(fù)責(zé)管理8255A的數(shù)據(jù)傳輸過程,實(shí)現(xiàn)8255A內(nèi)部和外部的數(shù)據(jù)、控制字的傳送。它根據(jù)地址、控制信號(hào)(復(fù)位信號(hào)、讀寫信號(hào)和片選信號(hào)等)的組合來決定將微處理器發(fā)送的控制字傳送給A組或B組的控制電路,或者選擇輸入或輸出數(shù)據(jù)到PA、PB和PC口。116.2.28255A的引腳功能1.面向CPU的引腳信號(hào)及功能D0-D7:8位,雙向,三態(tài)數(shù)據(jù)線,用來與系統(tǒng)數(shù)據(jù)總線相連;RESET:復(fù)位信號(hào),高電平有效,輸入,用來清除8255A的內(nèi)部寄存器,并置A口,B口,C口均為輸入方式;A1,A0:內(nèi)部口地址的選擇,輸入。這兩個(gè)引腳上的信號(hào)組合決定對(duì)8255A內(nèi)部的哪一個(gè)口或寄存器進(jìn)行操作122.面向外設(shè)的引腳信號(hào)及功能PA0~PA7:A組數(shù)據(jù)信號(hào),用來連接外設(shè);具有輸入、輸出鎖存功能,可以作為單向或雙向信號(hào)線使用。PB0~PB7:B組數(shù)據(jù)信號(hào),用來連接外設(shè);具有輸出鎖存功能,僅可以作為單向信號(hào)線使用。PC0~PC7:C組數(shù)據(jù)信號(hào),用來連接外設(shè)或者作為控制信號(hào)。具有輸出鎖存功能,僅可以作為單向信號(hào)線使用。136.2.38255A的控制字1.方式控制字(控制口)142.C口置位/復(fù)位控制字(控制口)注意:這里必須使用控制口操作PC口153、8255A的狀態(tài)字8255A無狀態(tài)寄存器,在方式1和方式2時(shí),可以用端口C兼作狀態(tài)用。166.2.48255A的工作方式1.方式0方式0稱為基本輸入/輸出方式,適合在同步傳輸(無條件傳輸)和程序查詢方式下工作,CPU通過軟件方式確認(rèn)外設(shè)狀態(tài),與外設(shè)交換數(shù)據(jù),因而不適合在實(shí)時(shí)性要求高的應(yīng)用環(huán)境。在方式0中,PA、PB和PC相互獨(dú)立工作,PC又分為高4位和低4位兩個(gè)獨(dú)立的部分,通過控制字可以將這四部分任意選擇為輸入或輸出,共有16種組合。17初始化實(shí)例例如,某系統(tǒng)要求使用8255A的C口的PC4輸出一個(gè)由高到低的跳變。寫出8255A的方式控制字和初始化程序段?!窘狻坑捎诒纠魂P(guān)心PA和PB的工作方式,所以不用考慮設(shè)置8255A的方式控制字。為了實(shí)現(xiàn)PC4輸出一個(gè)由高到低的跳變,需要PC4先輸出一個(gè)高電平,然后輸出一個(gè)低電平。方法一:采用普通方式設(shè)置PC為輸出,然后置位/復(fù)位PC4,具體程序段如下:MOV DX,控制口MOV AL,1000XXXB ;選擇PC高位輸出,方式0OUT DX,AL ;MOV DX,PC口MOV AL,XXX1XXXXB ;即PC4設(shè)置為高電平輸出OUT DX,AL ;PC4置0(低電平)MOV AL,XXX0XXXXB ;即PC4設(shè)置為低電平輸出OUT DX,AL ;PC4置0(低電平)18為了實(shí)現(xiàn)PC4輸出一個(gè)由高到低的跳變,需要PC4先輸出一個(gè)高電平,然后輸出一個(gè)低電平。方法2:采用置位/復(fù)位PC口方式,具體程序段如下:MOV DX,控制口MOV AL,00001001B ;即05H,選擇PC4,置位OUT DX,AL ;PC4置1(高電平)MOV AL,00001000B ;即05H,選擇PC4,復(fù)位OUT DX,AL ;PC4置0(低電平)對(duì)于PC口可以采用兩種方法之一,方法二簡(jiǎn)單。對(duì)應(yīng)PA和PB口,只能采用方法一,不能使用方法二。特別注意:方法二對(duì)控制口進(jìn)行,不是PC端口。192.方式1方式1是一種選通I/O方式,A口和B口仍作為兩個(gè)獨(dú)立的8位I/O數(shù)據(jù)通道,可單獨(dú)連接外設(shè),通過編程分別設(shè)置它們?yōu)檩斎牖蜉敵?,輸入輸出均具有?shù)據(jù)鎖存功能。而C口則要有6位(分成兩個(gè)3位)分別作為A口和B口的應(yīng)答聯(lián)絡(luò)線,其余2位仍可工作在方式0,可通過編程設(shè)置為輸入或輸出。20(1)方式1的輸入組態(tài)和應(yīng)答信號(hào)的功能圖6-7給出了8255A的A口和B口在方式1的輸入組態(tài)圖。C口的PC3-PC5用作A口的應(yīng)答聯(lián)絡(luò)線,PC0-PC2則作用B口的應(yīng)答聯(lián)絡(luò)線,余下的PC6~PC7還可作為方式0使用。21方式1輸入組態(tài)的應(yīng)答聯(lián)絡(luò)線2223方式1的輸出組態(tài)和應(yīng)答信號(hào)24253.方式2方式2為雙向選通I/O方式,只有A口才有此方式。這時(shí),C口有5根線用作A口的應(yīng)答聯(lián)絡(luò)信號(hào),其余3根線可用作方式0,也可用作B口方式1的應(yīng)答聯(lián)絡(luò)線。方式2就是方式1的輸入與輸出方式的組合,各應(yīng)答信號(hào)的功能也相同。而C口余下的PC0~PC2正好可以充當(dāng)B口方式1的應(yīng)答線,若B口不用或工作于方式0,則這三條線也可工作于方式0。26方式2為雙向選通I/O方式中斷請(qǐng)求輸出緩沖器滿輸出應(yīng)答(外設(shè)讀走數(shù)據(jù))輸入選通(外設(shè)準(zhǔn)備好了數(shù)據(jù))輸入緩沖器滿(8255已經(jīng)收到數(shù)據(jù))作為普通輸入輸出(方式0)276.3并行接口的應(yīng)用
6.3.1七段數(shù)碼管接口28本節(jié)介紹8255A的典型應(yīng)用,包括8255A與LED的接口、8255A與非編碼鍵盤的接口、8255A與并行打印機(jī)的接口。1、單個(gè)LED與8255A的接口2、多個(gè)LED與8255A的接口296.3.1七段數(shù)碼管接口數(shù)碼顯示管(LED)是一種簡(jiǎn)單的顯示輸出設(shè)備,通常作為儀器、儀表的顯示器,用于顯示數(shù)字或少數(shù)字符。LED種類較多、大小各異,主要有七段數(shù)碼管和16段數(shù)碼管。圖6.13給出了一種七段式數(shù)碼管的內(nèi)部結(jié)構(gòu)。30顯示不同數(shù)字和字符時(shí),七段數(shù)碼管需要點(diǎn)亮的二極管位置不同。如,顯示數(shù)字“3”,需要點(diǎn)亮a、b、c和g四段發(fā)光二極管。表6-2給出了圖6.13所示結(jié)構(gòu)的七段數(shù)碼管實(shí)現(xiàn)數(shù)字0~9以及字符A~F時(shí),需要發(fā)光的二極管段。31顯示的數(shù)字發(fā)光的段顯示的數(shù)字發(fā)光的段顯示的字符發(fā)光的段顯示的字符發(fā)光的段0abcdef5afgcdAabcefgFaefg1bc6afgcdebabcdefgqabcfg2abged7abcCadef–g3abgcd8abcdefgdbcdeg=gd4fgbc9abcdfgEadefgPabefg321、單個(gè)七段數(shù)碼管與8255A的接口8255A與單個(gè)數(shù)碼管的接口電路如圖6.14所示。共陽33該數(shù)碼管由8個(gè)發(fā)光二極管構(gòu)成,對(duì)外引腳共9個(gè),分別是a、b、c、d、e、f、g、dp和公共引腳,采用共陽極結(jié)構(gòu)。除Vcc外,每個(gè)引腳外接1個(gè)460歐姆的電阻,然后連接到8255A的PB口的PB0~PB7上。根據(jù)題意,當(dāng)在PB0上輸出低電平時(shí),LED的a段二極管發(fā)光,輸出高電平時(shí),LED的a段二極管熄滅。其它各段發(fā)光的方法依次類推。34首先,分析圖中LED實(shí)現(xiàn)不同數(shù)字和字符時(shí)發(fā)光的二極管,由此確定PB口輸出什么數(shù)值時(shí)控制顯示不同的“數(shù)字”或“字符”。例如,要顯示數(shù)字“2”時(shí),需要點(diǎn)亮a、b、d、e、g共5段發(fā)光二極管,根據(jù)a、b、d、e、g與PB口的連接關(guān)系,可以確定PB口的值應(yīng)該設(shè)置為PB0=0(a段),PB1=0(b段),PB2=1(c短),PB3=0(d段),PB4=0(e段),PB5=1(f段),PB6=0(g段),PB0=1(DP段),寫出字節(jié)的形式就是10100100B,即0A4H。這種為確定顯示字符而確定的CPU需要送出的控制數(shù)值,稱為L(zhǎng)ED段碼或字形碼。表6-3給出了全部16進(jìn)制數(shù)字字符的LED段碼。35顯示數(shù)符發(fā)光段LED段碼顯示數(shù)符發(fā)光段LED段碼0abcdefC0HAabcefg88H1bcF9Hbcdefg2abgedA4HCadef3abgcdB0Hdbcdeg4fgbc99HEadefg5afgcd92HFaefg6afgcde82Hqabcfg7abcE8H–g8abcdefg80H=gd9abcdfg9FPabefg36在上例中,采用共陽LED,低有效驅(qū)動(dòng)顯示,如果要求先顯示數(shù)字“3”,然后顯示數(shù)字“6”,寫出程序段?!窘狻肯确治鰯?shù)字“3”和數(shù)字“6“顯示時(shí)的LED段碼,分別為:0B0H和82H,然后寫出程序段如下:MOVDX,8255控制口MOVAL,10000000B ;80H,8255A初始化B口方式0,輸出OUTDX,AL MOVDX,8255PB口MOVAL,0B0H ;“3”的段碼OUTDX,AL ;顯示“3”MOVAL,82H ;“6”的段碼OUTDX,AL ;顯示“6”372、8255A與多個(gè)LED的接口圖6-15為8255A驅(qū)動(dòng)8個(gè)LED的接口電路。其中的七段數(shù)碼管采用共陰LED,每個(gè)LED包含8個(gè)引腳,分別是a、b、c、d、e、f、g、dp和公共引腳。除公共引腳外,每個(gè)引腳外接1個(gè)460歐姆的電阻(圖中未給出),然后連接到8255A的PA口的PA0~PA7上。每個(gè)LED的公共引腳經(jīng)過反相器連接到PC口的PC0~PC7。3839在這種有多個(gè)數(shù)碼管的情況下,通常采用動(dòng)態(tài)掃描的方式來控制數(shù)碼管的顯示,其過程是首先使PC0輸出高電平,而PC1~PC7輸出低電平,選中數(shù)碼管U0,然后由PA口根據(jù)要顯示的第一個(gè)數(shù)字輸出8位數(shù)據(jù)(稱為段碼或字形碼),盡管段碼同時(shí)到達(dá)8個(gè)數(shù)碼管的段選線,但只有U0能夠顯示,因此將第一個(gè)數(shù)字顯示在U0上。這種狀態(tài)維持2m后,接下來使PC1輸出高電平,而其它7位輸出低電平,可以在數(shù)碼管U1上顯示第二個(gè)數(shù)字。以此類推,周而復(fù)始,就可以使8個(gè)數(shù)碼管同時(shí)顯示8位數(shù)字。上述動(dòng)態(tài)掃描過程利用了視覺暫留現(xiàn)象。為了能夠獲得較好的顯示效果,每個(gè)數(shù)碼管的掃描時(shí)間需要選取恰當(dāng),時(shí)間太長(zhǎng)會(huì)造成閃爍現(xiàn)象。40求解過程-第1階段:設(shè)置段碼表本例由于采用共陰LED,而且LED引腳和PA口的連接順序不同(引腳a、b、c、d、e、f、g、dp分別對(duì)應(yīng)PA口的PA7~0),因而得到的段碼(字形碼)不同。PA位PA7PA6PA5PA4PA3PA2PA1PA0DB位D7D6D5D4D3D2D1D0段abcdefgdp段碼011111100FCH10110000060H211011010DAH311110010F2H40110011066H510110110B6H610111110BEH711100000E0H811111110FEH911110110F6HA111
1110EEH41第2階段:設(shè)置顯示緩沖區(qū)8個(gè)LED要顯示的數(shù)字可以放到顯示緩沖區(qū)DispBuff中。例如,8個(gè)LED要顯示“20070501”,則DispBuff的值可以設(shè)置為:2,0,0,7,0,5,0,1。通過修改顯示緩沖區(qū),可以讓8個(gè)LED顯示不同的數(shù)字,簡(jiǎn)化了軟件設(shè)計(jì)。DispBuff: 02H,00H,00H,07H,00H,05H,00H,01H ;放置要實(shí)現(xiàn)的8個(gè)數(shù)字,作為查找下表的偏移量使用42第3階段:設(shè)計(jì)8個(gè)LED輪流顯示的完整程序//初始化8255AMOV AL,10000000B ;PA、PC均為方式0,輸出
MOV DX,PORTCTL ;8255A控制口
OUT DX,ALBEGIN:MOV CX,8 ;循環(huán)8次
MOV DI,OffsetDisBuff
MOV BX,OffsetSegCodeTab MOV SI,0MOV AH,00000001B ;PC0設(shè)置為1,選中第一個(gè)LED43MOV AH,00000001B ;PC0設(shè)置為1,選中第一個(gè)LEDSCAN:MOV AL,AH ;使PC口相應(yīng)位置位
MOVDX,PORTC
;MOV DX,PORTCTL ;C口位控時(shí)的指令
OUT DX,AL ;使PC口相應(yīng)位置位
ADD DI,SI ;查找顯示緩沖區(qū)
MOVDX,[DI] ;取出要顯示的數(shù)字符
MOV AL,[BX+DX] ;取出顯示字符的段值(字形碼)
INC SI ;下一個(gè)要顯示字符的偏移量
MOV DX,PORTA ;PA口輸出字形碼
OUT DX,ALCALL DELAY2MS SHL AH,1 ;為顯示下一個(gè)數(shù)碼管做準(zhǔn)備
;ADD AH,2 ;C口位控時(shí),為顯示下一個(gè)數(shù)碼管做準(zhǔn)備
LOOP SCAN JMP BEGIN ;重復(fù)顯示446.3.2非編碼鍵盤接口鍵盤根據(jù)實(shí)現(xiàn)方法可以分為編碼鍵盤和編碼鍵盤非兩種。編碼鍵盤是指可以直接提供按鍵編碼(如ASCII碼)的鍵盤。為了能夠提供按鍵編碼,編碼鍵盤內(nèi)部需要有鍵盤掃描電路,這些硬件電路能夠檢測(cè)是否有鍵按下,并根據(jù)按下的是哪一個(gè)鍵而輸出其編碼。比如經(jīng)常使用的PC機(jī)鍵盤,其內(nèi)部專門設(shè)有一個(gè)單片機(jī)進(jìn)行鍵盤檢測(cè)和處理。非編碼鍵盤只有按鍵而無掃描電路,這些按鍵它由多個(gè)開關(guān)組合而成。4516個(gè)鍵的鍵盤對(duì)于大多數(shù)的鍵盤,按鍵被排成行和列的矩陣。下面以機(jī)械式開關(guān)構(gòu)成的16個(gè)鍵的鍵盤為例(如圖6-16所示),來討論鍵盤接口的工作原理,這種原理對(duì)采用其它類型的開關(guān)的鍵盤也是適用的。46分析設(shè)16個(gè)鍵分別為16進(jìn)制數(shù)字0~9和A~F,鍵盤排列、連線及接口電路如圖6-16所示。16個(gè)鍵排成4行×4列的矩陣,通過8255A構(gòu)成的接口與CPU連接。8255A的端口A作輸出,端口B作輸入。矩陣的4條行線接到輸出端口A的PA3~PA0,用程序能改變這4條行線上的電平。4條列線連到輸人端口B的PB3~PB0,4條行線還同時(shí)接到輸人端口B的PB7~PB4上(這不是必須的,可以不接),這樣,用輸入指令讀取B口狀態(tài)時(shí),可同時(shí)讀取鍵盤的行列信號(hào)。4716個(gè)按鍵的掃描碼例如,對(duì)于數(shù)字0,它位于3行、3列,壓下“0”鍵時(shí),從B口可讀得D7位和D3位為0,其余位為1,所以數(shù)字0的編碼為01110111B,即77H;對(duì)于數(shù)字6,處于2行1列,壓下‘6’鍵時(shí),D6位和D1位0以其余位為1,所以數(shù)字6的編碼為10111101B=BDH。按鍵01234567掃描碼77H7BH7DH7EH0B7H0BBH0BDH0BEH按鍵89ABCDEF掃描碼0D7H0DBH0DDH0DEH0E7H0EBH0EDH0EEH48確定程序流程包括鍵盤檢測(cè)、去抖動(dòng)、鍵值編碼和確定鍵名等。具體流程如下:(1)檢測(cè)是否所有鍵都松開了,若沒有則反復(fù)檢測(cè)(該步可省去)。當(dāng)所有鍵都松開了,轉(zhuǎn)(2);(2)檢測(cè)是否有鍵壓下,若無鍵壓下則反復(fù)檢測(cè)。(3)若有鍵壓下,則通過延遲20ms消除鍵抖動(dòng),如果該鍵還按下,則繼續(xù)判斷是哪個(gè)鍵按下,否則,繼續(xù)檢測(cè)。(4)對(duì)壓下的鍵進(jìn)行編碼,將該鍵的行列信號(hào)轉(zhuǎn)換成16進(jìn)制碼,由此可確定哪個(gè)鍵被壓下了。如出現(xiàn)多鍵重接的情況,只有在其它鍵均釋放后,僅剩一個(gè)鍵閉合時(shí),才把此鍵當(dāng)作本次壓下的鍵。(5)該鍵釋放后,再回到(2)。49給出具體程序首先給出該8255A的端口地址(這里是假設(shè),實(shí)際系統(tǒng)根據(jù)地址譯碼確定),具體為:PORTAEQU0FF9H ;8255A口地址PORTBEQU0FFBH ;8255B口地址PORTCTLEQU0FFFH ;8255控制口地址然后確定程序出口,具體參數(shù)為:若返回值A(chǔ)H=0,表示已讀到有效的鍵值,并在AL中存有0~F鍵的16進(jìn)制代碼;若返回值A(chǔ)H=l,則表示出錯(cuò)。最后給出程序段,包括注釋與說明。50給出具體程序本段程序可以省略等待全部按鍵釋放51給出具體程序本段程序檢查是否有鍵按下?52本段程序檢查哪一個(gè)鍵按?本段程序編碼并查表從按鍵F開始查表,直到按鍵0。如果按鍵較少,則不用查表,根據(jù)編碼轉(zhuǎn)去直接處理
INAL,DX CMPAL,77H JZKey0 CMPAL,7BH JZKey1
…
…53從上面鍵盤接口例子我們可以看到,為了要及時(shí)發(fā)現(xiàn)鍵盤中的按鍵是否按下,CPU必須定時(shí)或不斷地利用軟件(即上述掃描程序)對(duì)鍵盤進(jìn)行掃描,這樣CPU的開銷太大,降低了CPU的工作效率。為此有關(guān)廠家專門開發(fā)了、用于鍵盤接口的大規(guī)模集成電路芯片,例如Intel8279、SSK814。按鍵01234567掃描碼77H7BH7DH7EH0B7H0BBH0BDH0BEH按鍵89ABCDEF掃描碼0D7H0DBH0DDH0DEH0E7H0EBH0EDH0EEH546.3.3并行打印機(jī)接口并行打印機(jī)接口(LPT)在不同PC系列機(jī)型中,以不同的形式出現(xiàn)。在PC/XT機(jī)中是以I/O擴(kuò)展槽上的IBM并行打印機(jī)適配器板出現(xiàn),在AT機(jī)中是以插在I/O擴(kuò)展槽上的IBM并行口/串行口適配器板出現(xiàn)。現(xiàn)在的LPT則集成在主板上,隨著計(jì)算機(jī)的快速發(fā)展,LPT接口的使用頻率在下降,代之而起的是基于USB接口的打印機(jī)的廣泛使用。但作為打印機(jī)的主要接口之一,本節(jié)有必要進(jìn)行介紹與講述。55Centronics總線標(biāo)準(zhǔn)在并行打印機(jī)中,設(shè)置有36引腳的Centronics總線標(biāo)準(zhǔn)插座。打印機(jī)與PC通過36芯-25芯電纜連接到PC的25芯D型連接器LPT上。它的25個(gè)引腳所代表的信號(hào)可分為:數(shù)據(jù)信號(hào)、狀態(tài)信號(hào)和控制信號(hào)三類。表6-6給出了Centronic總線引腳及其功能說明。56Centronic總線引腳及功能說明Centronic總線時(shí)序57例如,已知某微型英文打印機(jī)的接口信號(hào)如下,信號(hào)間的時(shí)序關(guān)系如圖6-17所示。其中:(1):輸入打印機(jī)的選通信號(hào)(5ms負(fù)脈沖),用來把數(shù)據(jù)打入打印機(jī)數(shù)據(jù)緩沖器;(2):初始化打印機(jī)信號(hào)(5ms負(fù)脈沖);(3)BUSY:打印機(jī)發(fā)出的狀態(tài)信息(“忙”信號(hào)),BUSY有效(高電平)時(shí),表示打印機(jī)現(xiàn)在不能接收數(shù)據(jù),BUSY無效(低電平)時(shí),表示打印機(jī)正處于空閑(準(zhǔn)備好)狀態(tài),可以接收數(shù)據(jù)。(4)DATA0~DATA7:送往打印機(jī)的打印數(shù)據(jù),在英文字符打印機(jī)中,DATA0~DATA7上傳輸?shù)氖且蛴〉淖址腁SCII碼。58現(xiàn)在將英文打印機(jī)連接到8255A芯片上,8255A連接到PC/XT總線上,如圖6-18所示。已知有5ms延遲程序Delay5ms可供調(diào)用。59解答下列問題:(1)分析圖中的譯碼電路,給出8255A的PA、PB、PC和方式控制字的端口地址(用16進(jìn)制表示);(2)給出8255A的方式控制字(用16進(jìn)制表示),寫出初始化8255A的程序段; (3)完成判斷打印機(jī)忙的程序段;(4)完成下面的打印一個(gè)字符“A”的程序段。60【解】(1)由圖6-18的地址譯碼電路分析可知,8255A的片選信號(hào)連接到74LS138芯片的Y2上,即當(dāng)Y2為低電平時(shí)選中8255A芯片。而74LS138的Y2為低電平的條件是:A9A8=11,A7A6=01,A4A3A2=010,A5為任意值。根據(jù)上述分析,8255A的PA口地址為:1101X01000B,即348H或368H。由此可得,8255A的PA、PB、PC和控制口的端口地址分別為:348H或368H,349H或369H,34AH或36AH,34BH或36BH。61解:(2)按照題意,8255A的PA為輸入(或輸出),PB為輸出,PC的低4位為輸出,高4位為輸入。由此可得8255A的方式字的值為98H。下面是初始化8255A的程序段:MOV DX,34BH或36BHMOV AL,98H OUT DX,AL (3)下面是判斷打印機(jī)忙的程序段;MOV DX,34AH ;或36AH,C口BUSY: IN AL,DXTEST AL,40H; 檢測(cè)PC6JNZ BUSY62(4)下面是打印一個(gè)字符“A”的程序段。MOV DX,PB的端口地址;MOV AL,41H;OUT DX,AL ;發(fā)送待打印字符MOV DX,34BH ;或36BH,控制口MOV AL,05H ;PC2位控 OUT DX,AL ;發(fā)送信號(hào)/STBMOV AL,04H ;PC2位控 OUT DX,AL ;發(fā)送信號(hào)/STBCALL Delay5msMOV AL,05H ;PC2位控OUT DX,AL ;發(fā)送信號(hào)/STBRET63上面的例子給出的是8255A工作于方式0的例子。但在實(shí)際應(yīng)用中,打印機(jī)與8255A可以方便實(shí)現(xiàn)方式1的連接,即由硬件判斷打印機(jī)忙狀態(tài),通過中斷方式進(jìn)行打印數(shù)據(jù)發(fā)送。圖6.19所示,微型打印機(jī)的接口由8255A的A組實(shí)現(xiàn),采用工作方式1、輸出方式。根據(jù)方式1的時(shí)序關(guān)系,微處理器將數(shù)據(jù)寫入PA口并由其引腳輸出后,PC7輸出信號(hào),這正好作為數(shù)據(jù)選通信號(hào)將數(shù)據(jù)送入打印機(jī),打印機(jī)完成接收操作后用信號(hào)指示8255A,隨后8255A產(chǎn)生中斷請(qǐng)求信號(hào)通知微處理器可以輸出下一個(gè)數(shù)據(jù)。646.4串行接口的基本概念第1節(jié):串行通信基礎(chǔ)第2節(jié):可編程串行接口芯片-8251第3節(jié):8251的串行異步通信的應(yīng)用第4節(jié):PC系列串行異步通信接口第5節(jié):BIOS串行異步通信口的功能調(diào)用30一月2023修改65第1節(jié):串行通信基礎(chǔ)1)串行通信的物理連接2)串行通信類型和數(shù)據(jù)位鑒別方式3)串行通信協(xié)議4)串行通信的物理標(biāo)準(zhǔn)661)串行通信物理連接方式672)串行通信的類型和數(shù)據(jù)位的檢測(cè)方式串行異步通信格式
一幀字符用起始位和停止位同步682)串行通信的類型和數(shù)據(jù)位的檢測(cè)方式串行同步通信格式
用同步字符完成同步69
串行通信數(shù)據(jù)位的檢測(cè)
時(shí)鐘周期:Tc
數(shù)據(jù)位間隔:Td
Tc=Td/K
K:波特率因子(16,32,64)703)串行通信協(xié)議①異步通信協(xié)議②同步通信協(xié)議71①異步通信數(shù)據(jù)格式72
②串行同步通信協(xié)議BISYNC(BinarySynchronousCommunication):
SYN(1或多)、STX(起始控制符)、DATAFIELD(100或更多字節(jié))、ETX(結(jié)束控制符)、BCC(塊校驗(yàn)字符)、PAD(幀結(jié)束FFH)73②串行同步通信協(xié)議SDLC(SerialDataLinkControl):
IBM用于計(jì)算機(jī)網(wǎng)絡(luò)中
SYNC(Flagbyte01111110)、Addressfield(8bits)、Controlfield(8bits)、Datafield(kbits)、Framecheck(16bits)、Endflag(01111110)744)物理標(biāo)準(zhǔn)
通信速率串行通信接口標(biāo)準(zhǔn)信號(hào)的調(diào)制和解調(diào)754)物理標(biāo)準(zhǔn) 通信速率波特率:bits/S,波特,與距離成反比100,300,600,1200,2400,4800,9600,1920076
串行通信接口標(biāo)準(zhǔn):EIARS-232C
控制信號(hào)的定義77
串行通信接口標(biāo)準(zhǔn):RS-232C
信號(hào)電平標(biāo)準(zhǔn):采用負(fù)邏輯78信號(hào)電平標(biāo)準(zhǔn):采用負(fù)邏輯TTL與RS-232電平變換
接口
1489
1488
1489
1488
接口
TTLTTLTTLTTL
RS-232
RS-232
79RS-232連接器連接方式80信號(hào)的調(diào)制和解調(diào)長(zhǎng)距離傳輸時(shí)傳輸介質(zhì)頻帶限制把發(fā)送代碼調(diào)制成正弦波調(diào)頻 FrequencyModulation 1:2100Hz 0:1070Hz調(diào)相移Frequency–ShiftKeying81
信號(hào)的調(diào)制和解調(diào)
長(zhǎng)距離傳輸82幾種可編程串行接口芯片隨著大規(guī)模集成電路技術(shù)的發(fā)展,生產(chǎn)微處理器芯片的公司,紛紛推出可編程的支持異步規(guī)程或同步規(guī)程的接口芯片。下表列出幾種串行接口芯片。這些芯片都是可編程的,用芯片構(gòu)成串行通信接口,只需附加地址譯碼器和數(shù)據(jù)驅(qū)動(dòng)器、波特率發(fā)生器以及電平轉(zhuǎn)換器等簡(jiǎn)單電路。有的芯片,例如INS8250芯片內(nèi)還集成了波特率發(fā)生器,用它組成串行接口適配器時(shí)、電路結(jié)構(gòu)更簡(jiǎn)單。83下表列出幾種串行接口芯片PC機(jī)84第2節(jié):可編程串行通信接口8251 1)功能與結(jié)構(gòu)
2)8251的編程
3)8251的應(yīng)用
851)功能與結(jié)構(gòu)-8251的基本性能可用于同步或異步傳送同步傳送時(shí),每字符可選5~8bits;可內(nèi)或外同步;能自動(dòng)插入同步字符。異步傳送時(shí),每字符可選5~8bits;接收與發(fā)送時(shí)鐘為通訊波特率的1、16或64倍??僧a(chǎn)生中止字符(BreakCharacter)并能自動(dòng)檢測(cè)和處理;可產(chǎn)生1、1.5或2bit的停止位;可檢測(cè)出假啟動(dòng)信號(hào)。波特率,同步時(shí)最高64K波特;異步時(shí)最高19.2K波特。完全雙工,雙緩沖的發(fā)送器與接收器檢錯(cuò)能力,具有奇偶錯(cuò)、數(shù)據(jù)丟失錯(cuò)和幀錯(cuò)誤的檢測(cè)能力。全部入/出信號(hào)均為正常TTL電平。
861)8251的功能與結(jié)構(gòu)Intel8251的結(jié)構(gòu)見圖,為28條管腳雙列直插封裝。
從8251的結(jié)構(gòu)圖上看到它的5個(gè)組成部分,即接收器、發(fā)送器、調(diào)制解調(diào)控制、讀/寫控制,以及幾個(gè)緩沖器。緩沖器又可細(xì)劃為狀態(tài)緩沖器,發(fā)送數(shù)據(jù)/命令緩沖器,和接收數(shù)據(jù)緩沖器3部分。871)8251的引腳安排D7~D0
(接外部數(shù)據(jù)總線)TXD——數(shù)據(jù)發(fā)送引腳,在不發(fā)送數(shù)據(jù)時(shí)一般為高電平,但是通過發(fā)送終止字符可以使其為低電平。/TxC
控制數(shù)據(jù)發(fā)送速率的時(shí)鐘輸入引腳,在發(fā)送數(shù)據(jù)時(shí),TXD引腳在的每個(gè)下降沿移出一位數(shù)據(jù)。在同步方式下,數(shù)據(jù)傳送速率等于的CLK頻率,而在異步方式下,通過方式指令字可以選擇數(shù)據(jù)傳送速率為CLK頻率的1、1/16或1/64。888251的引腳安排TXRDY—發(fā)送器準(zhǔn)備就緒引腳,當(dāng)TXRDY為高電平時(shí)指示發(fā)送緩沖器已空,微處理器可以寫入新的數(shù)據(jù),寫信號(hào)上升沿引腳變低。引腳由TXEN控制,TXEN=0時(shí)TXRDY維持低電平。TXRDY通常作為中斷請(qǐng)求信號(hào),而TXEN可以看成是中斷屏蔽位;8251A的狀態(tài)字中也有一位TXRDY,與TXRDY引腳的區(qū)別是不受和TXEN的控制,在查詢輸入/輸出方式中,微處理器查詢?cè)摖顟B(tài)位來判斷是否可以傳送數(shù)據(jù)。89發(fā)送引腳TXEMPTY——發(fā)送緩沖器已空引腳,當(dāng)發(fā)送緩沖器中的數(shù)據(jù)發(fā)送完畢,該引腳為高電平。當(dāng)微處理器向發(fā)送緩沖器寫入數(shù)據(jù)時(shí),寫信號(hào)上升沿使TXEMPTY變低。在同步方式下,若TXEMPTY為高電平,表示當(dāng)前沒有數(shù)據(jù)可供發(fā)送,則8251A自動(dòng)發(fā)送同步字符。90接收引腳SYNDET—同步字符檢測(cè)引腳。SYNDET既可以作為輸入引腳也可以作為輸出引腳。8251A復(fù)位后,SYNDET為低電平。內(nèi)同步時(shí),當(dāng)在RxD線上檢測(cè)到同步字符后,SYNDET輸出高電平。外同步時(shí),SYNDET為輸入。當(dāng)外設(shè)完成同步字符檢測(cè)后,向此引腳輸入一個(gè)正跳變信號(hào),使得8251A在下一個(gè)j接收時(shí)鐘的下降沿開始裝配字符。91接收引腳①RxD——數(shù)據(jù)接收引腳,8251A在/RxC的每個(gè)上升沿采樣RxD引腳。②/RxC——控制數(shù)據(jù)接收速率的時(shí)鐘輸入引腳,控制數(shù)據(jù)接收速率的方式與/TxC相同,在實(shí)際使用時(shí)/RxC與/TxC通常接在一起。③RxRDY——接收器準(zhǔn)備就緒引腳,當(dāng)RxRDY為高電平時(shí),指示8251A的數(shù)據(jù)緩沖器中已經(jīng)有接收到的數(shù)據(jù),可供微處理器讀出,并且由讀信號(hào)的上升沿復(fù)位。如果在RxRDY信號(hào)有效的情況下微處理器沒有及時(shí)取走數(shù)據(jù),新接收的數(shù)據(jù)會(huì)覆蓋數(shù)據(jù)緩沖器中原有數(shù)據(jù),造成溢出錯(cuò)誤,并且使?fàn)顟B(tài)字中的溢出錯(cuò)誤標(biāo)志OE置位。RXRDY可以作為中斷請(qǐng)求信號(hào),也可以作為狀態(tài)信號(hào)供微處理器查詢92調(diào)制解調(diào)器控制電路(1)/DTR(DataTerminalReady)——數(shù)據(jù)終端準(zhǔn)備就緒引腳(輸出,低電平有效),通過命令指令字可以使該引腳輸出低電平,通知調(diào)制解調(diào)器當(dāng)前微處理器已經(jīng)準(zhǔn)備就緒。(2)/DSR(DataSetReady)——數(shù)據(jù)設(shè)備準(zhǔn)備就緒引腳(輸入,低電平有效),當(dāng)為低電平時(shí),通知微處理器當(dāng)前調(diào)制解調(diào)器已經(jīng)準(zhǔn)備就緒。由于該信號(hào)是輸入給8251A的,微處理器需要讀取8251A的狀態(tài)字來檢測(cè)該信號(hào),以了解調(diào)制解調(diào)器當(dāng)前的狀態(tài)。(3)/RTS(RequestToSend)——請(qǐng)求發(fā)送引腳(輸出、低電平有效),通過命令指令字可以使該引腳輸出低電平,通知調(diào)制解調(diào)器當(dāng)前微處理器已經(jīng)準(zhǔn)備好發(fā)送。(4)/CTS(ClearToSend)——清除發(fā)送引腳(輸入,低電平有效),當(dāng)為低電平時(shí),表示調(diào)制解調(diào)器已經(jīng)允許8251A發(fā)送數(shù)據(jù)。93時(shí)鐘信號(hào)8251時(shí)鐘信號(hào):系統(tǒng)時(shí)鐘CLK的周期要在0.32ms-1.35ms范圍內(nèi)。在異步方式下,應(yīng)大于發(fā)送/接收時(shí)鐘/TxC、/RxC的4.5倍。接收時(shí)鐘/RxC和發(fā)送時(shí)鐘/TxC的頻率可為接收與發(fā)送數(shù)據(jù)的波特率的1、16或64倍。8251在/RxC的上升采樣數(shù)據(jù),數(shù)據(jù)在/TxC的下降沿由8251移位輸出。8251工作于異步方式,可選用CLK為1.8432MHz/2,即921.6KHz。發(fā)送與接收數(shù)據(jù)的波特率均為9600,/TxC和/RxC的頻率為波特率的16倍。這時(shí)系統(tǒng)時(shí)鐘頻率為/TxC、/RxC
的16倍。942)8251的編程機(jī)構(gòu)8251A的內(nèi)部可編程寄存器包括方式指令字寄存器和命令指令字寄存器。方式指令字規(guī)定了8251A的工作方式,命令指令字可以對(duì)8251A進(jìn)行實(shí)時(shí)控制,而在同步方式中,需要寫入在傳送數(shù)據(jù)時(shí)使用的同步字符。方式指令字必須在復(fù)位后首先寫入,而且只能寫入一次,若改變8251A的工作方式,則必須先通過命令指令字使8251A復(fù)位。在寫入方式指令字后才可以寫入命令指令字和同步字符,并且可多次寫入95(1)方式指令字波特率分別是時(shí)鐘頻率的1、1/16和1/6496(2)命令指令字97(3)狀態(tài)字TE、OE和PE分別反映數(shù)據(jù)傳送中的三種錯(cuò)誤,由硬件自動(dòng)監(jiān)測(cè),微處理器只有讀取狀態(tài)字才能知道數(shù)據(jù)傳送過程中是否有錯(cuò)誤發(fā)生。98例如,若要查詢8251A接收器是否準(zhǔn)備好,則可用下列程序段完成:MOVDX,0F2H ;狀態(tài)口LOPP:INAL,DX;讀狀態(tài)口ANDAL,02H ;查RxRDY=1?JZLOPP ;未準(zhǔn)備好,則等待MOVDX,0F0H ;數(shù)據(jù)口INAL,DX ;已準(zhǔn)備好則讀取數(shù)據(jù)998251A的讀寫操作方式(尋址)C/操作1XXX引腳D7~D0呈高阻態(tài)0X11引腳D7~D0呈高阻態(tài)0001向8251A中寫入數(shù)據(jù)0010從8251A中讀出數(shù)據(jù)0101向8251A中寫入指令字0110從8251A中讀出狀態(tài)字
C=COMMAND:三個(gè)寄存器D=DATA:TxBUF&RxBUF1008251A的初始化與編程8251在初始化編程時(shí),首先使芯片復(fù)位,第一次向控制端口(奇地址)寫入的是方式字;如果是同步方式,接著向奇地址端口寫入的是同步字符,若有2個(gè)同步字符,則分2次寫入;以后不管是同步方式還是異步方式,只要不是復(fù)位命令,當(dāng)A0接C/D#時(shí),由CPU向奇地址端口寫入的是命令控制字,向偶地址端口寫入的是數(shù)據(jù)。在寫入命令指令字后,若IR=1,則引起內(nèi)部復(fù)位,又回到流程的開始,可以重新寫入方式指令字。101初始化流程奇地址偶地址102同步方式初始化程序1下面是設(shè)置8251A為同步方式的初始化程序,8251A的C/D引腳接在地址總線的A0上,寫指令字的端口地址為51H。
MOV DX,51H
;設(shè)置端口地址
MOV AL,10111000H;寫入方式指令字
OUT DX,AL;同步方式,7位數(shù)據(jù),偶校驗(yàn)
MOV AL,16H;使用一個(gè)同步字符,為16H OUT DX,AL MOV AL,97H;寫入命令字:?jiǎn)?dòng)發(fā)送器、接收器
OUT DX,AL;復(fù)位錯(cuò)誤標(biāo)志,搜索同步字符103同步方式初始化程序28251A的C/D引腳接在地址總線的A1上,
指令字的端口地址為52H,數(shù)據(jù)為50H。
MOVDX,52H; 設(shè)置端口地址
MOVAL,40H; 復(fù)位8251A
OUTDX,AL
MOVAL,38H; 寫入方式指令字
OUTDX,AL; 同步方式,7位數(shù)據(jù),偶校驗(yàn)
MOVAL,0FFH; 使用2個(gè)同步字符0xFF
OUTDX,AL
OUTDX,ALMOVAL,97H; 寫入方式指令字:?jiǎn)?dòng)收發(fā)器、接收器
OUTDX,AL; 復(fù)位錯(cuò)誤標(biāo)志,搜索同步字符
104異步方式初始化程序;寫入方式指令字:異步方式,7位數(shù)據(jù),波特率因子1,偶校驗(yàn),1個(gè)停止位MOV AL,79HOUT 51H,AL;寫入命令指令字;啟動(dòng)發(fā)送器、接收器,;復(fù)位錯(cuò)誤標(biāo)志MOV AL,35HOUT 51H,AL105第3節(jié)6.5.38251A的綜合應(yīng)用圖6.32是利用8251A形成RS-232C串口的接口電路,8251A實(shí)現(xiàn)了串行數(shù)據(jù)的發(fā)送和接收,電路1488和1499用于實(shí)現(xiàn)信號(hào)的TTL電平與RS-232電平的相互轉(zhuǎn)換。設(shè)8251A的控制和狀態(tài)端口地址為52H,數(shù)據(jù)輸入和輸出端口地址為50H。106下面分析利用8251A接收80個(gè)字符后,放在BUFFER標(biāo)號(hào)所指的內(nèi)存緩沖區(qū)中的程序設(shè)計(jì)方法?!窘狻肯旅娴某绦蚨蜗葘?duì)8251A進(jìn)行初始化,然后對(duì)狀態(tài)字進(jìn)行測(cè)試,以便輸入字符。具體的程序段如下:MOVAL,0FAH;11111010B;設(shè)置方式指令字,異步方式,波特率因子16;7個(gè)數(shù)據(jù)位,2個(gè)停止位,偶校驗(yàn)OUT52H,ALMOVAL,35H;00110101B;設(shè)置命令指令字,使發(fā)送器和接收器啟動(dòng),OUT52H,AL;并清除出錯(cuò)指示位MOVDI,0 ;變址寄存器初始化MOVCX,80;計(jì)數(shù)器初始化,共收取80個(gè)字符1107異步接收BEGIN:INAL,52H
;讀取狀態(tài)字,測(cè)試RxRDY位是否為1,如為0,TESTAL,02H ;如果未收到字符,故繼續(xù)讀取狀態(tài)字并測(cè)試JZBEGININAL,50H
;讀取字符MOVDX,OFFSETBUFFERMOV[DX+DI],ALINCDI ;修改緩沖區(qū)指針I(yè)NAL,52H ;讀取狀態(tài)字TESTAL,38H ;測(cè)試有無幀校驗(yàn)錯(cuò),奇/偶校驗(yàn)錯(cuò)和JZERROR ;溢出錯(cuò),如有,則轉(zhuǎn)出錯(cuò)處理程序L00PBEGIN ;如沒錯(cuò),則再收下一個(gè)字符
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 淄博校園導(dǎo)向牌施工方案
- 進(jìn)口裝飾裝潢防水施工方案
- 雙頭金剛石平面磨床行業(yè)深度研究報(bào)告
- 中國(guó)調(diào)理修復(fù)霜行業(yè)發(fā)展?jié)摿Ψ治黾巴顿Y方向研究報(bào)告
- 中國(guó)變頻調(diào)速電機(jī)行業(yè)發(fā)展前景預(yù)測(cè)及投資戰(zhàn)略規(guī)劃研究報(bào)告
- 2025年中國(guó)飛行訓(xùn)練器行業(yè)發(fā)展監(jiān)測(cè)及投資規(guī)劃建議報(bào)告
- 智能交通居間合同范本
- 保險(xiǎn)公司裝修工程協(xié)議
- 學(xué)校修繕工程安全免責(zé)合同
- 稀土槽罐車運(yùn)輸協(xié)議模板
- 青島版(五年制)四年級(jí)下冊(cè)小學(xué)數(shù)學(xué)全冊(cè)導(dǎo)學(xué)案(學(xué)前預(yù)習(xí)單)
- 退學(xué)費(fèi)和解協(xié)議書模板
- 2024至2030年中國(guó)對(duì)氯甲苯行業(yè)市場(chǎng)全景調(diào)研及發(fā)展趨勢(shì)分析報(bào)告
- 智能教育輔助系統(tǒng)運(yùn)營(yíng)服務(wù)合同
- 心功能分級(jí)及護(hù)理
- DLT 572-2021 電力變壓器運(yùn)行規(guī)程
- 重慶育才中學(xué)2025屆化學(xué)九上期末教學(xué)質(zhì)量檢測(cè)試題含解析
- 成都市2022級(jí)(2025屆)高中畢業(yè)班摸底測(cè)試(零診)數(shù)學(xué)試卷(含答案)
- 【云南省中藥材出口現(xiàn)狀、問題及對(duì)策11000字(論文)】
- 服裝板房管理制度
- 河北省興隆縣盛嘉恒信礦業(yè)有限公司李杖子硅石礦礦山地質(zhì)環(huán)境保護(hù)與治理恢復(fù)方案
評(píng)論
0/150
提交評(píng)論