單片機(jī)的串行接口及串行通信_第1頁
單片機(jī)的串行接口及串行通信_第2頁
單片機(jī)的串行接口及串行通信_第3頁
單片機(jī)的串行接口及串行通信_第4頁
單片機(jī)的串行接口及串行通信_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第6章單片機(jī)的串行接口與串行通信★概述★單片機(jī)串行口的結(jié)構(gòu)與工作原理★串行口的控制存放器★串行口的工作方式★串行口的應(yīng)用編程5.1概述

單片機(jī)應(yīng)用于數(shù)據(jù)采集或工業(yè)控制時,往往作為前端機(jī)安裝在工業(yè)現(xiàn)場,遠(yuǎn)離主機(jī),現(xiàn)場數(shù)據(jù)采用串行通信方式發(fā)往主機(jī)進(jìn)行處理,以降低通信本錢,提高通信可靠性。如以下圖所示?!飻?shù)據(jù)通信方式有兩種:并行通信與串行通信★并行通信:所傳送數(shù)據(jù)的各位同時發(fā)送或接收,數(shù)據(jù)有多少位就需要多少根數(shù)據(jù)線。特點:速度快,本錢高,適合近距離傳輸如計算機(jī)并口,打印機(jī),8255?!锎型ㄐ牛核鶄魉蛿?shù)據(jù)的各位按順序一位一位地發(fā)送或接收。只需一根數(shù)據(jù),一根地線,共2根〔如雙向通信發(fā)送和接收各需1根數(shù)據(jù)線?!?特點:本錢低,硬件方便,適合遠(yuǎn)距離通信,傳輸速度低?!锎型ㄐ诺姆诸悾和酱型ㄐ藕彤惒酱型ㄐ?/p>

一、異步通信:

通信的雙方應(yīng)該有一個約定,什么時候開始發(fā)送,什么時候發(fā)送完畢;接收方收到的信息是否正確等,這就是通信協(xié)議。異步串行通信一幀數(shù)據(jù)格式:一個起始位“0〞,表示字符的開始,然后是5~8位數(shù)據(jù)即該字符的代碼,規(guī)定低位在前,高位在后,接下來是奇偶校驗位(可省略),最后以停止位“1〞表示字符的結(jié)束。優(yōu)點:硬件結(jié)構(gòu)簡單。缺點:傳輸速度慢。二、同步通信在同步通信中,發(fā)送方在數(shù)據(jù)或字符開始處就用同步字符(常約定1~2個字節(jié))指示一幀的開始,由時鐘來實現(xiàn)發(fā)送端和接收端同步,接收方一旦檢測到與規(guī)定的同步字符符合,下面就連續(xù)按順序傳送假設(shè)干個數(shù)據(jù),最后發(fā)校驗字節(jié)。見以下圖:SYN字符1SYN字符2數(shù)據(jù)1數(shù)據(jù)2….數(shù)據(jù)n連續(xù)傳送n個數(shù)據(jù)校驗三、單工、半雙工、全雙工通信方式

按通信方向分類:單工、半雙工、全雙工通信方式

1.

單工方式:一端是發(fā)送端,另外一端是接收端:

2.半雙工方式

每端口有一個發(fā)送器和一個接收器,通過開關(guān)連接在線路上,數(shù)據(jù)可以雙向傳送,但不能同時發(fā)送和接收.

要通過換向器轉(zhuǎn)換方向。3.全雙工方式

通信雙方用兩個獨立的收發(fā)器單獨連接,可以同時發(fā)送和接收數(shù)據(jù),因而提高了速度。

1.實現(xiàn)數(shù)據(jù)格式化

因為CPU發(fā)出的數(shù)據(jù)是并行數(shù)據(jù),接口電路應(yīng)實現(xiàn)不同串行通信方式下的數(shù)據(jù)格式化任務(wù),如自動生成起止方式的幀數(shù)據(jù)格式(異步方式)或在待傳送的數(shù)據(jù)塊前加上同步字符等。在串行傳輸中,通信的雙方都按通信協(xié)議進(jìn)行,所謂通信協(xié)議就是通信雙方必須共同遵守的一種約定,約定包括數(shù)據(jù)的格式、同步的方式、傳送的步驟、檢糾錯方式及控制字符的定義等。串行接口的根本任務(wù)就是:2.進(jìn)行串、并轉(zhuǎn)換在發(fā)送端,接口將CPU送來的并行信號轉(zhuǎn)換成串行數(shù)據(jù)進(jìn)行傳送;而在接收端,接口要將接收到串行數(shù)據(jù)變成并行數(shù)據(jù)送往CPU,由CPU進(jìn)行處理。3.控制數(shù)據(jù)的傳輸速率

