第三章 主機(jī)及接口_第1頁
第三章 主機(jī)及接口_第2頁
第三章 主機(jī)及接口_第3頁
第三章 主機(jī)及接口_第4頁
第三章 主機(jī)及接口_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第三章主機(jī)及接口第一頁,共五十四頁,編輯于2023年,星期四3.1主機(jī)電路3.1.1基于PC機(jī)的主機(jī)電路基于PC機(jī)的測控系統(tǒng)可以分為內(nèi)插式,外接式和組合式三種.第二頁,共五十四頁,編輯于2023年,星期四第三章主機(jī)及接口3.1主機(jī)電路

CPU及其相連的存儲器和接口電路統(tǒng)稱為主機(jī)電路.

主機(jī)電路是微機(jī)化測控系統(tǒng)的核心.內(nèi)插式將輸入或輸出接口電路制成印制版的插板形式,并直接插入PC機(jī)主機(jī)箱內(nèi),通過計(jì)算機(jī)的各種系統(tǒng)總線與CPU交換信息.

第三頁,共五十四頁,編輯于2023年,星期四3.1.1基于的主機(jī)電路一內(nèi)插式內(nèi)插式測控系統(tǒng)構(gòu)成第四頁,共五十四頁,編輯于2023年,星期四3.1.1基于PC機(jī)的主機(jī)電路二.外接式外接式測控系統(tǒng)構(gòu)成第五頁,共五十四頁,編輯于2023年,星期四3.1.1基于PC機(jī)的主機(jī)電路三.組合式組合式測控系統(tǒng)構(gòu)成第六頁,共五十四頁,編輯于2023年,星期四3.1.2基于單片機(jī)的主機(jī)電路一.單片機(jī)系統(tǒng)的一般特點(diǎn)(P55)二.MCS-51單片機(jī)的結(jié)構(gòu)和引腳(P55-56)第七頁,共五十四頁,編輯于2023年,星期四圖

6-10擴(kuò)展16KBRAM和16KBEPROM3.1.2基于單片機(jī)的主機(jī)電路三、存儲器混合擴(kuò)展第八頁,共五十四頁,編輯于2023年,星期四3.1.2基于單片機(jī)的主機(jī)電路利用TTL芯片、COMS鎖存器、三態(tài)門等接口芯片把P0接口擴(kuò)展,常選用74LS273、74LS373、74LS244等芯片。四、簡單I/O接口擴(kuò)展第九頁,共五十四頁,編輯于2023年,星期四3.2測控接口及程序3.2.1A/D與微機(jī)接口及程序3.2.2VFC與微機(jī)接口及程序3.2.3D/A與微機(jī)接口及程序3.2.4功率接口第十頁,共五十四頁,編輯于2023年,星期四3.2.1A/D與微機(jī)的接口及程序一、ADC0809與單片機(jī)的接口集成A/D轉(zhuǎn)換器ADC0809/0808為8路輸入通道、8位逐次逼近式A/D轉(zhuǎn)換器,可分時轉(zhuǎn)換8路模擬信號。1.結(jié)構(gòu)一個8位逐次逼近式A/D轉(zhuǎn)換器、8路模擬轉(zhuǎn)換開關(guān)、3-8地址鎖存譯碼器和三態(tài)輸出數(shù)據(jù)鎖存器。2.引腳8路模擬量輸入信號端:

IN0~I(xiàn)N78位數(shù)字量輸出信號端:

D0~D7通道選擇地址信號輸入端:

ADDA、ADDB、ADDC多路轉(zhuǎn)換開關(guān)ABCIN0IN1IN7A/D轉(zhuǎn)換第十一頁,共五十四頁,編輯于2023年,星期四AD0~7ALEINTWRP2.0RDD0~7ADDABC

CLKEOCALESCOE≥1≥1111MCS-51ADC080983IN0~76.5A/D與單片機(jī)的接口與程序一、ADC0809與單片機(jī)的接口3.ADC0809與單片機(jī)連接A/D轉(zhuǎn)換程序:MOVDPTR,#0FE00H;ADC口地址

