![單片機原理及應(yīng)用系統(tǒng)設(shè)計第8章---串行口通信課件_第1頁](http://file4.renrendoc.com/view/4c575ff7ddad09cc337a28d149ee5ee0/4c575ff7ddad09cc337a28d149ee5ee01.gif)
![單片機原理及應(yīng)用系統(tǒng)設(shè)計第8章---串行口通信課件_第2頁](http://file4.renrendoc.com/view/4c575ff7ddad09cc337a28d149ee5ee0/4c575ff7ddad09cc337a28d149ee5ee02.gif)
![單片機原理及應(yīng)用系統(tǒng)設(shè)計第8章---串行口通信課件_第3頁](http://file4.renrendoc.com/view/4c575ff7ddad09cc337a28d149ee5ee0/4c575ff7ddad09cc337a28d149ee5ee03.gif)
![單片機原理及應(yīng)用系統(tǒng)設(shè)計第8章---串行口通信課件_第4頁](http://file4.renrendoc.com/view/4c575ff7ddad09cc337a28d149ee5ee0/4c575ff7ddad09cc337a28d149ee5ee04.gif)
![單片機原理及應(yīng)用系統(tǒng)設(shè)計第8章---串行口通信課件_第5頁](http://file4.renrendoc.com/view/4c575ff7ddad09cc337a28d149ee5ee0/4c575ff7ddad09cc337a28d149ee5ee05.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第8章 串行口通信單片機原理及應(yīng)用系統(tǒng)設(shè)計8.1 串行通信基礎(chǔ) 第八章 串行口通信常用串行口通信方式有兩種:并行通信和串行通信。并行通信是通過多條數(shù)據(jù)線同時傳送數(shù)據(jù)的每一位,如圖8-1所示。其特點是:傳送速度快,但所需數(shù)據(jù)線多,適用于近距離通信。串行通信是通過單條數(shù)據(jù)線一位一位按順序傳送數(shù)據(jù),如圖8-2所示。其特點是:傳送速度慢,但僅需一條數(shù)據(jù)線,故適用于遠(yuǎn)距離通信。串行通信有兩種方式:異步串行通信和同步串行通信。 第八章 串行口通信1串行通信的分類(1)同步通信同步通信傳送信息的位數(shù)幾乎不受限制,一次通信傳輸?shù)臄?shù)據(jù)有幾十到幾千個字節(jié),通信效率高,但在通信中必須始終保持精確的同步時鐘,即收發(fā)雙
2、方要嚴(yán)格的同步(常用的做法是兩個設(shè)備使用同一個時鐘源)。同步通信的字符幀結(jié)構(gòu)由同步字符、數(shù)據(jù)字符和校驗字符三部分組成。其中,同步字符采用統(tǒng)一的標(biāo)準(zhǔn)格式,也可以由用戶約定。用于同一電路板內(nèi)各元件之間數(shù)據(jù)傳送的SPI接口就是典型的同步通信接口。 (2)異步通信異步通信是以字符為單位組成字符幀進行數(shù)據(jù)傳輸?shù)模址g沒有固定的時間間隔要求,而每個字符中的各位則以固定的時間傳送。收發(fā)雙方可以由各自的時鐘來控制數(shù)據(jù)的發(fā)送和接收。這兩個時鐘源彼此獨立,互不同步,但要求傳送速率一致。收發(fā)雙方依靠字符幀格式來協(xié)調(diào)數(shù)據(jù)的發(fā)送和接收。具體來說就是,在一個有效字符正式發(fā)送之前,發(fā)送方先發(fā)送一個起始位,然后發(fā)送有效字
3、符位,在字符結(jié)束時再發(fā)送一個停止位,起始位至停止位構(gòu)成一幀。 停止位至下一個起始位之間是不定長的空閑位,并且規(guī)定起始位為低電平(邏輯值為0),停止位和空閑位都是高電平(邏輯值為1),這樣就保證了起始位開始處一定會有一個下跳沿,由此就可以標(biāo)志一個字符傳輸?shù)钠鹗肌6鶕?jù)起始位和停止位也就很容易得實現(xiàn)了字符的界定和同步。圖8-3 異步通信數(shù)據(jù)格式 起始位:必須是持續(xù)一個比特時間的邏輯0電平,標(biāo)志傳輸一個字符開始,接收方可用起始位使自己的接收時鐘與發(fā)送方數(shù)據(jù)同步。數(shù)據(jù)位:數(shù)據(jù)位緊跟在起始位之后,是通信中的真正有效信息。數(shù)據(jù)位的位數(shù)可以由通信雙方共同約定,一般可以是5位、7位或8位,標(biāo)準(zhǔn)的ASCII碼是
4、0127(7位),擴展的ASCII碼是0255(8位)。傳輸數(shù)據(jù)時先傳送字符的低位,后傳送字符的高位。奇偶校驗位:奇偶校驗位僅占一位,用于進行奇校驗或偶校驗,奇偶檢驗位不是必須有的。如果是奇校驗,需要保證傳輸?shù)臄?shù)據(jù)總共有奇數(shù)個邏輯高位;如果是偶校驗,需要保證傳輸?shù)臄?shù)據(jù)總共有偶數(shù)個邏輯高位。停止位:停止位可以是是1位、1.5位或2位,可以由軟件設(shè)定。它一定是邏輯1電平,標(biāo)志著傳輸一個字符的結(jié)束??臻e位:空閑位是指從一個字符的停止位結(jié)束到下一個字符的起始位開始,表示線路處于空閑狀態(tài),必須由高電平來填充。2.串行通信的傳輸方式 串行通信根據(jù)數(shù)據(jù)傳輸?shù)姆较蚣皶r間關(guān)系可分為:單工、半雙工和全雙工。 單工
5、是指數(shù)據(jù)僅能沿著一個方向傳輸,不能實現(xiàn)反向傳輸,如圖8-4(1)所示。半雙工是指數(shù)據(jù)可以沿兩個方向傳輸,但需要分時進行,如圖8-4(2)所示。全雙工是指數(shù)據(jù)可以同時進行雙向傳輸,如圖8-4(3)所示。 (1) 單工 (2) 半雙工 (3) 全雙工 圖8-4 串行通信的三種傳輸方式3.傳輸速率與傳輸距離 (1)傳輸速率傳輸速率常用波特率描述,定義為每秒鐘傳送二進制數(shù)碼的位數(shù)。單位是:位/秒(bps)。波特率越高,數(shù)據(jù)傳輸速度越快。串口典型的傳輸波特率600bps,1200bps,2400bps,4800bps,9600bps,19200bps,38400bps。 (2)傳輸距離與傳輸速率的關(guān)系傳
6、輸距離與波特率及傳輸線的電氣特性有關(guān)。通常傳輸距離隨波特率的增加而減小。如使用非屏蔽雙絞線(50pF/0.3m)時,波特率9600bps時最大傳輸距離為76m,若再提高波特率,傳輸距離將大大減小。8.2 IAP15W4K58S4單片機的串行口1 IAP15W4K58S4單片機集成有4個可編程的全雙工串行通信接口,具有UART全部功能。每個串行口由2個數(shù)據(jù)緩沖器SBUF、一個移位寄存器、一個串行控制寄存器和一個波特率發(fā)生器組成。每個串行口的數(shù)據(jù)緩沖器SBUF由2個互相獨立的接收、發(fā)送緩沖器構(gòu)成,可同時發(fā)送接收數(shù)據(jù)。發(fā)送緩沖器SBUF只能寫入不能讀出,接收緩沖器SBUF只能讀出不能寫入,因而兩個緩
7、沖器可共用一個地址碼。8.2 IAP15W4K58S4單片機的串行口1 串行口1內(nèi)部簡化結(jié)構(gòu)如圖8-5所示。圖8-5 串行口簡化結(jié)構(gòu)8.2.1 串行口1的控制寄存器1. 串行口1的控制寄存器SCON和PCON串行口1設(shè)有兩個控制寄存器:串行控制寄存器SCON和波特率選擇特殊功能寄存器PCON。串行控制寄存器SCON用于選擇串行通信的工作方式和某些控制功能。其地址為98H,可位尋址,格式如表8-1所示: B7B6B5B4B3B2B1B0SM0/FESM1SM2RENTB8RB8TIRI 表8-1 SCON寄存器8.2.1 串行口1的控制寄存器SM0SM1工作方式功能說明波特率00方式0移位寄存器
8、方式SYSclk/12或SYSclk / 201方式18位UART可變,取決于T1或T2的溢出率10方式29位UART( 2SMOD / 64) x SYSclk系統(tǒng)工作時鐘頻率11方式39位UART可變,取決于T1或T2的溢出率 表8-2 串行口工作方式(位數(shù)注意核對) SM0/FE:當(dāng)PCON寄存器中的SMOD0/PCON.6位為1時,該位用于幀錯誤檢測。當(dāng)檢測到一個無效停止位時,通過UART接收器設(shè)置該位。它必須由軟件清零。 當(dāng)PCON寄存器中的SMOD0/PCON.6位為0時,該位和SM1一起指定串行通信的工作方式,如下表8-2所示。SM0、SM1:串行口工作方式選擇位,可選擇4種工作
9、方式,如表8-2所示。 SM2:允許方式2或方式3多機通信控制位。 REN:允許/禁止串行接收控制位。由軟件置位REN,即REN=1為允許串行接收狀態(tài),可啟動串行接收器RxD,開始接收信息。軟件復(fù)位REN,即REN=0,則禁止接收。TB8:在方式2或方式3,它為要發(fā)送的第9位數(shù)據(jù),按需要由軟件置位或清0。RB8: 在方式2或方式3,是接收到的第9位數(shù)據(jù),作為奇偶校驗位或地址幀/數(shù)據(jù)幀的標(biāo)志位。方式0中不用RB8(置SM2=0)。方式1中也不用RB8(置SM2=0, RB8是接收到的停止位)。8.2.1 串行口1的控制寄存器 TI:發(fā)送中斷請求標(biāo)志位。在方式0,當(dāng)串行發(fā)送數(shù)據(jù)第8位結(jié)束時,由內(nèi)部
10、硬件自動置位, 即TI=1,向主機請求中斷,響應(yīng)中斷后TI必須用軟件清零,即TI=0。在其他方式中, 則在停止位開始發(fā)送時由內(nèi)部硬件置位,即TI=1,響應(yīng)中斷后TI必須用軟件清零。RI: 接收中斷請求標(biāo)志位。在方式0,當(dāng)串行接收到第8位結(jié)束時由內(nèi)部硬件自動置位RI=1, 向主機請求中斷,響應(yīng)中斷后RI必須用軟件清零,即RI=0。在其他方式中,串行接收到停止位的中間時刻由內(nèi)部硬件置位,即RI=1,向CPU發(fā)中斷申請,響應(yīng)中斷后RI必須由軟件清零。8.2.1 串行口1的控制寄存器2. 串行口1的電源控制寄存器PCON 電源控制寄存器PCON中的SMOD/PCON.7用于設(shè)置方式1、方式2、方式3的
11、波特率是否加倍。其地址為87H,不可位尋址,格式如表8-3所示: 表8-3 PCON寄存器B7B6B5B4B3B2B1B0SMODSMOD0LVDFPOFGF1GF0PDIDLSMOD:波特率選擇位。當(dāng)用軟件置位SMOD,即SMOD=1,則使串行通信方式1、2、3的波特率加倍;SMOD=0,則各工作方式的波特率不加倍。復(fù)位時SMOD=0。SMOD0:幀錯誤檢測有效控制位。當(dāng)SMOD0=1,SCON寄存器中的SM0/FE位用于FE(幀錯誤檢測)功能;當(dāng)SMOD0=0,SCON寄存器中的SM0/FE位用于SM0功能,和SM1一起指定串行口的工作方式。復(fù)位時SMOD0=0。PCON中的其他位都與串行
12、口1無關(guān) 8.2.2 串口1的工作方式IAP15W4K58S4系列單片機的串行口1有4種工作方式,可通過軟件編程對SCON中的SM0、SM1的設(shè)置進行選擇。1. 方式0在方式0下,串行口1工作在同步移位寄存器模式,主要用于擴展并行輸入或輸出口。串行口數(shù)據(jù)由RxD/P3.0端輸入,同步移位脈沖(SHIFTCLOCK)由TxD/P3.1輸出,發(fā)送、接收的是8位數(shù)據(jù),低位在先。(1) 發(fā)送:執(zhí)行“寫入SBUF”指令后,啟動發(fā)送過程。(2) 接收:復(fù)位接收中斷請求標(biāo)志RI,即RI0,置位允許接收控制位REN=1時啟動方式0接收過程。 8.2.2 串口1的工作方式2方式1當(dāng)軟件設(shè)置SCON的SM0、SM
13、1為“01”時,串行口1則以模式1工作。此模式為8位UART格式,一幀信息為10位:1位起始位,8位數(shù)據(jù)位(低位在先)和1位停止位。(1)發(fā)送:當(dāng)主機執(zhí)行一條寫“SBUF“的指令就啟動串行通信的發(fā)送,寫“SBUF”信號還把“1”裝入發(fā)送移位寄存器的第9位,并通知TX控制單元開始發(fā)送。(2) 接收:當(dāng)軟件置位接收允許標(biāo)志位REN,即REN=1時,接收器便以選定波特率的16分頻的速率采樣串行接收端口RxD,當(dāng)檢測到RxD引腳輸入電平發(fā)生負(fù)跳變時,則說明起始位有效,將其移入移位寄存器,并開始接收這一幀信息的其余位。8.2.2 串口1的工作方式3. 方式2和方式3串行口1工作在方式2和方式3時,其一幀
14、的信息由11位組成:1位起始位,8位數(shù)據(jù)位(低位在先),1位可編程位(第9位數(shù)據(jù))和1位停止位。(1) 發(fā)送:發(fā)送時數(shù)據(jù)由TXD端輸出,可編程位(第9位數(shù)據(jù))由SCON中的TB8提供,CPU執(zhí)行一條寫入SBUF的指令后,便立即啟動發(fā)送,送完一幀信息時,置TI=1中斷標(biāo)志。(2) 接收:與方式1類似。當(dāng)REN=1時,CPU便以選定波特率的16分頻的速率不斷采樣串行接收端口RxD,當(dāng)檢測到RxD引腳輸入電平發(fā)生負(fù)跳變時,說明起始位有效,將其移入移位寄存器,開始接收這一幀數(shù)據(jù)。8.2.2 串口1的工作方式8.2.3 串行口1的波特率設(shè)置 方式0和方式2的波特率是固定的,計算公式為: 方式0波特率 =
15、 SYSclk/12 方式2波特率=2SMOD/64(SYSclk系統(tǒng)工作時鐘頻率) 其中,SMOD為特殊功能寄存器PCON中的第8位特征位。方式1和方式3的波特率可變,與定時器的溢出率有關(guān)。用T1作為波特率發(fā)生器時,典型的用法是使得T1工作在定時方式2,此時溢出率取決于TH1中的初值:T1溢出率=SYSclk / ( 256 - TH1) 由此得方式和方式3波特率的計算公式為: 波特率=( 2SMOD/32 )(T1溢出率)8.2.3 串行口1的波特率設(shè)置 表8-3 給出各種常用波特率與定時器/計數(shù)器1各參數(shù)之間的關(guān)系波特率/(b/s)SYSclk/MHzSMOD定時器T1C/ 模式定時常數(shù)
16、6250012102FFH1920011.0592102FDH960011.0592002FDH480011.0592002FAH240011.0592002F4H120011.0592002F8H8.3 IAP15W4K58S4單片機的串行口21. 串行口2的控制寄存器S2CON串行口2控制寄存器S2CON用于確定串行口2的工作方式和某些控制功能。其地址為9AH,不可位尋址,格式如表所示:B7B6B5B4B3B2B1B0S2SM0-S2SM2S2RENS2TB8S2RB8S2TIS2RI8.3 IAP15W4K58S4單片機的串行口2S2SM0:指定串行口2的工作方式,如下表所示。S2SM0
17、工作方式功能說明波特率0方式08位UART,波特率可變(定時器T2的溢出率)/41方式19位UART,波特率可變(定時器T2的溢出率)/4當(dāng)AUXR.2/T2x12=1時,定時器T2的溢出率 = SYSclk / ( 65536 - RL_TH2,RL_TL2 )當(dāng)AUXR.2/T2x12=0時,定時器T2的溢出率 = SYSclk / 12 / ( 65536 - RL_TH2,RL_TL2 )式中RL_TH2是T2H的重裝載寄存器, RL_TL2是T2L的重裝載寄存器。8.3 IAP15W4K58S4單片機的串行口2S2SM2: 允許方式1多機通信控制位。S2REN: 允許/禁止串行口2接
18、收控制位。S2TB8: 在方式1 ,S2TB8為要發(fā)送的第9位數(shù)據(jù),按需要由軟件置位或清0。S2RB8: 在方式1 ,S2RB8是接收到的第9位數(shù)據(jù),作為奇偶校驗位或地址幀/數(shù)據(jù)幀的標(biāo)志位。S2TI: 發(fā)送中斷請求標(biāo)志位。S2RI: 接收中斷請求標(biāo)志位。2. 串行口2的數(shù)據(jù)緩沖寄存器S2BUF串行口2數(shù)據(jù)緩沖寄存器(S2BUF)的地址是9BH,實際是2個緩沖器,寫S2BUF的操作完成待發(fā)送數(shù)據(jù)的加載,讀S2BUF的操作可獲得已接收到的數(shù)據(jù)。兩個操作分別對應(yīng)兩個不同的寄存器,1個是只寫寄存器,1個是只讀寄存器。串行通道內(nèi)設(shè)有數(shù)據(jù)寄存器。在所有的串行通信方式中,在寫入S2BUF信號( MOVS2B
19、UF,A)的控制下,把數(shù)據(jù)裝入相同的9位移位寄存器,前面8位為數(shù)據(jù)字節(jié),其最低位為移位寄存器的輸出位。根據(jù)不同的工作方式會自動將“ 1 ” 或S2TB8的值裝入移位寄存器的第9位, 并進行發(fā)送。8.3 IAP15W4K58S4單片機的串行口2串行通道的接收寄存器是一個輸入移位寄存器。在方式0和方式1 時均為9位。當(dāng)一幀接收完畢,移位寄存器中的數(shù)據(jù)字節(jié)裝入串行數(shù)據(jù)緩沖器S2BUF中,其第9位則裝入S2CON寄存器中的S2RB8位。如果由于S2SM2使得已接收到的數(shù)據(jù)無效時, S2RB8和S2BUF中內(nèi)容不變。由于接收通道內(nèi)設(shè)有輸入移位寄存器和S2BUF緩沖器,從而能使一幀接收完將數(shù)據(jù)由移位寄存器
20、裝入S2BUF后,可立即開始接收下一幀信息,主機應(yīng)在該幀接收結(jié)束前從S2BUF緩沖器中將數(shù)據(jù)取走,否則前一幀數(shù)據(jù)將丟失。S2BUF以并行方式送往內(nèi)部數(shù)據(jù)總線。8.3 IAP15W4K58S4單片機的串行口23. 與串行口2中斷相關(guān)的寄存器 串行口2中斷允許位ES2位于中斷允許寄存器IE2中 中斷允許寄存器IE2地址為AFH,不可位尋址,格式如下所示:B7B6B5B4B3B2B1B0-ESPIES2ES2 : 串行口2中斷允許位,ES2=1,允許串行口2中斷,ES2=0,禁止串行口2中斷。中斷允許寄存器IE地址為A8H, 可位尋址,其格式如下所示:B7B6B5B4B3B2B1B0EAELVDEA
21、DCESET1EX1ET0EX08.3 IAP15W4K58S4單片機的串行口2EA : CPU的總中斷允許控制位,EA=1,CPU開放中斷,EA=0,CPU屏蔽所有中斷申請。EA的作用是使中斷形成多級控制,即各中斷源先受EA控制,其次還受各中斷源自己中斷允許控制位控制。串行口2中斷優(yōu)先級控制位PS2位于中斷優(yōu)先級控制寄存器IP中,中斷優(yōu)先級控制寄存器的地址為B5H, 不可位尋址,其格式如下所示:B7B6B5B4B3B2B1B0-PSPIPS2PS2: 串行口2中斷優(yōu)先級控制位。當(dāng)PS2=0時,串行口2中斷為最低優(yōu)先級中斷(優(yōu)先級0)當(dāng)PS2=1時,串行口2中斷為最高優(yōu)先級中斷(優(yōu)先級1)8.
22、3 IAP15W4K58S4單片機的串行口28.4 IAP15W4K58S4單片機的串行口3 (1)STC15W4K32S4系列單片機串行口3對應(yīng)的硬件部分是 TxD3和RxD3。(2)串行口3可以在2組管腳之間進行切換。(3)通過設(shè)置特殊功能寄存器P_SW2中的位S3_S/P_SW2.1, 可以將串行口3從RxD3/P0.0,TxD3/P0.1切換到 RxD3_2/P5.0, TxD3_2/P5.1。8.4.1. 串行口3的控制寄存器S3CON串行口3控制寄存器S3CON用于確定串行口3的工作方式和某些控制功能。其地址為ACH,不可位尋址,格式如表8-9所示:表8-9 S3CON寄存器B7B
23、6B5B4B3B2B1B0S3SM0S3ST3S3SM2S3RENS3TB8S3RB8S3TIS3RIS3SM0工作方式功能說明波特率0方式08位UART ,波特率可變(定時器T2 的溢出率)/4 或或 (定時器T3 的溢出率)/4 1方式19位UART ,波特率可變S3SM0:指定串行口3的工作方式,如下表8-10所示。表8-10 串行口2工作方式選擇:8.4.1. 串行口3的控制寄存器S3CONS3CON的所有位可通過整機復(fù)位信號復(fù)位為全 “0 ”。S3CON 的字節(jié)地址為ACH ,不可位尋址。串行通信的中斷請求:當(dāng)一幀發(fā)送完成,內(nèi)部硬件自動置位S3TI,即S3TI=1,請求中斷處理;當(dāng)接
24、收完一幀信息時,內(nèi)部硬件自動置位S3RI,即S3RI=1,請求中斷處理。8.4.1. 串行口3的控制寄存器S3CON由于S3TI和S3RI 以 “或邏輯”關(guān)系向主機請求中斷,所以主機響應(yīng)中斷時事先關(guān)系向主機請求中斷。所以主機響應(yīng)中斷時事先并不知道是S3TI還是S3RI請求的中斷,必須在中斷服務(wù)程序中查詢S3TI和S3RI進行判別,然后分別處理。 因此,兩個中斷請求標(biāo)志位均不能由硬件自動置位,必須通過軟件清0,否則將出現(xiàn)一次請求多次響應(yīng)的錯誤。8.4.2 串行口3的數(shù)據(jù)緩沖寄存器S3BUF (1)串行口3數(shù)據(jù)緩沖寄存器(S3BUF)的地址是ADH,實際是2個緩沖器,寫S3BUF的操作完成待發(fā)送數(shù)
25、據(jù)的加載,讀S3BUF的操作可獲得已接收到的數(shù)據(jù)。兩個操作分別對應(yīng)兩個不同的寄存器,1個是只寫寄存器,1個是只讀寄存器。(2)串行通道內(nèi)設(shè)有數(shù)據(jù)寄存器。在所有的串行通信方式中,在寫入S3BUF信號(MOV S3BUF,A)的控制下,把數(shù)據(jù)裝入相同的9位移位寄存器,前面8位為數(shù)據(jù)字節(jié),其最低位為移位寄存器的輸出位。根據(jù)不同的工作方式會自動將 “1”或S3TB8的值裝入移位寄存器的第9 位,并進行發(fā)送。8.4.2 串行口3的數(shù)據(jù)緩沖寄存器S3BUF 8.4.2 串行口3的數(shù)據(jù)緩沖寄存器S3BUF (3)串行通道的接收寄存器是一個輸入移位寄存器。在方式0和方式1時均為9位。當(dāng)一幀接收完畢,移位寄存器
26、中的數(shù)據(jù)字節(jié)裝入串行數(shù)據(jù)緩沖器S3BUF 中,其第9位則裝入S3CON寄存器中的S3RB8位。如果由于S3SM2使得已接收到的數(shù)據(jù)無效時,S3RB8和S3BUF中內(nèi)容不變。8.4.2 串行口3的數(shù)據(jù)緩沖寄存器S3BUF (4)由于接收通道內(nèi)設(shè)有輸入移位寄存器和S3BUF緩沖器,從而能使一幀接收完將數(shù)據(jù)由移位寄存器裝入S3BUF后,可立即開始接收下一幀信息,主機應(yīng)在該幀接收結(jié)束前從S3BUF緩沖器中將數(shù)據(jù)取走,否則前一幀數(shù)據(jù)將丟失。S3BUF 以并行方式送往內(nèi)部數(shù)據(jù)總線。 8.4.3 與串行口3中斷相關(guān)的寄存器IE2串行口3中斷允許位ES3位于中斷允許寄存器IE2中,中斷允許寄存器IE2地址為A
27、FH,不可位尋址,其格式如表8-11所示:表8-11 中斷允許寄存器IE2B7B6B5B4B3B2B1B0-ET4ET3ES4ES3ET2ESPIES2中斷允許寄存器IE地址為A8H, 可位尋址,其格式如表8-12所示:表8-12 中斷允許寄存器IEB7B6B5B4B3B2B1B0EAELVDEADCESET1EX1ET0EX08.5 IAP15W4K58S4單片機的串行口4STC15W4K32S4系列單片機串行口4對應(yīng)的硬件部分是TxD4和RxD4。串行口4可以在2組管腳之間進行切換。通過設(shè)置特殊功能寄存器P_SW2的S4_S/P_SW2.2,可以將串行口4從RxD4/P0.2,TxD4/P
28、0.3切換到RxD4_2/P5.2,TxD4_2/P5.3。8.5.1 串行口4的控制寄存器S4CON 串行口4控制寄存器S4CON用于確定串行口4的工作方式和某些控制功能。其地址為84H,不可位尋址,格式如表8-13所示:表8-13 S4CON寄存器B7 B6 B5 B4 B3 B2 B1 B0 S4SM0 S4ST4 S4SM2 S4REN S4TB8 S4RB8 S4TI S4RI S4SM0:指定串行口4的工作方式,如下表8-14所示。表8-14 串行口4工作方式選擇S4SM0 工作方式功能說明波特率0 方式08位UART,波特率可變(定時器T4的溢出率)/4 1 方式19位UART,
29、波特率可變(定時器T4的溢出率)/4 8.5.2 串行口4的數(shù)據(jù)緩沖寄存器S4BUFSTC15W4K32S4系列單片機的串行口4數(shù)據(jù)緩沖寄存器(S4BUF)的地址是85H,寫S4BUF的操作完成待發(fā)送數(shù)據(jù)的加載,讀S4BUF的操作可獲得已接收到的數(shù)據(jù)。兩個操作分別對應(yīng)1個只寫寄存器,1個只讀寄存器。串行通道內(nèi)設(shè)有數(shù)據(jù)寄存器。在所有的串行通信方式中,在寫入S4BUF信號的控制下,把數(shù)據(jù)裝入相同的9位移位寄存器,前面8位為數(shù)據(jù)字節(jié),其最低位為移位寄存器的輸出位。根據(jù)不同的工作方式會自動將“1”或S4TB8的值裝入移位寄存器的第9 位,并進行發(fā)送。串行通道的接收寄存器是一個輸入移位寄存器。在方式0和
30、方式1時均為9位。當(dāng)一幀接收完畢,移位寄存器中的數(shù)據(jù)字節(jié)裝入串行數(shù)據(jù)緩沖器S4BUF中,其第9位則裝入S4CON寄存器中的S4RB8位。如果由于S4SM2使得已接收到的數(shù)據(jù)無效時,S4RB8和S4BUF中內(nèi)容不變。由于接收通道內(nèi)設(shè)有輸入移位寄存器和S4BUF緩沖器,從而能使一幀接收完將數(shù)據(jù)由移位寄存器裝入S4BUF后,可立即開始接收下一幀信息,主機應(yīng)在該幀接收結(jié)束前從S4BUF緩沖器中將數(shù)據(jù)取走,否則前一幀數(shù)據(jù)將丟失。S4BUF以并行方式送往內(nèi)部數(shù)據(jù)總線。8.5.3 與串行口4中斷相關(guān)的寄存器IE2 第八章 串行口通信串行口4中斷允許位ES4位于中斷允許寄存器IE2中,中斷允許寄存器IE2的其
31、地址為AFH,不可位尋址,格式如表8-15所示:表8-15 中斷允許寄存器IE2B7 B6 B5 B4 B3 B2 B1 B0 - ET4 ET3 ES4 ES3 ET2 ESPI ES2 中斷允許寄存器IE的地址為A8H,可位尋址,格式如表8-16所示:表8-16 中斷允許寄存器IEB7 B6 B5 B4 B3 B2 B1 B0 EA ELVD EADC ES ET1 EX1 ET0 EX0 8.6 串口通信應(yīng)用實例IAP15W4K58S4單片機的串行通信根據(jù)其通信對象可分為單片機與單片機之間的通信和單片機與計算機之間的通信兩種。8.6 串口通信應(yīng)用實例8.6 串口通信應(yīng)用實例第八章 串行口
32、通信8.6 串口通信應(yīng)用實例第八章 串行口通信8.6.1 單片機與單片機之間的通信(1)雙機通信對于雙機異步通信的程序通常采用兩種方法:查詢方式和中斷方式。但在很多應(yīng)用中,雙機通信的接收方采用中斷方式來接收數(shù)據(jù),以提高CPU的工作效率;發(fā)送方仍然采用查詢方式發(fā)送。第八章 串行口通信思考:單片機的晶振會有 11.0592MHz ?答:因為美國工業(yè)電子聯(lián)盟(Electronic Industries Alliance,EIA) RS-232-C標(biāo)準(zhǔn)中規(guī)定了數(shù)據(jù)傳輸速率為: 50、75、100、150、300、600、1200、2400、4800、9600、19200、38400、76800等。可以被準(zhǔn)確分頻成各種通信常用的波特率:11.0592MHz = 144*76800 = 288*38400 = 576*19200 = 1152*9600 = 2304*4800【例8.1】單片機A與單片機B通信,A機通過按鍵控制
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 噪聲與振動控制中的振動源隔振與減振技術(shù)考核試卷
- 2025-2030年可調(diào)節(jié)角度兒童滑梯企業(yè)制定與實施新質(zhì)生產(chǎn)力戰(zhàn)略研究報告
- 二零二五年度水文地質(zhì)勘探與水文災(zāi)害風(fēng)險評估合同
- 2025-2030年地域特色調(diào)料包品牌行業(yè)跨境出海戰(zhàn)略研究報告
- 2025-2030年城市公交網(wǎng)絡(luò)行業(yè)跨境出海戰(zhàn)略研究報告
- 2025洗煤廠廢棄物資源化利用承包合同協(xié)議3篇
- 寧波二零二五年度勞動合同模板:適用于特殊工種及崗位
- 南京市2025年度租賃合同范本:工業(yè)用地租賃規(guī)范
- 護掌在武術(shù)運動中的耐磨性與抓握力考核試卷
- 2025年度保健食品專業(yè)運輸保險合同樣本
- 一級建造師繼續(xù)教育最全題庫及答案(新)
- 2022年高考湖南卷生物試題(含答案解析)
- GB/T 20909-2007鋼門窗
- GB/T 17854-1999埋弧焊用不銹鋼焊絲和焊劑
- GB/T 15593-2020輸血(液)器具用聚氯乙烯塑料
- 直線加速器專項施工方案
- 聯(lián)苯二氯芐生產(chǎn)工藝及產(chǎn)排污分析
- 儲能設(shè)備項目采購供應(yīng)質(zhì)量管理方案
- 2022年全國卷高考語文答題卡格式
- 復(fù)旦大學(xué)簡介 (課堂PPT)
- CKD馬達(dá)使用說明
評論
0/150
提交評論