接口應(yīng)具備對數(shù)據(jù)傳輸率—波特率的控制選擇能力,即具有波特率發(fā)生器。4.進(jìn)行傳送錯誤檢測在發(fā)送時,對傳送的數(shù)據(jù)自動生成校驗位或校驗碼,在接收端能檢查校驗位或校驗碼,以確定傳送中是否有誤碼。

51系列單片機(jī)內(nèi)有一個全雙工的異步通信接口,通過對串行接口寫控制字可以選擇其數(shù)據(jù)格式,同時內(nèi)部有波特率發(fā)生器,提供可選的波特率,可完成雙機(jī)通信或多機(jī)通信。四、波特率 單位時間內(nèi)傳送的信息量。在計算機(jī)中,以每秒傳送的二進(jìn)制位數(shù)為單位。例如:100字符/秒,1個字符11位,波特率為:100×11=1100〔波特〕平均每位傳送占用時間Td=1/1100=0.909ms〔一〕通信線的連接

通信速率和通信距離這兩個方面是相互制約的,降低通信速率,可以提高通信距離.

不同的通信距離,串行通信電路有不同的連接方法。五.串行通信總線標(biāo)準(zhǔn)及接口RXDTXDGNDRXDTXDGNDRXDTXDGND電平轉(zhuǎn)換RXDTXDGNDRXDTXDGND電平轉(zhuǎn)換RXDTXDGND微機(jī)微機(jī)其他設(shè)備較遠(yuǎn)距離傳送電路近距離傳送電路微機(jī)接口調(diào)制解調(diào)器調(diào)制解調(diào)器接口微機(jī)電話分機(jī)電話分機(jī)遠(yuǎn)距離傳送電路數(shù)字信號通過調(diào)制器變成模擬信號通過線傳送到對方,接收方通過解調(diào)器將模擬信號轉(zhuǎn)換成數(shù)字信號接收?!捕炒型ㄐ沤涌诳偩€標(biāo)準(zhǔn)

測控系統(tǒng)中,計算機(jī)通信主要采用異步串行通信方式,常用的異步總線標(biāo)準(zhǔn)有三種:●RS-232〔RS-232ARS-232BRS-232C〕●RS-449〔RS422RS423RS485〕●20mA電流環(huán)這里重點介紹RS-232RS-232C:速率:20Kbit/S,最大通信距離:15mRS422:10Mbit/s,:300m90Kbit/s,:1200m抗干擾能力采用標(biāo)準(zhǔn)的通信接口,本身具有一定的抗干擾能力,但是工業(yè)現(xiàn)場的情況往往很惡劣,因而要根據(jù)具體情況進(jìn)行選擇。RS232C:一般場合RS422:共模信號比較強(qiáng)光纖:電磁干擾較強(qiáng)〔三〕RS-232C美國電子工業(yè)協(xié)會〔EIA〕公布的一種異步通信標(biāo)準(zhǔn)。RS232C標(biāo)準(zhǔn)是:●設(shè)備之間通信的距離不大于15米●最大傳輸速率20KB/S●采用負(fù)邏輯:“1〞——―5V∽―15V“0〞——+5V∽+15V●不帶負(fù)載時輸出電平:―25V∽+25V●輸出短路電流:<0.5A●最大負(fù)載電容:2500pF當(dāng)計算機(jī)采用RS232標(biāo)準(zhǔn)時必須通過電平變換,MAX232是EIA和TTL電平轉(zhuǎn)換芯片。內(nèi)部具有電壓提升電路,并有兩路接收器和發(fā)送器。其連線和引腳如圖

TTL電平可以由專用集成電路轉(zhuǎn)換成RS232C標(biāo)準(zhǔn);如:MC1488或75188TTLRS232C從MC1489或75189RS232CTTL由于MC1488需要采用±12V電源,一般在單片機(jī)通信中大量使用的是只需要+5V電源、具有發(fā)送和接收的一體化芯片,如:MAX232、ICL232、ADM202等。

MCS—51之間的雙機(jī)通信

