單片機(jī)原理與應(yīng)用-基于AT89S51+Proteus仿真 第2版 課件 第7-9章 單片機(jī)的串行接口、單片機(jī)的系統(tǒng)擴(kuò)展、單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)_第1頁
單片機(jī)原理與應(yīng)用-基于AT89S51+Proteus仿真 第2版 課件 第7-9章 單片機(jī)的串行接口、單片機(jī)的系統(tǒng)擴(kuò)展、單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)_第2頁
單片機(jī)原理與應(yīng)用-基于AT89S51+Proteus仿真 第2版 課件 第7-9章 單片機(jī)的串行接口、單片機(jī)的系統(tǒng)擴(kuò)展、單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)_第3頁
單片機(jī)原理與應(yīng)用-基于AT89S51+Proteus仿真 第2版 課件 第7-9章 單片機(jī)的串行接口、單片機(jī)的系統(tǒng)擴(kuò)展、單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)_第4頁
單片機(jī)原理與應(yīng)用-基于AT89S51+Proteus仿真 第2版 課件 第7-9章 單片機(jī)的串行接口、單片機(jī)的系統(tǒng)擴(kuò)展、單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)_第5頁
已閱讀5頁,還剩148頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

單片機(jī)原理與應(yīng)用第7章單片機(jī)的串行接口內(nèi)容指南串行通信是單片機(jī)與外界進(jìn)行信息交換的一種基本方式。AT89S51/52單片機(jī)有一個(gè)通用異步接收/發(fā)送器(UART)工作方式的全雙工串行通信接口。本章介紹串行通信的基本概念,串行口的結(jié)構(gòu)與控制寄存器,串行口的工作方式以及串行口的編程應(yīng)用。學(xué)習(xí)目標(biāo)掌握串行通信的基本概念。了解串行口的各種工作方式及其差異。了解串行口的基本應(yīng)用。第7章單片機(jī)的串行接口7.1串行通信概述7.2串行口結(jié)構(gòu)與控制寄存器7.3串行口的工作方式7.4多機(jī)通信第7章單片機(jī)的串行接口 計(jì)算機(jī)與外界的信息交換稱為通信,通信的基本方式可分為并行通信和串行通信兩種。

并行通信:特點(diǎn):傳送控制簡單、速度快,但傳輸線較多,成本高。數(shù)據(jù)的各位同時(shí)在多根數(shù)據(jù)線上發(fā)送或接收。第7章單片機(jī)的串行接口

串行通信特點(diǎn):傳送控制復(fù)雜、速度慢,傳輸線少,成本低數(shù)據(jù)的各位在同一根數(shù)據(jù)線上依次逐位發(fā)送或接收。信息傳輸在一個(gè)方向上只占用一跟通信線,它既作為數(shù)據(jù)線,又作為聯(lián)絡(luò)線。

第7章單片機(jī)的串行接口 串行通信按同步方式和編碼格式不同又可分為異步通信和同步通信兩種方式。特點(diǎn):收、發(fā)設(shè)備時(shí)鐘獨(dú)立,以字符(幀)為單位傳輸。異步通信

第7章單片機(jī)的串行接口

異步通信幀格式起始位(1位,0):其作用是向接收端表示發(fā)送端開始發(fā)送一幀數(shù)據(jù)。數(shù)據(jù)位(8位):5~8位均可,由低位到高位逐位傳送。奇偶校驗(yàn)位(1位,可無校驗(yàn)位):用來檢驗(yàn)數(shù)據(jù)在傳送過程中是否出錯(cuò)停止位(1位,1):表示一幀信息的結(jié)束,也為發(fā)送下一幀信息作好準(zhǔn)備。

第7章單片機(jī)的串行接口同步通信(SynchronousCommunication)同步字符數(shù)據(jù)字符1數(shù)據(jù)字符2…數(shù)據(jù)字符n-1數(shù)據(jù)字符n校驗(yàn)字符(校驗(yàn)字符)同步通信是一種連續(xù)傳送數(shù)據(jù)的通信方式,一次通信傳送多個(gè)字符數(shù)據(jù),稱為一幀信息。數(shù)據(jù)傳輸速率較高,通??蛇_(dá)56000bps或更高。其缺點(diǎn)是要求發(fā)送時(shí)鐘和接收時(shí)鐘保持嚴(yán)格同步。同步通信的數(shù)據(jù)幀格式:特點(diǎn):收、發(fā)設(shè)備統(tǒng)一時(shí)鐘,以數(shù)據(jù)塊為單位傳輸。例如器件之間的SPI第7章單片機(jī)的串行接口串行通信的傳輸方向單工

半雙工

全雙工51單片機(jī)有1個(gè)全雙工串行口

雙方通信只能單向傳送數(shù)據(jù)接收和發(fā)送不能同時(shí)進(jìn)行兩端數(shù)據(jù)允許同時(shí)收發(fā)第7章單片機(jī)的串行接口傳輸速率與傳輸距離傳輸速率傳輸距離與傳輸速率的關(guān)系傳輸距離隨波特率的增加而減小。

波特率(BaudRate)是串行通信中一個(gè)重要概念,它是指?jìng)鬏敂?shù)據(jù)的速率,