MOVA,#00 ;轉(zhuǎn)換IN0 MOVX@DPTR,A ;啟動A/D轉(zhuǎn)換

LCALLDELAY ;等待轉(zhuǎn)換結(jié)束

MOVXA,@DPTR ;取轉(zhuǎn)換結(jié)果第十二頁,共五十四頁,編輯于2023年,星期四3.2.1A/D與微機(jī)的接口及程序一、ADC0809與單片機(jī)的接口4.應(yīng)用例:對通道IN0,采樣一次,轉(zhuǎn)換,并將轉(zhuǎn)換結(jié)果存到數(shù)據(jù)存儲區(qū)。參考程序如下:MAIN:MOVR1,#data;存數(shù)地址

MOVDPTR,#7FF8H;P2.7=0,指向IN0MOVX@DPTR,A;不論A中為何內(nèi)容都啟動;轉(zhuǎn)換(使/WR產(chǎn)生脈沖)

MOVR6,#0AH;軟件延時DLAY:NOPNOPNOPNOPNOPDJNZR6,DLAYMOVXA,@DPTR;讀轉(zhuǎn)換結(jié)果

MOV@R1,A;存儲數(shù)據(jù)第十三頁,共五十四頁,編輯于2023年,星期四3.2.1A/D與微機(jī)接口及程序二.MC14433與單片機(jī)的接口自學(xué)第十四頁,共五十四頁,編輯于2023年,星期四3.2.2VFC與微機(jī)的接口及程序V/F轉(zhuǎn)換器是把電壓信號轉(zhuǎn)變成頻率信號的器件,具有良好的精度,線性和積分輸入特性.VFC與計(jì)算機(jī)接口有以下特點(diǎn):(1)接口簡單,占用計(jì)算機(jī)硬件資源少.(2)抗干擾性能好(3)便于遠(yuǎn)距離傳輸.第十五頁,共五十四頁,編輯于2023年,星期四3.2.2VFC與微機(jī)接口及程序VFC與單片機(jī)的接口第十六頁,共五十四頁,編輯于2023年,星期四3.2.2VFC與微機(jī)的接口及程序電壓-頻率-數(shù)字轉(zhuǎn)換原理第十七頁,共五十四頁,編輯于2023年,星期四3.2.2VFC與微機(jī)的接口及程序程序:

見課本p64第十八頁,共五十四頁,編輯于2023年,星期四3.2.3D/A與微機(jī)接口及程序一.DAC0832與單片機(jī)連接直通方式:

輸入寄存器和DAC寄存器共用一個地址,同時選通輸出。

雙緩沖器方式:

輸入寄存器和DAC寄存器分配有各自的地址,可分別選通用同時輸出多路模擬信號。第十九頁,共五十四頁,編輯于2023年,星期四3.2.3D/A與微機(jī)接口及程序二.應(yīng)用例利用單片機(jī)及DAC0832產(chǎn)生階梯波,DAC0832采用單緩沖方式,定時1ms,增幅10,10ms一循環(huán)。

參考程序如下:

START:MOVA,#00H

MOVDPTR,#7FFFH;轉(zhuǎn)換器地址

MOVR1,#0AH;10個臺階(10ms)

LOOP:MOVX@DPTR,A;送欲轉(zhuǎn)換數(shù)字量

CALLDL1;延時1ms

DJNZR1,NEXT;10個臺階未完繼續(xù)增幅

SJMPSTART

NEXT:ADDA,#10

JMPLOOP

DL1:MOV20H,#249

DLL:NOP

NOP

DJNZ20H,DLL

RET

如此,還可產(chǎn)生鋸齒波,三角波等。第二十頁,共五十四頁,編輯于2023年,星期四3.2.4功率接口