RXDTXDGNDTXDGND8xx518xx51RXDMCS—51和PC機(jī)的雙機(jī)通信MCS—51和PC機(jī)的雙機(jī)通信見以下圖5.2單片機(jī)串行口的結(jié)構(gòu)與工作原理51單片機(jī)有一個可編程的全雙工異串行通信接口,它可作UART〔通用異步接收和發(fā)送器〕用,也可作同步移位存放器,其幀格式可有8位、10位或ll位,并能設(shè)置各種波特率,給使用者帶來很大的靈活性。一、串行口的內(nèi)部結(jié)構(gòu)

主要由兩個物理上獨立的接收、發(fā)送緩沖器SBUF〔占用同一地址99H〕;一個輸入移位存放器、一個串行控制存放器SCON和一個波特率發(fā)生器組成。接收器是雙緩沖結(jié)構(gòu);發(fā)送器為單緩沖器,因為發(fā)送時CPU是主動的,不會產(chǎn)生重疊錯誤。5l單片機(jī)通過引腳RXD(P3.0)串行數(shù)據(jù)接收端)和引腳TXD(P3.l)串行數(shù)據(jù)發(fā)送端)與外界進(jìn)行通信。圖中有兩個物理上獨立的接收、發(fā)送緩沖器SBUF,它們占用同一地址99H,可同時發(fā)送、接收數(shù)據(jù)?!癜l(fā)送緩沖器只能寫入,不能讀出,CPU寫SBUF,一方面修改發(fā)送存放器,同時啟動數(shù)據(jù)串行發(fā)送;●接收緩沖器只能讀出、不能寫入。讀SBUF,就是讀接收存放器?!翊锌刂拼娣牌鱏CON用以存放串行口的控制和狀態(tài)信息。8XX51串行口正是通過對上述專用存放器的設(shè)置、檢測與讀取來管理串行通信的?!裉厥夤δ艽娣牌鱌CON的最高位SMOD為串行口波特率的倍增控制位。●波特率發(fā)生器可以有兩種選擇:1.定時器T1作波特率發(fā)生器,改變計數(shù)初值就可以改變串行通信的速率,稱為可變波特率。2.以內(nèi)部時鐘的分頻器作波特率發(fā)生器,因內(nèi)部時鐘頻率一定,稱為固定波特率。shiftMOVA,SBUF串行數(shù)據(jù)CPUCPUSBUFSBUFshiftMOVSBUF,A并行數(shù)據(jù)并行數(shù)據(jù)甲方(發(fā)送)乙方(接收)甲方發(fā)送時,CPU執(zhí)行指令MOVSBUF,A啟動了發(fā)送過程,數(shù)據(jù)并行送入SBUF,在發(fā)送時鐘shift的控制下由低位到高位一位一位發(fā)送,乙方在接收時鐘shift的控制下由低位到高位順序進(jìn)入移位存放器SBUF,甲方一幀數(shù)據(jù)發(fā)送完畢,置位發(fā)送中斷標(biāo)志TI,該位可作為查詢標(biāo)志〔或引起中斷〕。二、串行通信的傳送過程用下面簡圖說明TI,RI,一幀數(shù)據(jù)發(fā)送完畢,CPU可再發(fā)送下一幀數(shù)據(jù)。乙方一幀數(shù)據(jù)到齊即接收緩沖器滿,置位接收中斷標(biāo)志RI,該位可作為查詢標(biāo)志〔或引起接收中斷〕,通過MOVA,SBUFCPU將這幀數(shù)據(jù)并行讀入。由上述可知:甲、乙方的移位時鐘頻率應(yīng)相同,即應(yīng)具有相同的波特率,否那么會造成數(shù)據(jù)喪失。發(fā)送方是先發(fā)數(shù)據(jù)再查標(biāo)志,接收方是先查標(biāo)志再收數(shù)據(jù)。CPU通過指令和SBUF并行交換數(shù)據(jù),并不能控制數(shù)據(jù)的串行移位,它只能查詢標(biāo)志位來確定數(shù)據(jù)的移位是否完成。發(fā)送一個數(shù)據(jù)→查詢TI→發(fā)送下一個數(shù)據(jù)(先發(fā)后查)查詢RI→讀入一個數(shù)據(jù)→查詢RI→讀下一個數(shù)據(jù)(先查后收)51單片機(jī)串行口是一個可編程接口,對它的編程只用兩個控制字分別寫入特殊功能存放器:串行口控制存放器SCON(98H)電源控制存放器PCON(97H)IE:中斷允許存放器。三、串行口的控制存放器5.3串行口的控制存放器5.3.1串行口的控制存放器SCON8XX51串行通信的方式選擇,接受和發(fā)送控制及串行口的標(biāo)志均由專用存放器SCON控制和指示,其格式如下:SM0SM1SM2RENTB8RB8TIRI方式選擇多機(jī)控制串行接收允許/禁止欲發(fā)的第九位收到的第九位發(fā)送中斷有/無接收中斷有/無SM0.SM1:串行口工作方式控制位,可選擇四種工作方式。TI,發(fā)送中斷標(biāo)志位。在方式0時,當(dāng)串行發(fā)送第8位數(shù)據(jù)結(jié)束時,或在其它方式,串行發(fā)送停止位的開始時,由內(nèi)部硬件使TI置1。TI=1表示幀發(fā)送結(jié)束,其狀態(tài)既可供軟件查詢使用,也可用于請求中斷。發(fā)送中斷被響應(yīng)后,必須由軟件復(fù)位。RI,接收中斷標(biāo)志位。在方式0時,當(dāng)串行接收第8位數(shù)據(jù)結(jié)束時,或在其它方式,串行接收停止位的中間時,由內(nèi)部硬件使RI置1。RI=1表示幀接收結(jié)束。其狀態(tài)既可供軟件查詢使用,也可用于請求中斷。RI亦必須由軟件清“0〞。REN,允許串行接收位。由軟件置REN=1,那么啟動串行口接收數(shù)據(jù);假設(shè)軟件置REN=0,那么禁止接收。TB8,在方式2或方式3中,是發(fā)送數(shù)據(jù)的第九位,可以用軟件規(guī)定其作用。在雙機(jī)通信時,可以用作數(shù)據(jù)的奇偶校驗位;或在多機(jī)通信中,作為地址幀/數(shù)據(jù)幀的標(biāo)志位(一般約定:TB8=0為數(shù)據(jù)幀,TB8=1為地址幀)。在方式0和方式1中,該位未用。RB8,在方式2或方式3中,是接收到數(shù)據(jù)的第九位,作為奇偶校驗位或地址幀/數(shù)據(jù)幀的標(biāo)志位。在方式1時,假設(shè)SM2=0,那么RB8是接收到的停止位。SM2:多機(jī)通信控制位,主要用于方式2和方式3。當(dāng)接收機(jī)的SM2=1時可以利用收到的RB8來控制是否激活RI〔RB8=0時不激活RI,收到的信息丟棄;RB8=1時收到的數(shù)據(jù)進(jìn)入SBUF,并激活RI,進(jìn)而在中斷效勞中將數(shù)據(jù)從SBUF讀走〕。當(dāng)SM2=0時,不管收到的RB8為0和1,均可以使收到的數(shù)據(jù)進(jìn)入SBUF,并激活RI〔即此時RB8不具有控制RI激活的功能〕。通過控制SM2,可以實現(xiàn)多機(jī)通信。在方式1時,假設(shè)SM2=1,那么只有接收到有效停止位時,RI才置1。在方式0時,SM2必須是0。PCON的字節(jié)地址為87H,無位地址,只能字節(jié)尋址.,初始化時SMOD=0.SMODXXXXXXXPCON87H5.3.2電源控制存放器PCONPCON的格式如以下圖所示,串行通信只用其中的最高位SMODSMOD:波特率加倍位。在計算串行方式1、2、3的波特率時,SMOD=0—不加倍;SMOD=