亦稱比特率。波特率的定義是每秒傳輸二進(jìn)制數(shù)碼的位數(shù)。如:波特率為1200bps是指每秒鐘能傳輸1200位二進(jìn)制數(shù)碼。波特率的倒數(shù)即為每位數(shù)據(jù)傳輸時(shí)間。例如:波特率為1200bps,每位的傳輸時(shí)間為:1)(833.01200msdT==第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口7.1串行通信概述7.2串行口結(jié)構(gòu)與控制寄存器

7.3串行的工作方式7.4多機(jī)通信第7章單片機(jī)的串行接口AT89S51內(nèi)部有1個(gè)可編程的全雙工串行通信接口,可作為通用異步接收/發(fā)送器(UART),也可作為同步移位寄存器。通過引腳RXD(P3.0)和TXD(P3.1)與外界進(jìn)行通信。結(jié)構(gòu)組成:發(fā)送SBUF+接收SBUF+發(fā)送控制器+接收控制器+定時(shí)器T1+RXD+TXD……第7章單片機(jī)的串行接口2個(gè)數(shù)據(jù)緩沖器SBUF在物理上是相互獨(dú)立的,一個(gè)用于發(fā)送數(shù)據(jù)(SBUF發(fā))、一個(gè)用于接收數(shù)據(jù)(SBUF收)。2個(gè)SBUF共用一個(gè)地址(99H),通過讀寫指令區(qū)別是對(duì)哪個(gè)SUBF的操作。第7章單片機(jī)的串行接口發(fā)送控制器的作用是在門電路和定時(shí)器T1的配合下,將SBUF發(fā)中的并行數(shù)據(jù)轉(zhuǎn)為串行數(shù)據(jù),并自動(dòng)添加起始位、可編程位、停止位。這一過程結(jié)束后自動(dòng)使發(fā)送中斷請(qǐng)求標(biāo)志位TI置1,用以通知CPU已將SBUF發(fā)中的數(shù)據(jù)輸出到了TXD引腳。第7章單片機(jī)的串行接口接收控制器的作用是在輸入移位寄存器和定時(shí)器T1的配合下,使來自RXD引腳的串行數(shù)據(jù)轉(zhuǎn)為并行數(shù)據(jù),并自動(dòng)過濾掉起始位、可編程位、停止位。這一過程結(jié)束后自動(dòng)使接收中斷請(qǐng)求標(biāo)志位RI置1,用以通知CPU接收的數(shù)據(jù)已存入SBUF收。第7章單片機(jī)的串行接口定時(shí)器T1的作用是產(chǎn)生用以收發(fā)過程中節(jié)拍控制的通信時(shí)鐘。發(fā)送數(shù)據(jù)時(shí),通信時(shí)鐘的下降沿對(duì)應(yīng)于數(shù)據(jù)移位輸出;接收數(shù)據(jù)時(shí),通信時(shí)鐘的上升沿對(duì)應(yīng)于數(shù)據(jù)位采樣。通信時(shí)鐘頻率(波特率)由定時(shí)器的控制寄存器管理。第7章單片機(jī)的串行接口RXD(P3.0)和TXD(P3.1)用于串行信號(hào)或時(shí)鐘信號(hào)的傳入或傳出。3412第二輸入功能V

串行數(shù)據(jù)緩沖器,SBUF在物理上有兩個(gè)SBUF:一個(gè)用于發(fā)送,另一個(gè)用于接收。在邏輯上只有一個(gè)SBUF(99H)??筛鶕?jù)用法區(qū)分功能:ucharcounter;待發(fā)送存放變量…SBUF=counter;

完成一次數(shù)據(jù)發(fā)送…counter=SBUF;

完成一次數(shù)據(jù)接收CPU第7章單片機(jī)的串行接口串行口控制寄存器SCON76543210SCONSM0SM1SM2RENTB8RB8TIRI字節(jié)地址:98HSM0SM1方式說明波特率000移位寄存器fosc/1201110位UART(8位數(shù)據(jù))可變10211位UART(9位數(shù)據(jù))fosc/64或fosc/3211311位UART(9位數(shù)據(jù))可變■SM0SM1:串行口工作方式選擇位。第7章單片機(jī)的串行接口串行口控制寄存器SCON76543210SCONSM0SM1SM2RENTB8RB8TIRI字節(jié)地址:98H

SM2:多機(jī)通信控制位。多機(jī)通信僅在方式2和方式3下進(jìn)行。當(dāng)SM2

=

1,則只有接收到的第9位數(shù)據(jù)(RB8)為“1”時(shí),才使RI置“1”,并將接收到的前8位數(shù)據(jù)送入SBUF;當(dāng)接收到的第9位數(shù)據(jù)(RB8)為“0”時(shí),則將接收到的前8位數(shù)據(jù)丟棄;當(dāng)SM2

=

0時(shí),則不論第9位數(shù)據(jù)是“1”還是“0”,都將前8位數(shù)據(jù)送入SBUF中,并使RI置“1”。

REN:串行接受允許控制位。該位由軟件置位或復(fù)位。當(dāng)REN=1,允許接收;當(dāng)REN=0,禁止接收。第7章單片機(jī)的串行接口串行口控制寄存器SCON76543210SCONSM0SM1SM2RENTB8RB8TIRI字節(jié)地址:98H

■TB8:方式2和方式3中要發(fā)送的第9位數(shù)據(jù)。該位由軟件置位或復(fù)位。在多機(jī)通信中,以TB8位的狀態(tài)表示主機(jī)發(fā)送的是地址還是數(shù)據(jù):TB8=1表示地址,TB8=0表示數(shù)據(jù)。TB8還可用作奇偶校驗(yàn)位。

RB8:方式2和方式3時(shí),RB8存放接收到的第9位數(shù)據(jù)。RB8也可用作奇偶校驗(yàn)位。在方式1中,若SM2=0,則RB8是接收到的停止位。在方式0中,該位未用。第7章單片機(jī)的串行接口串行口控制寄存器SCON76543210SCONSM0SM1SM2RENTB8RB8TIRI字節(jié)地址:98H

■TI:發(fā)送中斷標(biāo)志位。TI=1,表示已結(jié)束一幀數(shù)據(jù)發(fā)送,可由軟件查詢TI位標(biāo)志,也可以向CPU申請(qǐng)中斷。

RI:接收中斷標(biāo)志位。RI=1,表示一幀數(shù)據(jù)接收結(jié)束??捎绍浖樵僐I位標(biāo)志,也可以向CPU申請(qǐng)中斷。注意:TI、RI在任何工作方式下都必須由軟件清0。第7章單片機(jī)的串行接口電源控制寄存器PCONSMOD:波特率倍增位。在串行口方式1、方式2、方式3時(shí),若SMOD=1,則串行口波特率增加一倍。若SMOD=0,波特率不加倍。系統(tǒng)復(fù)位時(shí),SMOD=0。

76543210PCONSMODGF1GF0PDIDL字節(jié)地址:97H第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口

51單片機(jī)串行通信以定時(shí)器T1為波特率信號(hào)發(fā)生器,其溢出脈沖經(jīng)過分頻單元后送到收、發(fā)控制器中。分頻單元的內(nèi)部結(jié)構(gòu)如下右圖所示。T1溢出脈沖可有兩種分頻路徑,即16分頻或32分頻,SMOD是決定分頻路徑的邏輯開關(guān)。分頻后的通信時(shí)鐘波特率為:第7章單片機(jī)的串行接口

式中t為T1的定時(shí)時(shí)間合并上面兩式可得

可見,波特率的大小取決于T1的定時(shí)參數(shù)和SMOD參數(shù)。第7章單片機(jī)的串行接口7.1串行通信概述7.2串行口結(jié)構(gòu)與控制寄存器7.3串行口的工作方式7.4多機(jī)通信第7章單片機(jī)的串行接口SM0SM1方式功能說明0011010101238位同步移位寄存器方式10位數(shù)據(jù)異步通訊方式11位數(shù)據(jù)異步通訊方式11位數(shù)據(jù)異步通訊方式SM0和SM1:串行工作方式定義位。通過SM0和SM1不同的取值,可定義4種串行通信工作方式。方式0——8位同步移位寄存器方式第7章單片機(jī)的串行接口RXD:輸入或輸出引腳TXD:同步移位脈沖輸出接收和發(fā)送都是8位波特率固定為:fosc/12此時(shí)SM2、RB8、TB8均應(yīng)設(shè)置為0數(shù)據(jù)傳輸波特率固定為fosc/12由RXD引腳輸入或輸出數(shù)據(jù)TXD引腳輸出fosc/12時(shí)鐘信號(hào)第7章單片機(jī)的串行接口以8位數(shù)據(jù)為一幀,不設(shè)起始位和停止位,先發(fā)送或接收最低位。