自學(xué)第二十一頁,共五十四頁,編輯于2023年,星期四3.3人-機(jī)接口及程序3.3.1顯示接口及程序3.3.2鍵盤接口及程序3.3.3鍵盤/顯示器接口及程序3.3.4打印機(jī)接口及程序3.3.5報(bào)警接口及程序第二十二頁,共五十四頁,編輯于2023年,星期四3.3.1顯示器接口及其程序一.LED顯示器及接口設(shè)計(jì)

由發(fā)光二極管組成,不同的發(fā)光段亮,可組成不同字型,電流太大,耗電量大,電流太小,發(fā)光度不夠,一般各管電流在10mA較合適。共陽極共陰極外形圖第二十三頁,共五十四頁,編輯于2023年,星期四3.3.1顯示器接口及其程序LED顯示器及接口設(shè)計(jì)

LED顯示器用于顯示工業(yè)控制參數(shù)、過程狀態(tài)。

(1)LED數(shù)碼管 共陰極LED和共陽極LED

當(dāng)LED字段引線與數(shù)據(jù)線連接,每個顯示字形對應(yīng)一個字形碼。D7D6D5D4D3D2D1D0hgfedcba

abhCOMCOM

P1.0~1.7MCS-51afbge

cdhabh第二十四頁,共五十四頁,編輯于2023年,星期四COM

P1.0~1.7MCS-51afbge

cdhabh3.3.1顯示器接口及其程序(2)顯示程序任務(wù):1)設(shè)置顯示緩沖區(qū),存放待顯示數(shù)據(jù)2)顯示譯碼:程序存儲器中建立字形碼常數(shù)表,查表得出對應(yīng)數(shù)據(jù)的字形碼3)輸出顯示:輸出字形碼到顯示端口例: MOVDPTR,#WTAB;指向字形碼表首地址 MOVA,@R0 ;取顯示緩沖區(qū)中數(shù)據(jù)

MOVCA,@A+DPTR;查表顯示譯碼

MOVP1,A ;輸出顯示 … WTAB: DB 3FH,06H,5BH;字形碼表 … 第二十五頁,共五十四頁,編輯于2023年,星期四3.3.1顯示器接口及其程序(3)LED接口電路

abhCOMafbge

cdh

abhCOM

abhCOMCOMhCOMD7…D1D0D0D1D2hbbhCOMafbge

cdhaaba靜態(tài)顯示動態(tài)顯示第二十六頁,共五十四頁,編輯于2023年,星期四3.3.1顯示器及其接口電路二LCD顯示及程序第二十七頁,共五十四頁,編輯于2023年,星期四3.3.2鍵盤接口及程序1.獨(dú)立式鍵盤接口電路P1.0P1.1P1.7+5v每個按鍵單獨(dú)占有一根I/O接口引線。輸入每根I/O接口引線的信號對應(yīng)某個數(shù)據(jù)。第二十八頁,共五十四頁,編輯于2023年,星期四3.3.2鍵盤接口及程序1.獨(dú)立式鍵盤接口電路鍵盤處理程序任務(wù)1)鍵輸入檢查鍵盤是否有鍵被按下,消除按鍵抖動。確定被按鍵的鍵號,獲取鍵號。硬件電路消除抖動或軟件消除抖動。2)鍵譯碼鍵號為鍵盤位置碼,根據(jù)鍵號查表得出被按鍵的鍵值。鍵值:數(shù)字鍵0~9、字符鍵0AH~0FH、功能鍵10H~。3)鍵處理根據(jù)鍵值轉(zhuǎn)移到不同程序段。若鍵值屬于數(shù)字、字符鍵,則調(diào)用顯示數(shù)字和字符的子程序。若鍵值屬于功能鍵,則進(jìn)行多分支轉(zhuǎn)移,執(zhí)行各個功能程序段。延時等待10ms仍有按鍵信號?Y有按鍵信號?NYN鍵盤處理

按鍵釋放?NY第二十九頁,共五十四頁,編輯于2023年,星期四3.3.2鍵盤接口及程序2.矩陣式鍵盤接口電路

0

1+5v