1—加倍其格式如下:5.3.3中斷允許存放器IE位地址AFHAEHADHACHABHAAHA9HA8H位符號EA--ESET1EX1ET0EX0這個存放器已在中斷一節(jié)介紹過,其中ES位為串行中斷允許位:ES=0禁止串行中斷ES=1允許串行中斷51系列單片機(jī)的串行口共有4種工作方式,4種工作方式根本情況如下表所示:5.4單片機(jī)串行通信工作方式工作方式功能簡述波特率引腳功能應(yīng)用方式08位移位寄存器固定為fosc/12TXD輸出頻率為fosc/12的同步脈沖;RXD作為數(shù)據(jù)的輸入、輸出端。I/O口擴(kuò)展方式110位異步通信方式波特率可變TXD數(shù)據(jù)輸出端RXD數(shù)據(jù)輸入端雙機(jī)通信方式211位異步通信方式波特率固定TXD數(shù)據(jù)輸出端RXD數(shù)據(jù)輸入端多機(jī)通信方式311位異步通信方式波特率可變TXD數(shù)據(jù)輸出端RXD數(shù)據(jù)輸入端多機(jī)通信

1.方式0方式0時,串行口為同步移位存放器的輸入輸出方式。主要用于擴(kuò)展并行輸入或輸出口。數(shù)據(jù)由RXD〔P3.0〕引腳輸入或輸出,同步移位脈沖由TXD〔P3.1〕引腳輸出。發(fā)送和接收均為8位數(shù)據(jù),低位在先,高位在后。波特率固定為fosc/12。1〕、工作方式說明:方式0輸出:發(fā)送過程以寫SBUF存放器開始。當(dāng)八位數(shù)據(jù)傳送完,TI被硬件自動置1,這時方可再發(fā)下一幀數(shù)據(jù)。方式0輸入:接收時必須先置REN為1(允許接收)并且使RI=0,當(dāng)八位數(shù)據(jù)接收完畢,RI被硬件置1,此時,可通過讀SBUF指令,將串行數(shù)據(jù)讀入。