數(shù)據(jù)輸出:

TI=0時(shí),執(zhí)行“SBUF=sentdata”啟動(dòng)發(fā)送,8位數(shù)據(jù)由低位到高位從RXD引腳送出,TXD發(fā)送同步脈沖。發(fā)送完后,由硬件置位TI。方式0輸出的應(yīng)用-擴(kuò)展并行輸出口第7章單片機(jī)的串行接口數(shù)據(jù)輸入:

RI=0,REN=1時(shí)啟動(dòng)接收,數(shù)據(jù)從RXD輸入,TXD輸出同步脈沖。8位數(shù)據(jù)接收完,由硬件置位RI。可通過“rcvdata=SBUF”讀取數(shù)據(jù)。方式0輸入的應(yīng)用-擴(kuò)展并行輸入口第7章單片機(jī)的串行接口方式0主要用于串并轉(zhuǎn)換(不是用于異步串行通信)

擴(kuò)展輸出口擴(kuò)展輸入口擴(kuò)展輸出芯片:CD4094、74LS164……

擴(kuò)展輸入芯片:CD4014、74LS165……——I/O口數(shù)量不足時(shí),可通過串口方式0進(jìn)行擴(kuò)展,但需要相應(yīng)的擴(kuò)展芯片配合。第7章單片機(jī)的串行接口【例7-1】如圖所示,74164為串入并出的移位寄存器,CLK端為同步脈沖輸入端連接P3.1,R為控制端,當(dāng)R=0時(shí),允許串行數(shù)據(jù)從A和B端輸入但8位并行輸出端關(guān)閉;當(dāng)R=1時(shí),A和B輸入端關(guān)閉,但允許74LS164中的8位數(shù)據(jù)并行輸出。編寫程序控制8個(gè)發(fā)光二極管輪流點(diǎn)亮。第7章單片機(jī)的串行接口編程分析第7章單片機(jī)的串行接口①串口初始化:方式0(SM0SM1=00),中斷請(qǐng)求標(biāo)志位清0(RI=TI=0)和禁止接收數(shù)據(jù)(REN=0)→語句SCON=0。②被發(fā)送的字節(jié)數(shù)據(jù)只需賦值給寄存器SUBF發(fā),其余工作都將由硬件自動(dòng)完成??梢圆捎弥袛喾ɑ蜍浖樵兎ㄅ袛郥I是否為1。③欲使74LS164輸出11111110B,發(fā)送端數(shù)據(jù)應(yīng)為01111111B(0x7f);欲使LED由上向下點(diǎn)亮,發(fā)送端數(shù)據(jù)應(yīng)右移且最高位置1→語句(LED>>1)|0x80;0x80=10000000B。發(fā)送/接收方向發(fā)送/接收方向第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口仿真運(yùn)行效果第7章單片機(jī)的串行接口方式1:10位幀,用于雙機(jī)通信起始位:1位數(shù)據(jù)位:8位停止位:1位第7章單片機(jī)的串行接口串行發(fā)送:(寫SBUF啟動(dòng)發(fā)送過程)

當(dāng)TI=0時(shí),執(zhí)行“MOVSBUF,A”指令后開始發(fā)送,由硬件自動(dòng)加入起始位和停止位,構(gòu)成一幀數(shù)據(jù),然后由TXD端串行輸出。發(fā)送完后,TXD輸出線維持在“1”狀態(tài)下,并將SCON中的TI置1,表示一幀數(shù)據(jù)發(fā)送完畢。第7章單片機(jī)的串行接口串行接收:(置REN=1啟動(dòng)接收過程)

RI=0,REN=1時(shí),接收電路采樣RXD引腳,如出現(xiàn)由“1”變“0”跳變,認(rèn)為有數(shù)據(jù)正在送來。第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口【例7-2】如圖7-11所示,甲、乙雙機(jī)串行通信,甲機(jī)的P1口接8個(gè)開關(guān),乙機(jī)的P1口接8個(gè)發(fā)光二極管。甲機(jī)設(shè)置為只發(fā)不收的單工方式。要求甲機(jī)讀入P1口的8個(gè)開關(guān)的狀態(tài)后,通過串行口發(fā)送到乙機(jī),乙機(jī)將接收到的甲機(jī)的8個(gè)開關(guān)的狀態(tài)數(shù)據(jù)送入P1口,由P1口的8個(gè)發(fā)光二極管來顯示8個(gè)開關(guān)的狀態(tài)。雙機(jī)晶振均采用11.0592MHz。第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口仿真運(yùn)行效果:第7章單片機(jī)的串行接口方式2:11位幀格式起始位:1位數(shù)據(jù)位:9位停止位:1位第7章單片機(jī)的串行接口串行發(fā)送:(寫SBUF啟動(dòng)發(fā)送過程)

發(fā)送數(shù)據(jù)前,先由軟件設(shè)置TB8,可使用如下指令完成:

SETBTB8

;將TB8位置1

CLRTB8

;將TB8位置0

然后再向SBUF寫入8位數(shù)據(jù),并以此來啟動(dòng)串行發(fā)送。一幀數(shù)據(jù)發(fā)送完畢后,CPU自動(dòng)將TI置1,其過程與方式1相同。第7章單片機(jī)的串行接口串行接收:(置REN=1啟動(dòng)接收過程)

REN=1,RI=0時(shí),允許接收