P1.0P1.1P1.4P1.5鍵盤I/O接口由多條I/O接口引線組成矩陣式鍵盤。第三十頁,共五十四頁,編輯于2023年,星期四3.3.2鍵盤接口及程序2.矩陣式鍵盤接口電路◆掃描法列線輸出,行線輸入。列線逐行輸出0,某行有按鍵,行線輸入有0,若無按鍵,行線輸入全部為1。◆反轉(zhuǎn)法行列線交換輸入、輸出,兩步獲取按鍵鍵號?!糁袛鄴呙璺绞接邪存I按下時發(fā)出中斷請求信號,提高CPU的效率。第三十一頁,共五十四頁,編輯于2023年,星期四3.3.3鍵盤/顯示器接口及程序8279鍵盤/顯示器接口

8279是專用鍵盤/顯示器控制芯片,能對顯示器自動掃描,能識別鍵盤上按下鍵的鍵號;可充分提高CPU的工作效率。

8279與MCS-51接口方便,由它構(gòu)成的標(biāo)準(zhǔn)鍵盤/顯示器接口在微機(jī)應(yīng)用系統(tǒng)中使用越來越廣泛。8279的鍵盤/顯示器電路及與單片機(jī)接口第三十二頁,共五十四頁,編輯于2023年,星期四3.3.4打印機(jī)接口及程序

3.3.5報(bào)警器接口及程序自學(xué)第三十三頁,共五十四頁,編輯于2023年,星期四

以一串字符為一個傳送單位,字符間不加標(biāo)識位,在一串字符開始用同步字符標(biāo)識,硬件要求高,通訊雙方須嚴(yán)格同步。異步通訊雙方的兩項(xiàng)約定◆字符格式規(guī)定(一幀):數(shù)據(jù)位,校驗(yàn)位,起始位和停止位?!舨ㄌ芈?位/秒)對傳送速率的規(guī)定例:要求每秒傳送120個字符,每幀為10位。解:B=120?0=1200波特每位0.83ms

數(shù)據(jù)位傳輸率=120?=960位/秒3.4通信接口一、串行通信基礎(chǔ)知識1.異步通訊方式2.同步通訊方式第三十四頁,共五十四頁,編輯于2023年,星期四3.串行接口功能◆發(fā)送器:并串?dāng)?shù)據(jù)格式轉(zhuǎn)換,添加標(biāo)識位和校驗(yàn)位,一幀發(fā)送結(jié)束,設(shè)置結(jié)束標(biāo)志,申請中斷?!艚邮掌鳎捍?shù)據(jù)格式轉(zhuǎn)換,檢查錯誤,去掉標(biāo)識位,保存有效數(shù)據(jù),設(shè)置接收結(jié)束標(biāo)志,申請中斷?!艨刂破鳎航邮站幊堂詈涂刂茀?shù),設(shè)置工作方式:同步/異步、字符格式、波特率、校驗(yàn)方式、數(shù)據(jù)位與同步時鐘比例等。

單工通訊:數(shù)據(jù)單向傳送。半雙工通訊:數(shù)據(jù)可分時雙向傳送。全雙工通訊:可同時進(jìn)行發(fā)送和接收。發(fā)送器接收器發(fā)送器接收器3.4通信接口一、串行通信基礎(chǔ)知識4.串行數(shù)據(jù)傳送方向第三十五頁,共五十四頁,編輯于2023年,星期四1.1個全雙工串行接口,可同時進(jìn)行發(fā)送和接收。串行接口輸入/輸出引腳:TXD(P3.1)、RXD(P3.0)

數(shù)據(jù)格式:按不同方式,一幀位數(shù)8/10/11發(fā)送/接收時,數(shù)據(jù)皆低位在前。一幀字符發(fā)送/接收結(jié)束,置位標(biāo)志位(TI/RI)并申請SIO中斷。中斷控制:中斷允許位ES