應(yīng)用舉例:例6-1利用串行口,使接到CD4094輸出端的8只發(fā)光二極管,從左向右依次點亮,并反復(fù)循環(huán)。

分析:使用串口方式0實現(xiàn)數(shù)據(jù)的移位輸入輸出時,實際上是把串行口變成為并行口使用。串行口作為并行口輸出使用時,要有“串入并出〞的移位存放器〔例如CD4094或74LS164、74HC164等〕配合,按此要求所設(shè)計的電路原理圖如以下圖所示:發(fā)送過程可表達(dá)如下:數(shù)據(jù)預(yù)先寫入串行口數(shù)據(jù)緩沖器,然后從串行口RXD端,在移位時鐘脈沖〔TXD〕的控制下,逐位移入CD4094。當(dāng)8位數(shù)據(jù)全部移出后,SCON存放器的發(fā)送中斷TI被自動置“1〞。其后主程序就可用中斷或查詢的方法,通過設(shè)置STB狀態(tài)的控制,把CD4094的內(nèi)容并行輸出。

2.方式1方式1是10位數(shù)據(jù)的異步通信口。TXD為數(shù)據(jù)發(fā)送引腳,RXD為數(shù)據(jù)接收引腳,傳送一幀數(shù)據(jù)的格式如下圖。其中1位起始位,8位數(shù)據(jù)位,1位停止位。1〕方式1傳送的數(shù)據(jù)格式2)方式1數(shù)據(jù)的發(fā)送與接收數(shù)據(jù)發(fā)送由一條CPU寫入發(fā)送存放器SBUF的指令啟動。8位數(shù)據(jù)在串行口由硬件自動參加起始位和停止位組成完整的幀格式。在內(nèi)部移位脈沖作用下,由TXD端串行輸出。一幀數(shù)據(jù)發(fā)送完后,TXD輸出線維持“1〞狀態(tài),并將SCON存放器的TI置“1〞,通知CPU可發(fā)送下一個數(shù)據(jù)。2)方式1數(shù)據(jù)的發(fā)送與接收接收數(shù)據(jù)時,當(dāng)SCON的REN位為允許接收狀態(tài)時,串行口采樣RXD端,當(dāng)采樣到從“1〞向“0〞狀態(tài)跳變時,就認(rèn)定是接收到起始位。隨后在移位脈沖的控制下,把收到的數(shù)據(jù)位移入輸入移位存放器,直到停止位到來之后把停止位送入RB8中,輸入移位存放器的數(shù)據(jù)送入接收緩沖器(SBUF)中,并置位中斷標(biāo)志位RI,通知CPU從SBUF取走接收到的一個字符。3)波特率的設(shè)定方式1的波特率是可變的,以定時器T1作波特率發(fā)器使用,其值由定時器1的計數(shù)溢出率來決定,其公式為:其中SMOD為PCON存放器的最高位的值,其值為1或0.當(dāng)定時器1作波特率發(fā)生器使用時,選用方式2(即8位自動加載方式)。因為方式2具有自動加載功能,可以防止通過程序反復(fù)裝入初值所引起的定時誤差,使波特率更加穩(wěn)定。假定計數(shù)初值為X,那么波特率計算公式為:

方式2或方式3時為11位數(shù)據(jù)的異步通信口。TXD為數(shù)據(jù)發(fā)送引腳,RXD為數(shù)據(jù)接收引腳。方式2和方式3時起始位1位,數(shù)據(jù)9位〔含1位附加的第9位,發(fā)送時為SCON中的TB8,接收時為RB8〕,停止位1位,一幀數(shù)據(jù)為11位。方式2的波特率固定為晶振頻率的1/64或1/32,方式3的波特率由定時器T1的溢出率決定。第九位數(shù)據(jù)可作為檢驗位,也可用于多機(jī)通信中識別傳送的是地址還是數(shù)據(jù)的特征位。