①若SM2=0,接收到的8位數(shù)據(jù)送SBUF,第9位數(shù)據(jù)(無論0還是1)送RB8,RI置1。②若SM2=1,接收到的第9位數(shù)據(jù)為0,數(shù)據(jù)無效,不送SBUF;接收到的第8位數(shù)據(jù)為1,數(shù)據(jù)送SBUF,第9位送RB8。第7章單片機(jī)的串行接口方式2的波特率為固數(shù)值:第7章單片機(jī)的串行接口即,通信時(shí)鐘初始化僅需要設(shè)置PCON,與T1無關(guān)SUBF發(fā)為空時(shí)TI自動(dòng)置1;SUBF收為滿時(shí)RI的狀態(tài)要由SM2和RB8共同決定。若SM2=1,當(dāng)RB8為1時(shí),SUBF收為滿可使RI置1;若RB8為0,則SUBF收為滿也無法使RI置1。若SM2=0,則無論RB8為何值,SUBF收為滿都能使RI置1??删幊涛坏淖饔谩糜谄媾夹r?yàn)或多機(jī)通信標(biāo)識(shí)。發(fā)送時(shí)由硬件方式將TB8作為可編程位插入數(shù)據(jù)幀中;接受時(shí)由硬件方式將數(shù)據(jù)幀的可編程位存入RB8中。第7章單片機(jī)的串行接口奇偶校驗(yàn)原理:例如,發(fā)送數(shù)據(jù)為0x45(01000101B),其奇偶校驗(yàn)值P=1(奇數(shù)個(gè)1),將P→TB8,發(fā)送時(shí)可連同數(shù)據(jù)0x45一起發(fā)出。接收端可自動(dòng)將其可編程位放入RB8中。只要將待測(cè)數(shù)據(jù)送入Acc即可由硬件求出奇偶校驗(yàn)值(使P賦值),再與RB8進(jìn)行比較便可判斷收發(fā)過程是否有誤?!纠?-3】如圖7-15所示,A、B雙機(jī)串行通信,其晶振頻率均為11.0592MHz,通信波特率為2400bps。A機(jī)循環(huán)發(fā)送數(shù)字0~F,B機(jī)接收后先進(jìn)行奇偶校驗(yàn),若結(jié)果無誤,則向A機(jī)返回接收值同時(shí)使可編程位清零;若結(jié)果有誤則使可編程位置1。A機(jī)根據(jù)返回值中的可編程位決定發(fā)送新數(shù)據(jù)或重發(fā)當(dāng)前數(shù)據(jù)。A、B兩機(jī)均在各自數(shù)碼管上顯示當(dāng)前數(shù)據(jù)。第7章單片機(jī)的串行接口編程分析①初始化:第7章單片機(jī)的串行接口序號(hào)波特率SMODa16250010xff21920010xfd3960000xfd4480000xfa5240000xf46120000xe82.4k波特率→PCON=0,TH1=TL1=0xf4;T1定時(shí)方式1,允許TR1控制→TMOD=0x20;串口方式2,允許接收,清中斷標(biāo)志→SCON=0x50。GATETMODC/TM1M0M0M1GATEC/T(89H)IE(A8H)EAESET1EX1ET0EX0②利用方式2的可編程位做奇偶校驗(yàn)位的原理是,只要將待測(cè)數(shù)據(jù)送入Acc寄存器中即可由硬件求出奇偶校驗(yàn)值P,發(fā)送方作為TB8一同發(fā)送,接收方再與RB8進(jìn)行比較便可判斷收發(fā)過程是否有誤。第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口仿真運(yùn)行效果:第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口方式3——11位數(shù)據(jù)異步通信方式方式3的波特率為可變的(其余方面皆與方式2相同)起始位:1位數(shù)據(jù)位:9位停止位:1位第7章單片機(jī)的串行接口方式3主要用于錯(cuò)誤校驗(yàn)或主從式通信系統(tǒng)的場(chǎng)合主機(jī)與各從機(jī)之間能實(shí)現(xiàn)雙向通信,而各從機(jī)之間不能直接通信,只能通過主機(jī)才能溝通。主從式通信系統(tǒng):1主機(jī)+多從機(jī)每臺(tái)從機(jī)都有獨(dú)立的地址編號(hào)HostSlave多機(jī)通信過程:主機(jī)向所有從機(jī)發(fā)送包含n#從機(jī)地址的地址幀;所有從機(jī)都核查該地址幀,只有n#從機(jī)修改本機(jī)SM2;主機(jī)發(fā)送數(shù)據(jù)幀,只有n#從機(jī)能夠接收到數(shù)據(jù)信息。

關(guān)鍵:主機(jī)第1次發(fā)出的信息要能被所有的從機(jī)響應(yīng),而第2次的信息只能被n#從機(jī)所響應(yīng)——多機(jī)通信控制位SM2對(duì)接收中斷請(qǐng)求的管理功能。第7章單片機(jī)的串行接口多機(jī)通信原理:(a)所有從機(jī)都先使自己的SM2=1,而主機(jī)在發(fā)送的地址幀信息時(shí)先使TB8=1。這樣,所有從機(jī)都能產(chǎn)生接收中斷請(qǐng)求,并收到主機(jī)發(fā)來的地址信息;(b)各從機(jī)將主機(jī)發(fā)來的地址與本機(jī)地址編號(hào)相比較。若與本機(jī)相符(即命中),則該從機(jī)使自己的SM2=0,其余從機(jī)仍舊保持SM2=1;(c)主機(jī)接著發(fā)送TB8=0的數(shù)據(jù)幀信息。此時(shí)只有命中機(jī)(SM2=0)有中斷請(qǐng)求,其它從機(jī)均無響應(yīng)。SM2=1時(shí),若RB8=1,SBUF滿→置位RISM2=1時(shí),若RB8=0,SBUF滿→不置位RISM2=0時(shí),任意RB8值,SBUF滿→置位RI——所有叢機(jī)——非命中叢機(jī)——命中叢機(jī)第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口【例7-4】

K1、K2為1#、2#叢機(jī)的激發(fā)鍵,每按1次主機(jī)向相應(yīng)從機(jī)順序發(fā)送1位0~F間的字符(可用虛擬終端TERMINAL觀察)。命中從機(jī)收到地址幀后使相應(yīng)LED狀態(tài)反轉(zhuǎn)1次,收到數(shù)據(jù)幀后顯示在共陽型數(shù)碼管上。晶振為11.0592MHz。要求采用串口通信方式3,波特率9600bps,發(fā)送編程采用查詢法,接收編程采用中斷法。第7章單片機(jī)的串行接口TERMINAL——用于觀察串行通信數(shù)據(jù)的虛擬儀器,使用時(shí)只需將其TXD和RXD端分別與單片機(jī)RXD和TXD相連。通過屬性窗口進(jìn)行參數(shù)設(shè)置。