中斷入口:0023HD0D1D2D3D4D5D6D7停止位起始位D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6D8停止位起始位D73.4通信接口二、串行口控制寄存器第三十六頁,共五十四頁,編輯于2023年,星期四2、串行接口控制(1)數(shù)據(jù)緩沖器SBUF發(fā)送SBUF和接收SBUF共用一個地址99H。 ◆發(fā)送SBUF存放待發(fā)送的8位數(shù)據(jù),寫入SBUF將同時啟動發(fā)送。 發(fā)送指令: MOV SBUF,A◆接收SBUF存放已接收成功的8位數(shù)據(jù),供CPU讀取。讀取串行口接收數(shù)據(jù)指令:MOVA,SBUF3.4通信接口二、串行口控制寄存器第三十七頁,共五十四頁,編輯于2023年,星期四(3)串行口控制/狀態(tài)寄存器SCON(98H)SMOD(PCON.7):波特率加倍控制位。SMOD=1,波特率加倍,SMOD=0,則不加倍。SM0,SM1:選擇串行口4種工作方式。SM2:多機(jī)控制位,用于多機(jī)通訊。REN:允許接收控制位,REN=1,允許接收;REN=0,禁止接收。TB8:發(fā)送的第9位數(shù)據(jù)位,可用作校驗(yàn)位和地址/數(shù)據(jù)標(biāo)識位RB8:接收的第9位數(shù)據(jù)位或停止位TI:發(fā)送中斷標(biāo)志,發(fā)送一幀結(jié)束,TI=1,必須軟件清零RI:接收中斷標(biāo)志,接收一幀結(jié)束,RI=1,必須軟件清零(4)節(jié)電控制寄存器PCON3.4通信接口二、串行口控制寄存器2、串行接口控制第三十八頁,共五十四頁,編輯于2023年,星期四

SM0,SM1選擇四種工作方式。1.方式0:同步移位寄存器方式。用于擴(kuò)展并行I/O接口。(1)一幀8位,無起始位和停止位。(2)RXD:數(shù)據(jù)輸入/輸出端。

TXD:同步脈沖輸出端,每個脈沖對應(yīng)一個數(shù)據(jù)位。(3)波特率B=fosc/12

如:fosc=12MHz, B=1MHz,每位數(shù)據(jù)占1s。三、串行接口的工作方式3.4通信接口第三十九頁,共五十四頁,編輯于2023年,星期四(4)發(fā)送過程:寫入SBUF,啟動發(fā)送,一幀發(fā)送結(jié)束,TI=1。接收過程:REN=1且RI=0,啟動接收,一幀接收完畢,RI=1。

發(fā)送時序?qū)懭隨BUFRXD輸出TXDTID0D1D2D3D4D5D6D7寫REN=1RI=0RXD輸入RI接收時序(a)(b)三、串行接口的工作方式3.4通信接口第四十頁,共五十四頁,編輯于2023年,星期四

數(shù)據(jù)從RXD(P3.0)引腳串行輸出,低位在先,高位在后;TXD(P3.1)引腳輸出移位脈沖,其頻率為foc/12;發(fā)送完畢后,中斷標(biāo)志位TI為1。如要發(fā)送數(shù)據(jù),如下所示:

MOVSCON,#00H;串行口方式0MOVSBUF,A;將數(shù)據(jù)送出

JNBTI,$;等待數(shù)據(jù)發(fā)送完畢(5)移位寄存器方式舉例三、串行接口的工作方式3.4通信接口第四十一頁,共五十四頁,編輯于2023年,星期四2.方式1:8位數(shù)據(jù)異步通訊方式。(1)一幀10位:8位數(shù)據(jù)位,1個起始位(0),1個停止位(1)。(2)RXD:接收數(shù)據(jù)端。TXD:發(fā)送數(shù)據(jù)端。(3)波特率:用T1作為波特率發(fā)生器,B=(2SMOD/32)×T1溢出率。(4)發(fā)送:寫入SBUF,同時啟動發(fā)送,一幀發(fā)送結(jié)束,TI=1。接收:REN=1,允許接收。接收完一幀,若RI=0且停止位為1(或SM2=0),將接收數(shù)據(jù)裝入SBUF,停止位裝入RB8,并使RI=1;否則丟棄接收數(shù)據(jù),不置位RI。三、串行接口的工作方式3.4通信接口第四十二頁,共五十四頁,編輯于2023年,星期四