3串行口工作方式2和方式3

1、方式2和方式3輸出發(fā)送數(shù)據(jù)(D0~D7)由MOV指令向SBUF寫入,而D8位的內(nèi)容那么由硬件電路從TB8中直接送到發(fā)送移位存放器的第9位,并以此來啟動串行發(fā)送。一個字符幀發(fā)送完畢后,將TI位置“1〞,其它過程與方式1相同。

2、方式2和方式3輸入接收時,數(shù)據(jù)從右邊移入輸入移位存放器,在起始位0移到最左邊時,控制電路進(jìn)行最后一次移位。當(dāng)RI=0,且SM2=0〔或接收到的第9位數(shù)據(jù)為1〕時,接收到的數(shù)據(jù)裝入接收緩沖器SBUF和RB8〔接收數(shù)據(jù)的第9位〕,置RI=1,向CPU請求中斷。如果條件不滿足,那么數(shù)據(jù)喪失,且不置位RI,繼續(xù)搜索RXD引腳的負(fù)跳變。5.5串行口的應(yīng)用編程串行口的波特率有兩種方式:固定波特率可變波特率注意:使用可變波特率時,先確定TI的計數(shù)初值,并對TI進(jìn)行初始化。串行通信的編程方式:查詢方式:查TI、RI是否為“1〞。中斷方式:如果預(yù)先開了中斷,當(dāng)TI、RI為“1〞,會自動產(chǎn)生中斷。注意:兩種方式中當(dāng)發(fā)送或接受數(shù)據(jù)后都要注意清TI或RI。5.5.1查詢方式查詢方式發(fā)送流程圖和接收流程圖見下頁串口初始化程序方式1中串口初始化一般按以下步驟來編寫:(1)設(shè)置串口工作方式;(2)確定定時器1的工作方式;(3)確定波特率倍增器的值;(4)確定定時器1的初值;(5)確定數(shù)據(jù)發(fā)送和接收方式,假設(shè)采用中斷方式必須設(shè)置相應(yīng)的中斷控制位,假設(shè)采用采用查詢方式那么必須禁止串口中斷;(6)啟動定時器1。

T1初始化、啟動T1工作設(shè)定串行通信方式置發(fā)送數(shù)據(jù)塊首址數(shù)據(jù)塊長度計數(shù)器清TI發(fā)送數(shù)據(jù)TI=1?修改地址指針和塊長度計數(shù)器全部數(shù)據(jù)發(fā)送完?開始結(jié)束YN查詢方式發(fā)送流程圖YYNT1初始化、啟動T1工作設(shè)定串行通信方式,允許接收置接收緩沖區(qū)首址接收數(shù)據(jù)塊長度清RIRI=1?修改地址指針和塊長度計數(shù)器全部數(shù)據(jù)接收完?開始結(jié)束接收數(shù)據(jù)NYN查詢方式接收流程圖Y5.5.2中斷方式中斷方式的初始化編程同查詢方式,不同的是要開中斷,即置位EA和ES,編寫中斷效勞程序。中斷方式串行通信的程序流程見以下圖:T1初始化、啟動T1工作設(shè)定串行通信方式置發(fā)送數(shù)據(jù)塊首址數(shù)據(jù)塊長度計數(shù)器發(fā)送數(shù)據(jù)全部數(shù)據(jù)發(fā)送完?中斷方式發(fā)送流程圖等待中斷1

EA,1ES發(fā)送數(shù)據(jù)中斷返回0

EA,0ES中斷效勞程序主程序修改地址指針和塊長度計數(shù)器清TIYNT1初始化、啟動T1工作設(shè)定串行通信方式置接收數(shù)據(jù)塊首址數(shù)據(jù)塊長度計數(shù)器全部數(shù)據(jù)接收完?YN中斷方式接收流程圖等待中斷1

EA,1ES中斷返回0

EA,0ES中斷效勞程序主程序修改地址指針和塊長度計數(shù)器清RI接收數(shù)據(jù)RXD89C51TXDP1.0例接線如圖,編一個自發(fā)自收程序,檢查單片機(jī)的串行口是否完好,f=12MHzMHz,波特率=2400,取SMOD=0,方式

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論