第7章單片機(jī)的串行接口程序分析初始化:T1定時(shí)方式2→TMOD=0x20;9600波特率→TH1=TL1=0xfd;PCON=0;串口方式3,允許接收→SCON=0xc0。序號(hào)波特率SMODa16250010xff21920010xfd3960000xfd4480000xfa5240000xf46120000xe8第7章單片機(jī)的串行接口實(shí)例4參考程序第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口第7章單片機(jī)的串行接口仿真運(yùn)行效果單片機(jī)原理與應(yīng)用第8章單片機(jī)的系統(tǒng)擴(kuò)展內(nèi)容指南前面幾章介紹了單片機(jī)片內(nèi)資源的工作原理與應(yīng)用。當(dāng)單片機(jī)片內(nèi)資源不夠用時(shí),AT89S51單片機(jī)可以進(jìn)行外部資源的擴(kuò)充。本章介紹外部資源的擴(kuò)充原理,包括存儲(chǔ)器、并行I/O、A/D、D/A的擴(kuò)展技術(shù)和應(yīng)用舉例。學(xué)習(xí)目標(biāo)掌握51單片機(jī)外部系統(tǒng)總線的構(gòu)成。了解存儲(chǔ)器、并行I/O、A/D、D/A的外部擴(kuò)展原理。了解常用串行芯片的外部擴(kuò)展技術(shù)及其應(yīng)用。第8章單片機(jī)的系統(tǒng)擴(kuò)展51單片機(jī)最小系統(tǒng)51單片機(jī)擴(kuò)展系統(tǒng)51單片機(jī)擴(kuò)展技術(shù)xdata存儲(chǔ)空間的訪問第1講單片機(jī)的系統(tǒng)擴(kuò)展第8章單片機(jī)的系統(tǒng)擴(kuò)展

51/52單片機(jī)片內(nèi)資源:

4KB/8KBROM;128B/256BRAM;4個(gè)并行I/O或32位I/O口;

5/6源中斷系統(tǒng);

2/3個(gè)16位定時(shí)/計(jì)數(shù)器;

1個(gè)全雙工串行口UART;

51單片機(jī)最小系統(tǒng)示意圖80C51/52片內(nèi)資源單片機(jī)最小系統(tǒng):是指只使用片內(nèi)資源的應(yīng)用系統(tǒng)。第8章單片機(jī)的系統(tǒng)擴(kuò)展當(dāng)片內(nèi)資源不夠用時(shí),51單片機(jī)可以進(jìn)行系統(tǒng)擴(kuò)展(包括RAM、ROM、I/O、中斷、T/C、ADC、DAC等);也可以選擇滿足應(yīng)用系統(tǒng)所需資源的其它芯片(推薦)。例如,美國Atmel公司的AT89系列單片機(jī)芯片 美國Siliconlabs公司的C8051F系列芯片 我國宏晶科技的STC89,STC12,STC15系列芯片在Keil開發(fā)環(huán)境中列出了幾百種芯片可供選擇。第8章單片機(jī)的系統(tǒng)擴(kuò)展ATMEL公司AT89系列芯片第8章單片機(jī)的系統(tǒng)擴(kuò)展美國Silabs公司的C8051F系列單片機(jī)第8章單片機(jī)的系統(tǒng)擴(kuò)展宏晶公司STC12C系列51單片機(jī)型號(hào)Flash程序存儲(chǔ)器SRAM定時(shí)計(jì)數(shù)器UARTPWMD/A8路A/DI/OEEPROMSPISTC12C5A60S260K128042-3個(gè)2路10位441K有STC12C5A48S248K128042-3個(gè)2路10位4413K有STC12C5A56S256K128042-3個(gè)2路10位445K有STC12C5A52S252K128042-3個(gè)2路10位449K有STC12C5A48S248K128042-3個(gè)2路10位4413K有STC12C5A40S240K128042-3個(gè)2路10位4421K有STC12C5A32S232K128042-3個(gè)2路10位4429K有STC12C5A16S216K128042-3個(gè)2路10位4445K有STC12C5A08S28K128042-3個(gè)2路10位4453K有IAP12C5A62S262K128042-3個(gè)2路10位44IAP有第8章單片機(jī)的系統(tǒng)擴(kuò)展51單片機(jī)擴(kuò)展系統(tǒng)是指在片外擴(kuò)展硬件資源的系統(tǒng)RAM、ROM、I/O、中斷、T/C、ADC、DAC等都可以片外擴(kuò)展

第8章單片機(jī)的系統(tǒng)擴(kuò)展51單片機(jī)擴(kuò)展技術(shù)51單片機(jī)如何在片外擴(kuò)展資源呢? 并行總線擴(kuò)展技術(shù) 串行總線擴(kuò)展技術(shù)兩種擴(kuò)展技術(shù)分別利用并行總線芯片或串行總線芯片來擴(kuò)展第8章單片機(jī)的系統(tǒng)擴(kuò)展51單片機(jī)并行總線擴(kuò)展技術(shù)大家回憶下單片機(jī)內(nèi)部資源是靠什么連接在一起的?片內(nèi)系統(tǒng)總線CPUROMRAM

T/C……控制總線CB數(shù)據(jù)總線DB地址總線AB第8章單片機(jī)的系統(tǒng)擴(kuò)展51單片機(jī)還可構(gòu)造片外系統(tǒng)總線系統(tǒng)總線利用外部系統(tǒng)總線(三總線)進(jìn)行系統(tǒng)擴(kuò)展稱為并行總線擴(kuò)展第8章單片機(jī)的系統(tǒng)擴(kuò)展按功能通常把系統(tǒng)總線分為三組。

1.地址總線(AdressBus,AB) 地址總線用于傳送單片機(jī)發(fā)出的地址信號(hào),以便進(jìn)行存儲(chǔ)單元或I/O接口芯片中的端口選擇。地址總線是單向傳輸?shù)摹?.?dāng)?shù)據(jù)總線(DataBus,DB) 數(shù)據(jù)總線用于在單片機(jī)與存儲(chǔ)器或與I/O端口之間傳送數(shù)據(jù),數(shù)據(jù)總線是雙向的。3.控制總線(ControlBus,CB) 控制總線就是單片機(jī)執(zhí)行指令時(shí)發(fā)出的讀寫控制信號(hào)線。第8章單片機(jī)的系統(tǒng)擴(kuò)展利用并行總線擴(kuò)展的片外RAM和片外I/O端口統(tǒng)一編址xdata(0000~FFFFH),采用相同的訪問指令。單片機(jī)片外RAM地址空間xdata(片內(nèi)data)第8章單片機(jī)的系統(tǒng)擴(kuò)展一般CPU都有專用總線引腳,為減少引腳數(shù)量,51單片機(jī)沒有專用總線引腳,而是采用與通用I/O引腳復(fù)用(兼作總線引腳)的方案。P0口P2口51單片機(jī)如何構(gòu)造片外系統(tǒng)總線呢?第8章單片機(jī)的系統(tǒng)擴(kuò)展片外三總線的構(gòu)成:數(shù)據(jù)總線——P0口地址總線——P0+P2控制總線—P3口+控制引腳采用了分時(shí)復(fù)用P0口方案,即數(shù)據(jù)總線和低8位地址總線都由P0口承擔(dān)。為了將數(shù)據(jù)與地址信息分開,需要在P0口外部增加地址鎖存器芯片(74LS373,74HC373等)。第8章單片機(jī)的系統(tǒng)擴(kuò)展74LS373--帶三態(tài)門的8D鎖存器D7~D0:8位數(shù)據(jù)輸入線。Q7~Q0:8位數(shù)據(jù)輸出線。OE*:數(shù)據(jù)輸出允許信號(hào),低電平有效。G:輸入鎖存選通信號(hào)。導(dǎo)通鎖存隔離第8章單片機(jī)的系統(tǒng)擴(kuò)展典型的P0口地址/數(shù)據(jù)接口電路接線方法:/OE→地,LE→正脈沖源,D0~D7→P0,Q0~Q7→外設(shè)地址端第8章單片機(jī)的系統(tǒng)擴(kuò)展P0和P2口作為地址/數(shù)據(jù)總線后,留給用戶使用的I/O口只有P1口和部分P3口。這就是不推薦采用并行總線擴(kuò)展的理由。推薦利用串行芯片擴(kuò)展或是選擇資源夠用的單片機(jī)。第8章單片機(jī)的系統(tǒng)擴(kuò)展串行總線擴(kuò)展技術(shù)利用串行總線芯片擴(kuò)展系統(tǒng)如單總線(1wire)芯片;I2C總線芯片;SPI總線芯片常用的如:DS18B20;AT24CXX;93LCXX