當(dāng)REN=1,CPU開始采樣RXD引腳負(fù)跳變信號,若出現(xiàn)負(fù)跳變,才進(jìn)入數(shù)據(jù)接收狀態(tài),先檢測起始位,若第一位為0,繼續(xù)接收其余位;否則,停止接收,重新采樣負(fù)跳變。數(shù)據(jù)采樣速率為波特率16倍頻,在數(shù)據(jù)位中間,用第7、8、9個脈沖采樣3次數(shù)據(jù)位,并3中取2保留采樣值。寫入SBUF采樣(a)發(fā)送時序圖TXD數(shù)據(jù)輸出TID0D1D2D3D4D5D6D7停止位起始位RXD輸入數(shù)據(jù)(b)接收時序圖D0D1D2D3D4D5D6D7停止位起始位RI檢測負(fù)跳變?nèi)?、串行接口的工作方?.4通信接口第四十三頁,共五十四頁,編輯于2023年,星期四

(1)一幀為11位:9位數(shù)據(jù)位,1個起始位(0),1個停止位(1)。第9位數(shù)據(jù)位在TB8/RB8中,常用作校驗(yàn)位和多機(jī)通訊標(biāo)識位。

(2)RXD:接收數(shù)據(jù)端,TXD:發(fā)送數(shù)據(jù)端。

(3)波特率:方式2:B=(2SMOD/64)×fosc。 方式3:B=(2SMOD/32)×T1溢出率。3.方式2和方式3:9位數(shù)據(jù)異步通訊方式。三、串行接口的工作方式3.4通信接口第四十四頁,共五十四頁,編輯于2023年,星期四(4)發(fā)送:先裝入TB8,寫入SBUF并啟動發(fā)送,發(fā)送結(jié)束,TI=1。接收:REN=1,允許接收。接收完一幀,若RI=0且第9位為1(或SM2=0),將接收數(shù)據(jù)裝入接收SBUF,第9位裝入RB8,使RI=1;否則丟棄接收數(shù)據(jù),不置位RI。發(fā)送時序?qū)懭隨BUFTXD輸出TIRXD輸入接收時序RID0D1D2D3D4D5D6TB8停止位起始位D7D0D1D2D3D4D5D6RB8停止位起始位D7檢測負(fù)跳變3.方式2和方式3:9位數(shù)據(jù)異步通訊方式。三、串行接口的工作方式第四十五頁,共五十四頁,編輯于2023年,星期四方式0為固定波特率:B=fosc/12 方式2可選兩種波特率:B=(2SMOD/64)×fosc 方式1、3為可變波特率,用T1作波特率發(fā)生器。

B=(2SMOD/32)×T1溢出率T1為方式2的時間常數(shù):X=28-t/T

溢出時間:t=(28-X)T=(28-X)×12/foscT1溢出率=1/t=fosc/[12×(2n-X)]

波特率B=(2SMOD/32)×fosc/[12×(28-X)]串行口方式1、3,根據(jù)波特率選擇T1工作方式,計(jì)算時間常數(shù)。T1選方式2:TH1=X=28-fosc/12×2SMOD/(32×B)T1選方式1用于低波特率,需考慮T1重裝時間常數(shù)時間。3.4通信接口四、計(jì)算波特率第四十六頁,共五十四頁,編輯于2023年,星期四串行口初始化編程格式:

SIO:MOVSCON,#控制狀態(tài)字;寫方式字且TI=RI=0 (MOVPCON,#80H) ;波特率加倍