串行ADC;串行DAC;串行實(shí)時(shí)時(shí)鐘芯片

這些芯片體積小巧,功耗低(第9章介紹了這些芯片的擴(kuò)展和應(yīng)用技術(shù))第8章單片機(jī)的系統(tǒng)擴(kuò)展

MOVXA,@DPTRMOVXA,@RiMOVX@DPTR,AMOVX@Ri,A(讀,RD)(寫,WR)1、匯編語言方法xdata地址空間的訪問xdataXdata地址裝入數(shù)據(jù)指針寄存器DPTR(間接尋址)第8章單片機(jī)的系統(tǒng)擴(kuò)展2、C51語言方法-C51語言有多種方法訪問xdata絕對(duì)地址#include<absacc.h>#defineportXBYTE[0x1000]unsignedchartemp1,temp2;……temp1=port; //讀端口操作port=temp2; //寫端口操作

……例如,對(duì)占用片外RAM1000H的端口進(jìn)行讀寫操作:#include<absacc.H>//包含含有宏定義的頭文件#define

變量名XBYTE[地址常數(shù)]//地址定義語句方法1:利用宏定義文件absacc.h定義絕對(duì)地址變量宏定義頭文件absacc.h中包含絕對(duì)地址訪問的函數(shù)原型第8章單片機(jī)的系統(tǒng)擴(kuò)展方法2:采用指針訪問xdata存儲(chǔ)空間絕對(duì)地址例如,同樣針對(duì)上述舉例,程序設(shè)計(jì)如下:unsignedcharxdata*PORT=0x1000

;//定義指針變量unsignedchartemp1,temp2;……temp=*PORT;//讀0x1000端口

*PORT=temp2;//寫0x1000端口

……數(shù)據(jù)類型[存儲(chǔ)類型1][存儲(chǔ)類型2]*變量名[=地址常數(shù)];第8章單片機(jī)的系統(tǒng)擴(kuò)展方法3:采用_at_關(guān)鍵字訪問片外RAM絕對(duì)地址使用_at_可對(duì)指定存儲(chǔ)器空間的絕對(duì)地址定位,但使用_at_定義的變量只能為全局變量。例如:unsignedcharxdataxram[0x80]_at_0x1000;//在片外RAM0x1000處定義一個(gè)char型數(shù)組變量xram,元素個(gè)數(shù)為0x80數(shù)據(jù)類型xdata

變量名_at_地址常數(shù);本講結(jié)束第8章單片機(jī)的系統(tǒng)擴(kuò)展第2講并行輸出A/D轉(zhuǎn)換器的擴(kuò)展A/D轉(zhuǎn)換器(AnalogtoDigitalConverter)——能把模擬量轉(zhuǎn)換成相應(yīng)數(shù)字量(簡稱為ADC或A/D)。單片機(jī)測(cè)控系統(tǒng)中的ADC和DAC

D/A轉(zhuǎn)換器(DigitaltoAnalogConverter)——能把數(shù)字量轉(zhuǎn)換為模擬量的電子器件(簡稱為DAC或D/A)。第8章單片機(jī)的系統(tǒng)擴(kuò)展逐次逼近型

雙積分型

∑-⊿型

并行比較型/串行比較型

壓頻變換型AD轉(zhuǎn)換器的分類按轉(zhuǎn)化原理按轉(zhuǎn)化速度超高速(轉(zhuǎn)換速度≤1ns)

高速(轉(zhuǎn)換速度≤20

s)

中速(轉(zhuǎn)換速度≤1ms)

低速(轉(zhuǎn)換速度≤1s)8位

12位

14位

16位按轉(zhuǎn)化位數(shù)第8章單片機(jī)的系統(tǒng)擴(kuò)展逐次逼近式ADC的工作原理從最高位開始通過試探值逐次進(jìn)行測(cè)試,直到試探值經(jīng)D/A轉(zhuǎn)換器輸出VN與VIN相等或達(dá)到允許誤差范圍為止。則該試探值就為A/D轉(zhuǎn)換所需的數(shù)字量。逐次逼近寄存器第8章單片機(jī)的系統(tǒng)擴(kuò)展ADC主要技術(shù)指標(biāo):轉(zhuǎn)換時(shí)間(convertiontime)是指完成一次AD轉(zhuǎn)換所需要的時(shí)間。逐次逼近型ADC的典型值為1~200μs。分辨率(resolution)是指系統(tǒng)在標(biāo)準(zhǔn)參考電壓時(shí)可分辨的最小模擬電壓,即1個(gè)bit對(duì)應(yīng)的模擬電壓大小。第8章單片機(jī)的系統(tǒng)擴(kuò)展28只引腳ADC0809——逐次比較型模數(shù)轉(zhuǎn)換芯片分辨率為8位轉(zhuǎn)換時(shí)間100μS

工作量程為0~+5V功耗為15mW工作電壓為+5V具有鎖存控制的8路模擬開關(guān)輸出與TTL電平兼容第8章單片機(jī)的系統(tǒng)擴(kuò)展8路模擬輸入信號(hào)——用三根地址線A,B,C選通IN0~I(xiàn)N7;引腳——START啟動(dòng)AD轉(zhuǎn)換,CLK轉(zhuǎn)換時(shí)鐘,VR參考電壓,EOC結(jié)束標(biāo)志,OE輸出使能,ALE地址鎖存使能ADC0809的結(jié)構(gòu)組成第8章單片機(jī)的系統(tǒng)擴(kuò)展工作時(shí)序ALE鎖存ADDA、ADDB、ADDCSTART正脈沖啟動(dòng)AD轉(zhuǎn)換EOC由高變低(AD啟動(dòng)后)

保持低電平(轉(zhuǎn)換期間)

由低變高(轉(zhuǎn)換結(jié)束)OE正脈沖,打開三態(tài)門輸出第8章單片機(jī)的系統(tǒng)擴(kuò)展【例8-2】分析圖8-27所示的ADC0809接口電路,并根據(jù)電路圖編程實(shí)現(xiàn)將IN7通道輸入的模擬量信號(hào)進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換結(jié)果以16進(jìn)制數(shù)顯示,圖中的兩位數(shù)碼管顯示器采用帶BCD譯碼驅(qū)動(dòng)的數(shù)碼管。第8章單片機(jī)的系統(tǒng)擴(kuò)展模擬通道地址,經(jīng)373對(duì)低8位地址進(jìn)行鎖存:IN0的低8位地址為11111000B(0xf8),IN1為0xf9,……,IN7為0xff。電路分析

采用總線連接方式第8章單片機(jī)的系統(tǒng)擴(kuò)展電路分析

由P2.0形成高8位地址(0xfe),與WR信號(hào)合成START/ALE正脈沖啟動(dòng)ADC,與RD信號(hào)合成OE正脈沖輸出轉(zhuǎn)換數(shù)據(jù);啟動(dòng)IN0~I(xiàn)N7通道AD轉(zhuǎn)換的命令的地址為:0xfef8,……,0xfeff。讀取AD結(jié)果的命令的地址為:任何高8位為0xfe的地址均可。第8章單片機(jī)的系統(tǒng)擴(kuò)展EOC信號(hào)經(jīng)非門接P3.3可形成一負(fù)脈沖信號(hào)(查詢轉(zhuǎn)換結(jié)束標(biāo)志);AD轉(zhuǎn)換的時(shí)鐘由虛擬信號(hào)發(fā)生器提供,頻率5~500kHz;電路分析

第8章單片機(jī)的系統(tǒng)擴(kuò)展第8章單片機(jī)的系統(tǒng)擴(kuò)展第8章單片機(jī)的系統(tǒng)擴(kuò)展仿真運(yùn)行效果第8章單片機(jī)的系統(tǒng)擴(kuò)展D/A轉(zhuǎn)換器概述DAC是一種將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào)的器件,其原理框圖如圖所示。DAC的模擬量輸出(電流或電壓)與輸入數(shù)字量成正比,和參考電壓Vref成正比。其基本關(guān)系如下,其中n為二進(jìn)制位數(shù):Vo=(D/2n)×Vref

第3講并行D/A轉(zhuǎn)換器的擴(kuò)展第8章單片機(jī)的系統(tǒng)擴(kuò)展DAC的數(shù)字輸入方式可以是:串行方式:適用于要求轉(zhuǎn)換速度不高的系統(tǒng)中,占用I/O口資源少,方便連接。并行方式:適用于要求轉(zhuǎn)換速度較高的系統(tǒng)中,占用I/O口資源多。D/A轉(zhuǎn)換器概述第8章單片機(jī)的系統(tǒng)擴(kuò)展DAC的模擬量輸出方式

電壓輸出:輸出的模擬量為電壓信號(hào)。電壓輸出又有單極性(0V~5V、0V~12V等)和雙極性(±5V、±12V等)之分,可根據(jù)需要選擇。

電流輸出:輸出的模擬量為電流信號(hào)。

在實(shí)際應(yīng)用中如需要模擬電壓,對(duì)于電流輸出的D/A,可在其輸出端加運(yùn)算放大器,通過運(yùn)算放大器構(gòu)成電流-電壓轉(zhuǎn)換電路。第8章單片機(jī)的系統(tǒng)擴(kuò)展電流輸出型DA轉(zhuǎn)換原理總電流分支電流……I01轉(zhuǎn)換電流與“邏輯開關(guān)”為1的各支路電流的總和成正比,即與D0~D7口輸入的二進(jìn)制數(shù)成正比。轉(zhuǎn)換電流第8章單片機(jī)的系統(tǒng)擴(kuò)展轉(zhuǎn)換電壓DAC0832外接放大器反饋電阻即,轉(zhuǎn)換電壓正比于待轉(zhuǎn)換的二進(jìn)制數(shù)和參考電壓第8章單片機(jī)的系統(tǒng)擴(kuò)展DAC的性能指標(biāo):1、分辨率通常將DAC能夠轉(zhuǎn)換的二進(jìn)制的位數(shù)稱為分辨率。位數(shù)越多分辨率也越高,一般為8位、10位、12位、16位等。分辨率為8位時(shí),若參考電壓為10V,則輸出的最小電壓為10V/256≈39.1mV;若參考電壓為5V,則≈19.5.1mVDAC0832的分辨率為8位。第8章單片機(jī)的系統(tǒng)擴(kuò)展2、轉(zhuǎn)換時(shí)間將一個(gè)數(shù)字量轉(zhuǎn)換為穩(wěn)定模擬信號(hào)所需的時(shí)間—轉(zhuǎn)換時(shí)間;DAC的轉(zhuǎn)換時(shí)間一般在幾十納秒(ns)~幾百微秒(μs);DAC0832的轉(zhuǎn)換時(shí)間為1μs。按轉(zhuǎn)換時(shí)間分為:超高速DAC(轉(zhuǎn)換時(shí)間<100ns)、高速DAC(介于100ns~10μs之間)、中速DAC(介于10μs~100μs之間)、低速DAC(>100μs)等。第8章單片機(jī)的系統(tǒng)擴(kuò)展

實(shí)際D/A轉(zhuǎn)換器由于各元件參數(shù)值存在誤差、基準(zhǔn)電壓不夠穩(wěn)定以及運(yùn)算放大器的漂移等,使D/A轉(zhuǎn)換器實(shí)際轉(zhuǎn)換精度受轉(zhuǎn)換誤差的影響,低于理論轉(zhuǎn)換精度。轉(zhuǎn)換誤差指實(shí)際輸出的模擬電壓與理想值之間的最大偏差,常用這個(gè)最大偏差與輸出電壓滿刻度(FullScaleRange簡稱FSR)的百分比表示。

一般是增益誤差、漂移誤差和非線形誤差的綜合指標(biāo)。3、轉(zhuǎn)換誤差第8章單片機(jī)的系統(tǒng)擴(kuò)展DAC0832——電流輸出型D/A轉(zhuǎn)換器20只引腳8位并行輸入方式分辨率19.5mV(VREF=5V)電流建立時(shí)間1μs參考電壓±10V

輸入與TTL電平兼容單一電源供電(+5V~+15V)低功耗,20mW