(MOVTMOD,#20H) ;T1作波特率發(fā)生器

(MOVTH1,#X);選定波特率

(MOVTL1,#X) (SETBTR1) (SETBEA) ;開串行口中斷

(SETBES)1.串行口初始化3.4通信接口五、串行口的應(yīng)用第四十七頁,共五十四頁,編輯于2023年,星期四2.發(fā)送程序(1)查詢方式:TRAM:MOV A,@R0 ;取數(shù)據(jù)

MOV SBUF,A ;發(fā)送一個字符WAIT:JBC TI,NEXT ;等待發(fā)送結(jié)束

SJMP WAITNEXT:INC R0 ;準(zhǔn)備下一次發(fā)送

SJMP TRAM(2)中斷方式:

ORG 0023H ;串行口中斷入口

AJMPSINTMAIN: … ;初始化編程TRAM: MOV A,@R0 ;取數(shù)據(jù)

MOV SBUF,A ;發(fā)送第一個字符H: SJMP H ;其它工作SINT: CLRTI ;中斷服務(wù)程序

INC R0 MOV A,@R0 ;取數(shù)據(jù)

MOV SBUF,A ;發(fā)送下一個字符

RETI五、串行口的應(yīng)用第四十八頁,共五十四頁,編輯于2023年,星期四3.接收程序REN=1、RI=0等待接收,當(dāng)RI=1,從SBUF讀取數(shù)據(jù)。查詢方式:WAIT: JBC RI,NEXT ;查詢等待

SJMP WAITNEXT: MOV A,SBUF ;讀取接收數(shù)據(jù)

MOV @R0,A ;保存數(shù)據(jù)

INC R0 ;準(zhǔn)備下一次接收

SJMP WAIT五、串行口的應(yīng)用第四十九頁,共五十四頁,編輯于2023年,星期四D0D1D2D3D4D5D6D7

數(shù)據(jù)輸入

RXD9TXD移位脈沖

274LS165

8051

654314131211

4.串行口方式0用于擴(kuò)展單片機(jī)的并行I/O接口。串行口實(shí)現(xiàn):并行→串行的數(shù)據(jù)轉(zhuǎn)換74LS165/74LS164實(shí)現(xiàn):串行→并行的數(shù)據(jù)轉(zhuǎn)換。D7D6D5D4D3D2D1D0

數(shù)據(jù)輸入

RXD12TXD移位脈沖

74LS164

88051345610111213

五、串行口的應(yīng)用第五十頁,共五十四頁,編輯于2023年,星期四5.異步通訊程序舉例

(1)發(fā)送程序:將片內(nèi)RAM50H起始單元的16個數(shù)由串行口發(fā)送。要求發(fā)送波特率為系統(tǒng)時鐘的32分頻,并進(jìn)行奇偶校驗(yàn)。MAINT:MOV SCON,#80H;串行口初始化

MOV PCON,#80H;波特率

SETB EA SETB ES ;開串行口中斷

MOV R0,#50H ;設(shè)數(shù)據(jù)指針

MOV R7,#10H ;數(shù)據(jù)長度LOOP: MOV A,@R0 ;取一個字符

MOV C,P ;加奇偶校驗(yàn)

MOV TB8,C MOV SBUF,A ;啟動一次發(fā)送HERE: SJMP HERE ;CPU執(zhí)行其它任務(wù)四、串行口的應(yīng)用第五十一頁,共五十四頁,編輯于2023年,星期四

ORG0023H;串行口中斷入口

AJMP TRANI

TRANI: PUSH A ;保護(hù)現(xiàn)場

PUSH PSW CLR TI ;清發(fā)送結(jié)束標(biāo)志

DJNZ R7,NEXT ;是否發(fā)送完?

CLR ES ;發(fā)送完,關(guān)閉串行口中斷 SJMP TEND NEXT: INC R0 ;未發(fā)送完,修改指針

MOV A,@R0 ;取下一個字符

MOV C,P;加奇偶校驗(yàn)

MOV TB8,C MOV SBUF,A ;發(fā)送一個字符

POP PSW ;恢復(fù)現(xiàn)場

POP A TEND: RETI ;中斷返回五、串行口的應(yīng)用第五十二頁,共五十四頁,編輯于2023年,星期四(2)接收程

溫馨提示

  • 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

提交評論