第8章單片機(jī)的系統(tǒng)擴(kuò)展DAC0832的結(jié)構(gòu)內(nèi)部組成:1個(gè)8位輸入鎖存器1個(gè)8位DAC寄存器1個(gè)8位D/A轉(zhuǎn)換器5個(gè)控制邏輯(2級(jí)控制)工作過程:8位數(shù)據(jù)并行送入鎖存器→在第1級(jí)控制信號(hào)作用下進(jìn)入寄存器→在第2級(jí)控制信號(hào)作用下進(jìn)入轉(zhuǎn)換器→轉(zhuǎn)換結(jié)果由Iout1電流輸出。第8章單片機(jī)的系統(tǒng)擴(kuò)展8位數(shù)據(jù)輸入片選信號(hào)輸入輸入鎖存允許輸入鎖存器寫選通數(shù)據(jù)傳送控制信號(hào)輸入DAC寄存器寫選通信號(hào)輸入線模擬電流輸出線1、2反饋信號(hào)輸入線參考電壓輸入線模擬地?cái)?shù)字地DAC0832引腳介紹第8章單片機(jī)的系統(tǒng)擴(kuò)展理想情況下的轉(zhuǎn)換公式:當(dāng)參考電壓Vref為+5V(或-5V)時(shí),輸出電壓范圍為0~-5V(或0~+5V)

DAC0832輸出的是電流,要轉(zhuǎn)換為電壓,還須經(jīng)過一個(gè)外接的運(yùn)算放大器。DAC0832的電壓輸出第8章單片機(jī)的系統(tǒng)擴(kuò)展

有時(shí)希望輸出雙極性的電壓信號(hào),此時(shí)可將單極性的輸出電壓轉(zhuǎn)換為雙極性的輸出電壓將U1公式代入上式得到與待轉(zhuǎn)換的數(shù)字量D的關(guān)系為:雙極性輸出電壓:-VREF~+VREF第8章單片機(jī)的系統(tǒng)擴(kuò)展雙極性轉(zhuǎn)換電路圖

為保證輸出的線性(和)的電位應(yīng)盡可能接近零電位,否則,運(yùn)算放大器輸入端的微小電位差會(huì)導(dǎo)致很大的輸出線性誤差。第8章單片機(jī)的系統(tǒng)擴(kuò)展DAC0832的3種控制方式直通方式——

兩個(gè)寄存器都處于直通狀態(tài).單緩沖方式——

一個(gè)寄存器處于直通,另一個(gè)處于受控狀態(tài).雙緩沖方式——

兩個(gè)寄存器都分別處于受控狀態(tài).第8章單片機(jī)的系統(tǒng)擴(kuò)展【例8-3】根據(jù)圖8-31所示的DAC0832接口電路,編程實(shí)現(xiàn)由DAC0832輸出一路正弦波的功能。電路分析:1、采用I/O口方式接線(任何一個(gè)并行IO口都行)2、直通控制方式——4個(gè)控制端都接低電平,ILE接高電平第8章單片機(jī)的系統(tǒng)擴(kuò)展第8章單片機(jī)的系統(tǒng)擴(kuò)展仿真運(yùn)行結(jié)果:第8章單片機(jī)的系統(tǒng)擴(kuò)展【例8-4】根據(jù)圖8-33所示的DAC0832接口電路,編程實(shí)現(xiàn)一路三角波發(fā)生器的功能。電路分析:1、第1級(jí)受控,第2級(jí)直通(單緩沖方式)2、總線接口方式:DAC第1級(jí)地址:11111110…(0xfeff)第8章單片機(jī)的系統(tǒng)擴(kuò)展上面的電路圖相當(dāng)于:執(zhí)行寫端口指令時(shí)WR=0;端口地址必須是P2.0(即A0)=0;因此端口地址可用11111110…(0xfeff)

第8章單片機(jī)的系統(tǒng)擴(kuò)展本例參考程序:第8章單片機(jī)的系統(tǒng)擴(kuò)展仿真運(yùn)行效果第8章單片機(jī)的系統(tǒng)擴(kuò)展【例8-5】圖8-35所示的電路是兩片DAC0832雙緩沖接口電路,編程實(shí)現(xiàn)兩路鋸齒波同步發(fā)生的功能。DAC1第1級(jí)地址:11111110…(0xfeff)DAC2第1級(jí)地址:11111101…(0xfdff)DAC1和2第二級(jí)地址:11101111…(0xefff)電路分析:1、雙緩沖方式:DAC1和DAC2的第1級(jí)各設(shè)1個(gè)控制端,兩個(gè)DAC的第2級(jí)共用1個(gè)控制端;2、總線接口方式:第8章單片機(jī)的系統(tǒng)擴(kuò)展語句DAOUT=num的作用只是啟動(dòng)DAC寄存器,傳輸什么數(shù)據(jù)都沒關(guān)系。

第8章單片機(jī)的系統(tǒng)擴(kuò)展本例仿真運(yùn)行效果(多路D/A同步輸出)第8章單片機(jī)的系統(tǒng)擴(kuò)展單片機(jī)原理與應(yīng)用第9章單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)第9章單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)內(nèi)容指南本章主要介紹單片機(jī)應(yīng)用系統(tǒng)的一般組成結(jié)構(gòu)、設(shè)計(jì)步驟以及應(yīng)用系統(tǒng)設(shè)計(jì)應(yīng)考慮的問題,還介紹了目前流行的單片機(jī)在線仿真開發(fā)工具以及如何利用仿真開發(fā)工具對(duì)單片機(jī)應(yīng)用系統(tǒng)進(jìn)行開發(fā)調(diào)試,以及單片機(jī)應(yīng)用系統(tǒng)的抗干擾和可靠性設(shè)計(jì)。學(xué)習(xí)目標(biāo)了解單片機(jī)應(yīng)用系統(tǒng)的一般組成結(jié)構(gòu)。了解單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)步驟和應(yīng)考慮的問題。了解單片機(jī)應(yīng)用系統(tǒng)的在線仿真與調(diào)試工具。了解單片機(jī)應(yīng)用系統(tǒng)的抗干擾與可靠性設(shè)計(jì)措施。單片機(jī)應(yīng)用系統(tǒng)的一般組成結(jié)構(gòu):由單片機(jī)最小系統(tǒng)、前向通道、后向通道、人機(jī)交互通道與相互通道組成。第9章單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)89S51/52最小應(yīng)用系統(tǒng)及資源

51/52單片機(jī)片內(nèi)資源:

4KB/8KBROM;128B/256BRAM;4個(gè)并行I/O或32位I/O口;

5/6源中斷系統(tǒng);

2/3個(gè)16位定時(shí)/計(jì)數(shù)器;

1個(gè)全雙工串行口UART;

第9章單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)是單片機(jī)實(shí)現(xiàn)外部信息的輸入的通道,主要是數(shù)據(jù)采集單元、信號(hào)調(diào)理單元等前向通道

第9章單片

溫馨提示

  • 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)論