版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單片機(jī)應(yīng)用技術(shù)項(xiàng)目式教程—基于Proteus和KeilCSINGLE-CHIP
COMPUTER
APPLICATION
TECHNOLOGY
串行通信技術(shù)串行通信基礎(chǔ)知識(shí)01STC15W4K32S4單片機(jī)串行口控制寄存器02STC15W4K32S4單片機(jī)串行口的工作方式03STC15W4K32S4單片機(jī)串行口通信技術(shù)應(yīng)用04知識(shí)要點(diǎn)
串行通信技術(shù)STC15W4K32S4單片機(jī)串行口控制寄存器的設(shè)置01串口通信波特率的選擇與設(shè)計(jì)02掌握簡(jiǎn)單流水燈的設(shè)計(jì)和編程03掌握開(kāi)關(guān)量指示電路的設(shè)計(jì)04學(xué)習(xí)要求掌握主從多級(jí)通信系統(tǒng)的設(shè)計(jì)05教學(xué)內(nèi)容走近科學(xué)北斗衛(wèi)星導(dǎo)航系統(tǒng)由空間段、地面段和用戶段三部分組成,可在全球范圍內(nèi)全天候、全天時(shí)為各類用戶提供高精度、高可靠定位、導(dǎo)航、授時(shí)服務(wù),并且具備短報(bào)文通信能力,已經(jīng)初步具備區(qū)域?qū)Ш?、定位和授時(shí)能力,定位精度為分米、厘米級(jí)別,測(cè)速精度0.2米/秒,授時(shí)精度10納秒。2020年7月31日上午,北斗三號(hào)全球衛(wèi)星導(dǎo)航系統(tǒng)正式開(kāi)通。中國(guó)北斗衛(wèi)星導(dǎo)航系統(tǒng)是中國(guó)自行研制的全球衛(wèi)星導(dǎo)航系統(tǒng),也是繼GPS、GLONASS之后的第三個(gè)成熟的衛(wèi)星導(dǎo)航系統(tǒng)。北斗衛(wèi)星導(dǎo)航系統(tǒng)(BDS)和美國(guó)GPS、俄羅斯GLONASS、歐盟GALILEO,是聯(lián)合國(guó)衛(wèi)星導(dǎo)航委員會(huì)已認(rèn)定的供應(yīng)商。北斗衛(wèi)星走近科學(xué)
第一步,建設(shè)北斗一號(hào)系統(tǒng)。1994年,啟動(dòng)北斗一號(hào)系統(tǒng)工程建設(shè);2000年,發(fā)射2顆地球靜止軌道衛(wèi)星,建成系統(tǒng)并投入使用,采用有源定位體制,為中國(guó)用戶提供定位、授時(shí)、廣域差分和短報(bào)文通信服務(wù);2003年發(fā)射第3顆地球靜止軌道衛(wèi)星,進(jìn)一步增強(qiáng)系統(tǒng)性能。
第二步,建設(shè)北斗二號(hào)系統(tǒng)。2004年,啟動(dòng)北斗二號(hào)系統(tǒng)工程建設(shè);2012年年底,完成14顆衛(wèi)星(5顆地球靜止軌道衛(wèi)星、5顆傾斜地球同步軌道衛(wèi)星和4顆中圓地球軌道衛(wèi)星)發(fā)射組網(wǎng)。北斗二號(hào)系統(tǒng)在兼容北斗一號(hào)系統(tǒng)技術(shù)體制基礎(chǔ)上,增加無(wú)源定位體制,為亞太地區(qū)用戶提供定位、測(cè)速、授時(shí)和短報(bào)文通信服務(wù)。
第三步,建設(shè)北斗三號(hào)系統(tǒng)。2009年,啟動(dòng)北斗三號(hào)系統(tǒng)建設(shè);2018年年底,完成19顆衛(wèi)星發(fā)射組網(wǎng),完成基本系統(tǒng)建設(shè),向全球提供服務(wù);計(jì)劃2020年年底前,完成30顆衛(wèi)星發(fā)射組網(wǎng),全面建成北斗三號(hào)系統(tǒng)。北斗三號(hào)系統(tǒng)繼承北斗有源服務(wù)和無(wú)源服務(wù)兩種技術(shù)體制,能夠?yàn)槿蛴脩籼峁┗緦?dǎo)航(定位、測(cè)速、授時(shí))、全球短報(bào)文通信、國(guó)際搜救服務(wù),中國(guó)及周邊地區(qū)用戶還可享有區(qū)域短報(bào)文通信、星基增強(qiáng)、精密單點(diǎn)定位等服務(wù)。發(fā)展歷程走近科學(xué)
2012-2021年,我國(guó)衛(wèi)星導(dǎo)航與位置服務(wù)產(chǎn)業(yè)總產(chǎn)值從810億元上升至4690億元,年均復(fù)合增長(zhǎng)率達(dá)到了21.55%。北斗系統(tǒng)廣泛應(yīng)用于重點(diǎn)運(yùn)輸過(guò)程監(jiān)控、公路基礎(chǔ)設(shè)施安全監(jiān)控、港口高精度實(shí)時(shí)定位調(diào)度監(jiān)控等領(lǐng)域。
2021年國(guó)內(nèi)衛(wèi)星導(dǎo)航定位終端產(chǎn)品總銷量超5.1億臺(tái),其中具有衛(wèi)星導(dǎo)航定位功能的智能手機(jī)出貨量達(dá)到3.43億臺(tái),汽車導(dǎo)航后裝市場(chǎng)終端銷量達(dá)到477萬(wàn)臺(tái),汽車導(dǎo)航前裝市場(chǎng)終端銷量達(dá)到681萬(wàn)臺(tái),各類監(jiān)控終端銷量達(dá)到317萬(wàn)臺(tái)。在交通領(lǐng)域,目前全國(guó)超過(guò)780萬(wàn)道路營(yíng)運(yùn)車輛、4萬(wàn)多輛郵政快遞干線車輛、47000多艘船舶應(yīng)用北斗系統(tǒng);長(zhǎng)江干線北斗增強(qiáng)系統(tǒng)基準(zhǔn)站和水上助導(dǎo)航設(shè)施數(shù)量超過(guò)13106座;近500架通用航空器應(yīng)用北斗系統(tǒng),建成全球最大的營(yíng)運(yùn)車輛動(dòng)態(tài)監(jiān)管系統(tǒng),有效提升了監(jiān)控管理效率和道路運(yùn)輸安全水平。行業(yè)及區(qū)域應(yīng)用5.1串行口的結(jié)構(gòu)并行通信通常是將數(shù)據(jù)字節(jié)的各位用多條數(shù)據(jù)線同時(shí)進(jìn)行傳送。并行通信的特點(diǎn):控制簡(jiǎn)單、傳輸速度快;由于傳輸線較多,長(zhǎng)距離傳送時(shí)成本高且接收方的各位同時(shí)接收存在困難。1.并行通信圖1并行通信方式5.1串行口的結(jié)構(gòu)串行通信是將數(shù)據(jù)字節(jié)分成一位一位的形式在一條傳輸線上逐個(gè)地傳送。串行通信的特點(diǎn):傳輸線少,長(zhǎng)距離傳送時(shí)成本低,且可以利用電話網(wǎng)等現(xiàn)成的設(shè)備,但數(shù)據(jù)的傳送控制比并行通信復(fù)雜。2.串行通信圖2
串行通信方式5.1串行口的結(jié)構(gòu)1)串行通信的分類5.1串行口的結(jié)構(gòu)同步通信是要建立發(fā)送方時(shí)鐘對(duì)接收方時(shí)鐘的直接控制,使雙方達(dá)到完全同步。①同步時(shí)鐘②同步字符SYN(1)同步通信圖3同步通信方式5.1串行口的結(jié)構(gòu)異步通信是指通信的發(fā)送與接收設(shè)備使用各自的時(shí)鐘控制數(shù)據(jù)的發(fā)送和接收過(guò)程。為使雙方的收發(fā)協(xié)調(diào),要求發(fā)送和接收設(shè)備的時(shí)鐘盡可能一致。異步通信方式的一幀信息由四部分組成:起始位、數(shù)據(jù)位、校驗(yàn)位和停止位。異步通信的特點(diǎn):不要求收發(fā)雙方時(shí)鐘的嚴(yán)格一致,實(shí)現(xiàn)容易,設(shè)備開(kāi)銷較小,但每個(gè)字符要附加2~3位用于起止位,各幀之間還有間隔,因此傳輸效率不高。(2)異步通信圖4
異步通信方式圖5異步通信數(shù)據(jù)幀格式5.1串行口的結(jié)構(gòu)波特率,即數(shù)據(jù)傳送率,表示每秒傳送二進(jìn)制數(shù)碼的位數(shù),它的單位是波特(位/秒)。在串行通信中,波特率是一個(gè)很重要的指標(biāo),它反映了串行通信的速率,波特率越高,數(shù)據(jù)傳輸速率越快,假如在異步傳送方式中,數(shù)據(jù)的傳送率是240字符/秒,每個(gè)字符由一個(gè)起始位、八個(gè)數(shù)據(jù)位和一個(gè)停止位組成,則傳送波特率為:10×240=2400位/秒=2400波特一般異步通信的波特率在50~9600波特之間;一般同步通信可達(dá)56K波特或更高。(3)波特率5.1串行口的結(jié)構(gòu)2)串行通信的制式在單工制式下,通信線的一端接發(fā)送器,一端接接收器,只允許一個(gè)方向傳輸數(shù)據(jù),不能實(shí)現(xiàn)反向傳輸。單工(simpleduplex)在半雙工制式下,系統(tǒng)的每個(gè)通信設(shè)備都由一個(gè)發(fā)送器和一個(gè)接收器組成,使用一條(或一對(duì))傳輸線。半雙工(halfduplex)全雙工制式通信系統(tǒng)的每端都有發(fā)送器和接收器,使用兩條(或兩對(duì))傳輸線,允許兩個(gè)方向同時(shí)進(jìn)行數(shù)據(jù)傳輸。全雙工(fullduplex)5.1串行口的結(jié)構(gòu)3)串行口的結(jié)構(gòu)圖6UART串行口的結(jié)構(gòu)5.1.1串行口控制寄存器1.串行口1表1
串行口1相關(guān)的特殊功能寄存器地址B7B6B5B4B3B2BlB0復(fù)位值
98HSM0/FESM1SM2RENTB8RB8TIRI00000000SCON99H串行口1數(shù)據(jù)緩沖器xxxxxxxxSBUF87HSMODSMOD0LVDFPOFGF1GF0PDIDL00110000PCON8EHT0x12T1x12UART_M0x6T2RT2_C/T2x12EXTRAMS1ST200000000AUXR8AHT1的低8位00000000TL18BHT1的高8位00000000TH1D7HT2的低8位00000000T2LD6T2的高8位00000000T2H89HGATEC/MlM0GATEC/M1M000000000TMOD88HTF1TR1TF0TR0IE1IT1IE0IT000000000TCONA8HEAELVDEADCESET1EXIET0EX000000000IEB8HPPCAPLVDPADCPSPT1PX1PT0PX000000000IPA2HS1_S1S1_S0CCP_S1CCP_S0SPI_S1SPI_S00DPS00000000P_SW1(AUXR1)與串行口1有關(guān)的特殊功能寄存器包括:串行口1的控制寄存器、與波特率設(shè)置有關(guān)的定時(shí)器/計(jì)數(shù)器(T1/T2)相關(guān)寄存器以及與中斷控制相關(guān)的寄存器。5.1.1串行口控制寄存器1)串行口1控制寄存器SCON表1
串行口1相關(guān)的特殊功能寄存器串行口1控制寄存器SCON用于設(shè)定串行口1的工作方式、允許接收控制以及設(shè)置狀態(tài)標(biāo)志。字節(jié)地址為98H,可進(jìn)行位尋址。單片機(jī)復(fù)位時(shí),所有位全為“0”。如表1。地址B7B6B5B4B3B2B1B0復(fù)位值SCON98HSM0/FESM1SM2RENTB8RB8TIRI000000005.1.1串行口控制寄存器1)串行口1控制寄存器SCONSM0SM1工作方式功 能波特率00方式08位同步移位寄存器fsys/12或fsys/201方式110位UART可變,取決于T1或T2的溢出率10方式211位UARTfsys/64或fsys/3211方式311位UART可變,取決于T1或T2的溢出率表2串行口1方式選擇位SM0/FE、SM1:PCON寄存器中的SMOD0位為“1”時(shí),SM0/FE用于幀錯(cuò)誤檢測(cè)。當(dāng)檢測(cè)到一個(gè)無(wú)效停止位時(shí),通過(guò)UART接收器設(shè)置該位,它由軟件清零。PCON寄存器中的SMOD0為“0”時(shí),SM0/FE和SM1一起指定串行通信的工作方式。如表2。地址B7B6B5B4B3B2B1B0復(fù)位值SCON98HSM0/FESM1SM2RENTB8RB8TIRI000000005.1.1串行口控制寄存器1)串行口1控制寄存器SCONSM2:多機(jī)通信控制位,用于方式2和方式3。在方式2和方式3處于接收狀態(tài)時(shí),若SM2=1,且接收到的第9位數(shù)據(jù)RB8為“0”時(shí),不激活RI;若SM2=1,且RB8=1,置位RI標(biāo)志。在方式2、方式3處于接收狀態(tài)時(shí),若SM2=0,不論接收到的第9位RB8為“0”還是為“1”,RI都以正常方式被激活。REN:允許串行接收控制位。由軟件置位或清零。REN=1時(shí),啟動(dòng)接收;REN=0時(shí),禁止接收。TB8:在方式2和方式3中,串行發(fā)送數(shù)據(jù)的第9位,由軟件置位或復(fù)位,可作為奇偶校驗(yàn)位。在多機(jī)通信中,可作為區(qū)別地址幀或數(shù)據(jù)幀的標(biāo)識(shí)位。一般約定,作為地址幀時(shí),TB8為“1”;作為數(shù)據(jù)幀時(shí),TB8為“0”。RB8:在方式2和方式3中,是串行接收到的第9位數(shù)據(jù),作為奇偶校驗(yàn)位或地址幀、數(shù)據(jù)幀的標(biāo)識(shí)位。地址B7B6B5B4B3B2B1B0復(fù)位值SCON98HSM0/FESM1SM2RENTB8RB8TIRI000000005.1.1串行口控制寄存器1)串行口1控制寄存器SCONTI:發(fā)送中斷標(biāo)志位。在方式0中,發(fā)送完8位數(shù)據(jù)后,由硬件置位;在其他方式中,在發(fā)送停止位之初由硬件置位。TI是發(fā)送完一幀數(shù)據(jù)的標(biāo)志,既可以用查詢的方法,也可以用中斷的方法來(lái)響應(yīng)該標(biāo)志;然后,在相應(yīng)的査詢服務(wù)程序或中斷服務(wù)程序中,由軟件清除。RI:接收中斷標(biāo)志位。在方式0中,接收完8位數(shù)據(jù)后,由硬件置位;在其他方式中,在接收停止位的中間由硬件置位。RI是接收完一幀數(shù)據(jù)的標(biāo)志,同TI一樣,既可以用查詢的方法,也可以用中斷的方法來(lái)響應(yīng)該標(biāo)志;然后,在相應(yīng)的查詢服務(wù)程序或中斷服務(wù)程序中,由軟件清除。地址B7B6B5B4B3B2B1B0復(fù)位值SCON98HSM0/FESM1SM2RENTB8RB8TIRI000000005.1.1串行口控制寄存器2)輔助寄存器AUXR表3輔助寄存器AUXR的格式UART_M0x6:串行口1方式0通信速率設(shè)置位。UART_M0x6=0,串行口方式0的通信速率與傳統(tǒng)8051單片機(jī)一致,波特率為系統(tǒng)時(shí)鐘頻率的12分頻,即fSYS/12;UART_M0x6=1,串行口1方式0的通信速率是傳統(tǒng)8051單片機(jī)通信速率的6倍,波特率為系統(tǒng)時(shí)鐘頻率的2分頻,即fSYS/2。S1ST2:當(dāng)串行口1工作在方式1、方式3時(shí),S1ST2為串行口1波特率發(fā)生器選擇控制位。S1ST2=0時(shí),選擇定時(shí)器T1為波特率發(fā)生器;S1ST2=1,選擇定時(shí)器T2為波特率發(fā)生器。T1x12、T2R、T2_C/
、T2x12:與定時(shí)器T1、T2有關(guān)的控制位。地址B7B6B5B4B3B2BlBO復(fù)位值A(chǔ)UXR8EHT0xl2T1xl2UART_.M0x6T2RT2_C/T2xl2EXTRAMS1ST2000000005.1.1串行口控制寄存器2.串行口2表4串行口2相關(guān)的特殊功能寄存器串行口2默認(rèn)對(duì)應(yīng)的發(fā)送、接收引腳是TxD2/P1.1、RxD2/P1.0,通過(guò)P_SW2設(shè)置S2_S控制位,串行口2的TxD2、RxD2硬件引腳可切換為P4.7、P4.6。與單片機(jī)串行口2有關(guān)的特殊功能寄存器有:?jiǎn)纹瑱C(jī)串行口2控制寄存器、與波特率設(shè)置有關(guān)的定時(shí)器/計(jì)數(shù)器T2的相關(guān)寄存器、與中斷控制相關(guān)的寄存器。地址B7B6B5B4B3B2BlBO復(fù)位值
9AHS2SM0—S2SM2S2RENS2TB8S2RB8S2TIS2RI0x000000S2CON9BH串行口2數(shù)據(jù)緩沖器xxxxxxxxS2BUFD7HT2的低8位00000000T2LD6HT2的高8位00000000T2H8EHT0x12Tlx12UART_M0x6T2RT2_C/`TT2x12EXTRAMS1ST200000000AUXRAFH一ET4ET3ES4ES3ET2ESPIES2x0000000IE2B5H一一一一PPWMFDPPWMPSPIPS2xxxx0000IP2BAH一一———S4_SS3_SS2_Sxxxxx000P_SW25.1.1串行口控制寄存器1)串行口2控制寄存器S2CON串行控制寄存器S2CON用于設(shè)定串行口2的工作方式、串行接收控制以及設(shè)置狀態(tài)標(biāo)志。字節(jié)地址為9AH,其格式為:S2SM0:用于指定串行口2的工作方式,如表5.4所示,串行口2的波特率為T(mén)2定時(shí)器溢出率的四分之一。S2SM0工作方式功能波特率0方式08位UARTT2溢出率/41方式19位UART表5S2SM0說(shuō)明地址B7B6B5B4B3B2BlB0復(fù)位值S2CON9AHS2SM0—S2SM2S2RENS2TB8S2RB8S2TTS2RI0x0000005.1.1串行口控制寄存器1)串行口2控制寄存器S2CONS2SM2:串行口2多機(jī)通信控制位,用于方式1。在方式1處于接收時(shí),若S2SM2=1,且接收到的第9位數(shù)據(jù)S2RB8為“0”,不激活S2RI;若S2SM2=1,且S2RB8=1,置位S2RI標(biāo)志。在方式1處于接收方式,若S2SM2=0,不論接收到的第9位S2RB8為“0”還是為“1”,S2RI都以正常方式被激活。S2REN:允許串行口2接收控制位。由軟件置位或清零。S2REN=1時(shí),啟動(dòng)接收;S2REN=0時(shí),禁止接收。S2TB8:串行口2發(fā)送數(shù)據(jù)的第9位。在方式1中,由軟件置位或復(fù)位,可做奇偶校驗(yàn)位。在多機(jī)通信中,可作為區(qū)別地址幀或數(shù)據(jù)幀的標(biāo)識(shí)位。一般約定,作為地址幀時(shí),S2TB8為“1”;作為數(shù)據(jù)幀時(shí),S2TB8為“0”。地址B7B6B5B4B3B2BlB0復(fù)位值S2CON9AHS2SM0—S2SM2S2RENS2TB8S2RB8S2TTS2RI0x0000005.1.1串行口控制寄存器1)串行口2控制寄存器S2CONS2RB8:在方式1中,是串行口2接收到的第9位數(shù)據(jù),作為奇偶校驗(yàn)位或地址幀、數(shù)據(jù)幀的標(biāo)識(shí)位。S2TI:串行口2發(fā)送中斷標(biāo)志位。在發(fā)送停止位之初,由硬件置位。S2TI是發(fā)送完一幀數(shù)據(jù)的標(biāo)志,既可以用查詢的方法,也可以用中斷的方法來(lái)響應(yīng)該標(biāo)志。然后,在相應(yīng)的查詢服務(wù)程序或中斷服務(wù)程序中,由軟件清除。S2RI:串行口2接收中斷標(biāo)志位。在接收停止位的中間,由硬件置位。S2RI是接收完一幀數(shù)據(jù)的標(biāo)志,同S2TI一樣,既可以用查詢的方法,也可以用中斷的方法來(lái)響應(yīng)該標(biāo)志。然后,在相應(yīng)的査詢服務(wù)程序或中斷服務(wù)程序中,由軟件清除。地址B7B6B5B4B3B2BlB0復(fù)位值S2CON9AHS2SM0—S2SM2S2RENS2TB8S2RB8S2TTS2RI0x0000005.1.1串行口控制寄存器2)串行口2數(shù)據(jù)緩沖器S2BUFS2BUF是串行口2的數(shù)據(jù)緩沖器,同SBUF一樣,一個(gè)地址對(duì)應(yīng)兩個(gè)物理上的緩沖器。當(dāng)對(duì)S2BUF寫(xiě)操作時(shí),對(duì)應(yīng)的是串行口2的發(fā)送緩沖器,同時(shí)寫(xiě)緩沖器操作串行口2的啟動(dòng)發(fā)送命令;當(dāng)對(duì)S2BUF讀操作時(shí),對(duì)應(yīng)的是串行口2的接收緩沖器,用于讀取串行口2串行接收進(jìn)來(lái)的數(shù)據(jù)。3)串行口2的中斷控制IE2、IP2IE2的ES2位是串行口2的中斷允許位,“1”表示允許,“0”表示禁止。IP2的PS2位是串行口2的中斷優(yōu)先級(jí)的設(shè)置位,“1”表示高級(jí),“0”表示低級(jí)。串行口2的中斷向量地址是0043H,其中斷號(hào)是8。5.1.1串行口控制寄存器3.串行口3表6串行口3相關(guān)的特殊功能寄存器串行口3默認(rèn)對(duì)應(yīng)的發(fā)送、接收引腳是TxD3/P0.l、RxD3/P0.0,通過(guò)設(shè)置P_SW2的S3_S控制位,串行口3的TxD3、RxD3硬件引腳可切換為P5.1、P5.0。與單片機(jī)串行口3有關(guān)的特殊功能寄存器有:?jiǎn)纹瑱C(jī)串行口3控制寄存器,與波特率設(shè)置有關(guān)的定時(shí)器/計(jì)數(shù)器T2、T3的相關(guān)寄存器,與中斷控制相關(guān)的寄存器地址B7B6B5B4B3B2BlBO復(fù)位值
ACHS3SM0S3ST3S3SM2S3RENS3TB8S3RB8S3TIS3RI00000000S3CONADH串行口3數(shù)據(jù)緩沖器ADH串行口3數(shù)據(jù)緩沖器xxxxxxxxS3BUFD7HT2的低8位D7HT2的低8位00000000T2LD6HT2的高8位D6HT2的高8位00000000T2H8EHT0x12T1x12UARTM0x6T2RT2_C/`TT2x12EXTRAMS1ST200000000AUXRD4HT3的低8位00000000T3LD5HT3的高8位00000000T3HD1HT4RT4_C/`TT4xl2T4CLKOT3RT3_C/`TT3x12T3CLKO00000000T4T3MAFH一ET4ET3ES4ES3ET2ESPIES2x0000000IE2BAH一一一一一S4_SS3_SS2_Sxxxxx000P_SW25.1.1串行口控制寄存器1)串行口3控制寄存器S3CON串行口3控制寄存器S3CON用于設(shè)定串行口3的工作方式、串行接收控制以及設(shè)置狀態(tài)標(biāo)志。字節(jié)地址為ACH,單片機(jī)復(fù)位時(shí),所有位全為0,其格式為:地址B7B6B5B4B3B2BlB0復(fù)位值S3CONACHS3SM0S3ST3S3SM2S3RENS3TB8S3RB8S3TIS3RI00000000S3SM0:用于指定串行口3的工作方式,如下表所示。S3SM0工作方式功能波特率0方式08位UARTT2溢出率/4,或T3溢出率/41方式19位UART表7S3SM0說(shuō)明5.1.1串行口控制寄存器1)串行口3控制寄存器S3CON地址B7B6B5B4B3B2BlB0復(fù)位值S3CONACHS3SM0S3ST3S3SM2S3RENS3TB8S3RB8S3TIS3RI00000000S3ST3:串行口3選擇波特率發(fā)生器控制位。0:選擇定時(shí)器T2為波特率發(fā)生器,其波特率為T(mén)2溢出率的1/4。1:選擇定時(shí)器T3為波特率發(fā)生器,其波特率為T(mén)3溢出率的1/4。S3SM2:串行口3多機(jī)通信控制位,用于方式l。在方式1處于接收狀態(tài)時(shí),若S3SM2=1,且接收到的第9位數(shù)據(jù)S3RB8為“0”時(shí),不激活S3RI;若S3SM2=1,且S3RB8=1,置位S3RI標(biāo)志。在方式1處于接收方式時(shí),若S3SM2=0,不論接收到第9位數(shù)據(jù)S3RB8為“0”還是為“1”,S3RI都以正常方式被激活。5.1.1串行口控制寄存器1)串行口3控制寄存器S3CON地址B7B6B5B4B3B2BlB0復(fù)位值S3CONACHS3SM0S3ST3S3SM2S3RENS3TB8S3RB8S3TIS3RI00000000S3REN:允許串行口3串行接收控制位。由軟件置位或清零。S3REN=1時(shí),啟動(dòng)接收;S3REN=0時(shí),禁止接收。S3TB8:串行口3發(fā)送數(shù)據(jù)的第9位。在方式1中,由軟件置位或復(fù)位,可做奇偶校驗(yàn)位;在多機(jī)通信中,可作為區(qū)別地址幀或數(shù)據(jù)幀的標(biāo)識(shí)位,一般約定地址幀時(shí)S3TB8為1,數(shù)據(jù)幀時(shí)S3TB8為0。S3RB8:在方式1中,是串行口3接收到的第9位數(shù)據(jù),作為奇偶校驗(yàn)位或地址幀、數(shù)據(jù)幀的標(biāo)識(shí)位。5.1.1串行口控制寄存器1)串行口3控制寄存器S3CON地址B7B6B5B4B3B2BlB0復(fù)位值S3CONACHS3SM0S3ST3S3SM2S3RENS3TB8S3RB8S3TIS3RI00000000S3TI:串行口3發(fā)送中斷標(biāo)志位。在發(fā)送停止位之初由硬件置位。S3TI是發(fā)送完一幀數(shù)據(jù)的標(biāo)志,既可以用査詢的方法,也可以用中斷的方法來(lái)響應(yīng)該標(biāo)志。然后,在相應(yīng)的査詢服務(wù)程序或中斷服務(wù)程序中,由軟件清除。S3RI:串行口3接收中斷標(biāo)志位。在接收停止位的中間由硬件置位。S3RI是接收完一幀數(shù)據(jù)的標(biāo)志,同S3TI一樣,既可以用查詢的方法,也可以用中斷的方法來(lái)響應(yīng)該標(biāo)志,然后,在相應(yīng)的查詢服務(wù)程序或中斷服務(wù)程序中,由軟件清除。5.1.1串行口控制寄存器2)串行口3數(shù)據(jù)緩沖器S3BUFS3BUF是串行口3的數(shù)據(jù)緩沖器,同SBUF一樣,一個(gè)地址對(duì)應(yīng)兩個(gè)物理上的緩沖器。當(dāng)對(duì)S3BUF寫(xiě)操作時(shí),對(duì)應(yīng)的是串行口3的發(fā)送緩沖器,同時(shí)寫(xiě)緩沖器操作是串行口3的啟動(dòng)發(fā)送命令;當(dāng)對(duì)S3BUF讀操作時(shí),對(duì)應(yīng)的是串行口3的接收緩沖器,用于讀取串行口3串行接收的數(shù)據(jù)。3)串行口3的中斷控制IE2IE2的ES3位是串行口3的中斷允許位,“1”表示允許,“0”表示禁止。串行口3的中斷向量地址是008BH,其中斷號(hào)是17;串行口3的中斷優(yōu)先級(jí)固定為低級(jí)。5.1.1串行口控制寄存器4.串行口4表8串行口4相關(guān)的特殊功能寄存器串行口4默認(rèn)對(duì)應(yīng)的發(fā)送、接收引腳是TxD4/P0.3、RxD4/P0.2,通過(guò)設(shè)置P_SW2的S4_S控制位,串行口4的TxD4、RxD4硬件引腳可切換為P5.3、P5.2。與單片機(jī)串行口4有關(guān)的特殊功能寄存器有:?jiǎn)纹瑱C(jī)串行口4控制寄存器,與波特率設(shè)置有關(guān)的定時(shí)器/計(jì)數(shù)器T2、T4的相關(guān)寄存器,以及與中斷控制相關(guān)的寄存器地址B7B6B5B4B3B2BlBO復(fù)位值
84HS4SM0S4ST4S4SM2S4RENS4TB8S4RB8S4TIS4RI00000000S4CON85H串行口3數(shù)據(jù)緩沖器ADH串行口3數(shù)據(jù)緩沖器xxxxxxxxS4BUFD7HT2的低8位D7HT2的低8位00000000T2LD6HT2的高8位D6HT2的高8位00000000T2H8EHT0x12T1x12UARTM0x6T2RT2_C/`TT2x12EXTRAMS1ST200000000AUXRD2HT4的低8位00000000T4LD3HT4的高8位00000000T4HD1HT4RT4_C/`TT4xl2T4CLKOT3RT3_C/`TT3x12T3CLKO00000000T4T3MAFH一ET4ET3ES4ES3ET2ESPIES2x0000000IE2BAH一一一一一S4_SS3_SS2_Sxxxxx000P_SW25.1.1串行口控制寄存器1)串行口4控制寄存器S4CON串行口4控制寄存器S4CON用于設(shè)定串行口4的工作方式、串行接收控制以及設(shè)置狀態(tài)標(biāo)志。字節(jié)地址為84H。單片機(jī)復(fù)位時(shí),所有位全為“0”,其格式如下所示。S4SM0:用于指定串行口4的工作方式,如下表所示。表9S4SM0說(shuō)明地址B7B6B5B4B3B2BlB0復(fù)位值S4CON84HS4SM0S4ST3S4SM2S4RENS4TB8S4RB8S4TIS4RI00000000S4SM0工作方式功能波特率0方式08位UARTT2溢出率/4,或T4溢出率/41方式19位UART5.1.1串行口控制寄存器1)串行口4控制寄存器S4CONS4ST3:串行口4選擇波特率發(fā)生器控制位。0:選擇定時(shí)器T2為波特率發(fā)生器,其波特率為T(mén)2溢出率的1/4。1:選擇定時(shí)器T4為波特率發(fā)生器,其波特率為T(mén)4溢出率的1/4。S4SM2:串行口4多機(jī)通信控制位,用于方式l。在方式1處于接收時(shí),若S4SM2=1,且接收到的第9位數(shù)據(jù)S4RB8為“0”,不激活S4RI;若S4SM2=1,且S4RB8=1,置位S4RI標(biāo)志。在方式1處于接收狀態(tài)下,若S4SM2=0,不論接收到第9位數(shù)據(jù)S4RB8為“0”還是為“1”,S4RI都以正常方式被激活。地址B7B6B5B4B3B2BlB0復(fù)位值S4CON84HS4SM0S4ST3S4SM2S4RENS4TB8S4RB8S4TIS4RI000000005.1.1串行口控制寄存器1)串行口4控制寄存器S4CONS4REN:允許串行口4接收控制位。由軟件置位或清零。S4REN=1時(shí),啟動(dòng)接收;S4REN=0時(shí),禁止接收。S4TB8:串行口4發(fā)送數(shù)據(jù)的第9位。在方式1中,由軟件置位或復(fù)位,可做奇偶校驗(yàn)位;在多機(jī)通信中,可作為區(qū)別地址幀或數(shù)據(jù)幀的標(biāo)識(shí)位。一般約定,作為地址幀時(shí),S4TB8為“1”;作為數(shù)據(jù)幀時(shí),S4TB8為“0”。S4RB8:在方式1中,是串行口4接收到的第9位數(shù)據(jù),作為奇偶校驗(yàn)位或地址幀、數(shù)據(jù)幀的標(biāo)識(shí)位。地址B7B6B5B4B3B2BlB0復(fù)位值S4CON84HS4SM0S4ST3S4SM2S4RENS4TB8S4RB8S4TIS4RI000000005.1.1串行口控制寄存器1)串行口4控制寄存器S4CONS4TI:串行口4發(fā)送中斷標(biāo)志位。在發(fā)送停止位之初由硬件置位。S4TI是發(fā)送完一幀數(shù)據(jù)的標(biāo)志,既可以用查詢的方法,也可以用中斷的方法來(lái)響應(yīng)該標(biāo)志。然后,在相應(yīng)的查詢服務(wù)程序或中斷服務(wù)程序中,由軟件清除。S4RI:串行口4接收中斷標(biāo)志位。在接收停止位的中間由硬件置位。S4RI是接收完一幀數(shù)據(jù)的標(biāo)志,同S4TI一樣,既可以用查詢的方法,也可以用中斷的方法來(lái)響應(yīng)該標(biāo)志。然后,在相應(yīng)的查詢服務(wù)程序或中斷服務(wù)程序中,由軟件清除。地址B7B6B5B4B3B2BlB0復(fù)位值S4CON84HS4SM0S4ST3S4SM2S4RENS4TB8S4RB8S4TIS4RI000000005.1.1串行口控制寄存器2)串行口4數(shù)據(jù)緩沖器S4BUFS4BUF是串行口4的數(shù)據(jù)緩沖器,同SBUF一樣,一個(gè)地址對(duì)應(yīng)兩個(gè)物理上的緩沖器。當(dāng)對(duì)S4BUF寫(xiě)操作時(shí),對(duì)應(yīng)的是串行口4的發(fā)送緩沖器,同時(shí)寫(xiě)緩沖器操作是串行口4的啟動(dòng)發(fā)送命令;當(dāng)對(duì)S4BUF讀操作時(shí),對(duì)應(yīng)的是串行口4的接收緩沖器,用于讀取串行口4串行接收的數(shù)據(jù)。3)串行口4的中斷控制IE2IE2的ES4位是串行口4的中斷允許位,“1”表示允許,“0”表示禁止。串行口4的中斷向量地址是0093H,其中斷號(hào)是18;串行口4的中斷優(yōu)先級(jí)固定為低級(jí)。5.1.2特殊功能寄存器PCONPCON主要是為單片機(jī)的電源控制而設(shè)置的專用寄存器,不可以位尋址,字節(jié)地址為87H,復(fù)位值為30H。其中,SMOD、SMOD0與串口控制有關(guān),其格式與說(shuō)明如下所示。SMOD:SMOD為波特率倍增系數(shù)選擇位。在方式1、方式2和方式3時(shí),串行通信的波特率與SMOD有關(guān)。當(dāng)SMOD=0時(shí),通信速度為基本波特率;當(dāng)SMOD=1時(shí),通信速度為基本波特率的2倍。SMOD0:幀錯(cuò)誤檢測(cè)有效控制位。SMOD0=1,SCON寄存器中的SM0/FE用于幀錯(cuò)誤檢測(cè);SMOD0=0,SCON寄存器中的SM0/FE用于SM0功能,與SM1一起指定串行口1的工作方式。地址B7B6B5B4B3B2BlB0復(fù)位值PCON87HSMODSMOD0LVDFPOFGF1GF0PDIDL001100005.2串行口工作方式1.串行口1的工作方式STC15W4K32S4單片機(jī)串行通信有4種工作方式。當(dāng)SMOD0=0時(shí),通過(guò)設(shè)置SCON中的SM0、SM1位來(lái)選擇。1)方式0在方式0下,串行口用作同步移位寄存器,其波特率為fSYS/12(UART_M0x6為“0”時(shí))或fSYS/2(UART_M0x6為“1”時(shí))。串行數(shù)據(jù)從RxD(P3.0)端輸入或輸出,同步移位脈沖由TxD(P3.1)送出。這種方式常用于擴(kuò)展I/O口。5.2串行口工作方式1.串行口1的工作方式STC15W4K32S4單片機(jī)串行通信有4種工作方式。當(dāng)SMOD0=0時(shí),通過(guò)設(shè)置SCON中的SM0、SM1位來(lái)選擇。2)方式1串行口工作在方式1下時(shí),串行口為波特率可調(diào)的10位通用異步UART,—幀信息包括1位起始位(0)、8位數(shù)據(jù)位和1位停止位(1)。5.2串行口工作方式1.串行口1的工作方式STC15W4K32S4單片機(jī)串行通信有4種工作方式。當(dāng)SMOD0=0時(shí),通過(guò)設(shè)置SCON中的SM0、SM1位來(lái)選擇。3)方式2串行口工作在方式2,串行口為11位UART。一幀數(shù)據(jù)包括1位起始位(0)、8位數(shù)據(jù)位、1位可編程位(TB8)和1位停止位(1)。5.2串行口工作方式1.串行口1的工作方式STC15W4K32S4單片機(jī)串行通信有4種工作方式。當(dāng)SMOD0=0時(shí),通過(guò)設(shè)置SCON中的SM0、SM1位來(lái)選擇。4)方式3串行口工作在方式3,串行口同方式2—樣為11位UART。方式2與方式3的區(qū)別在于波特率的設(shè)置方法不同,方式2的波特率為fSYS/64(SMOD為“0”)或fSYS/32(SMOD為“1”);方式3數(shù)據(jù)傳輸?shù)牟ㄌ芈释绞?一樣,取決于定時(shí)器T1的溢出率或T2的溢出率。對(duì)于以方式3發(fā)送的過(guò)程與接收過(guò)程,除發(fā)送、接收速率不同以外,其他過(guò)程和方式2完全一致。因方式2和方式3在接收過(guò)程中,只有當(dāng)SM2=0或SM2=1且接收到的RB8為“1”時(shí),才會(huì)置位RI,向CPU申請(qǐng)中斷請(qǐng)求接收數(shù)據(jù);否則,不會(huì)置位RI標(biāo)志,接收數(shù)據(jù)丟失,因此,方式2和方式3常用于多機(jī)通信中。5.2串行口工作方式2.串行口的波特率
5.2串行口工作方式2.串行口的波特率
5.3串行口通信技術(shù)應(yīng)用流水燈開(kāi)關(guān)量指示主從多級(jí)通信系統(tǒng)5.3.1應(yīng)用串行口控制流水燈例1:利用串行口工作在方式0,外擴(kuò)74LS164點(diǎn)亮8位LED,完成流水燈功能。圖7流水燈電路連接圖5.3.1應(yīng)用串行口控制流水燈例1:利用串行口工作在方式0,外擴(kuò)74LS164點(diǎn)亮8位LED,完成流水燈功能。程序:#include<system.h>#include<intrins.h>sbitLED=P1^0;unsignedchari=0;voiddelay_ms(unsignedintz){unsignedintx,y,mid;
mid=(unsignedint)((float)fosc*z/Fre_Div);
for(x=mid;x>0;x--)
for(y=123;y>0;y--);}
main(){unsignedchari=0,j=0x7f;
CLK_DIV&=~0x07;
SCON=0x00;
P1M1=0x00;
P1M0=0x00;
while(1)
{SBUF=j;while(!TI);TI=0;LED=~LED;j=_cror_(j,1);delay_ms(500);}}5.3.1應(yīng)用串行口控制流水燈例1:利用串行口工作在方式0,外擴(kuò)74LS164點(diǎn)亮8位LED,完成流水燈功能。延時(shí)程序:#include"system.h"voiddelay_ms(unsignedintz){unsignedintx,y,mid;mid=(unsignedint)((float)fosc*z/Fre_Div);for(x=mid;x>0;x--) for(y=123;y>0;y--);} 5.3.2開(kāi)關(guān)量指示電路的設(shè)計(jì)例2:有U1和U2兩個(gè)STC15W4K32S4單片機(jī),U2單片機(jī)讀入其P1口的開(kāi)關(guān)狀態(tài)后通過(guò)串行口發(fā)送到U1單片機(jī),U1單片機(jī)將接收到的數(shù)據(jù)送其P1口,通過(guò)發(fā)光二極管顯示。圖8開(kāi)關(guān)量指示電路連接圖5.3.2開(kāi)關(guān)量指示電路的設(shè)計(jì)分析:1.方式1發(fā)送串行口以方式1發(fā)送時(shí),數(shù)據(jù)由TXD引腳輸出。在發(fā)送中斷標(biāo)志TI=0時(shí),任何一次“寫(xiě)入SBUF”的操作,都可啟動(dòng)一次發(fā)送,串行口自動(dòng)在數(shù)據(jù)前插入一個(gè)起始位(0)向TXD引腳輸出,然后在移位脈沖作用下,數(shù)據(jù)依次由TXD引腳發(fā)出,在數(shù)據(jù)全部發(fā)送完畢后,置TXD=1(作為停止位)、置TI=1(用以通知CPU數(shù)據(jù)已發(fā)送完畢)。2.方式1接收串行口以方式1接收時(shí),數(shù)據(jù)從RXD引腳輸入。在允許接收的條件下(REN=1),當(dāng)檢測(cè)到RXD端出現(xiàn)由“1”到“0”的跳變時(shí),即啟動(dòng)一次接收。當(dāng)8位數(shù)據(jù)接收完,并滿足下列條件:1)RI=02)SM2=0或接收到的停止位為1則將接收到的8位數(shù)據(jù)裝入SBUF、停止位裝入RB8,并置位RI。如果不滿足上述兩個(gè)條件,就會(huì)丟失已接收到的一幀信息。5.3.2開(kāi)關(guān)量指示電路的設(shè)計(jì)分析:3.串行口中斷初始化設(shè)置在串行口工作在方式1時(shí),需要進(jìn)行一些設(shè)置,主要是設(shè)置產(chǎn)生波特率的定時(shí)器T1、串行口控制和中斷控制。具體操作的步驟如下:1)確定T1的工作方式(設(shè)置TMOD寄存器);2)計(jì)算T1的初值,送入TH1、TL1;3)啟動(dòng)T1計(jì)時(shí)(置TR1=1);4)設(shè)置串行口為工作方式1(設(shè)置SCON寄存器);5)串行口工作采用中斷方式時(shí),要進(jìn)行中斷設(shè)置(IE、IP寄存器)。5.3.2開(kāi)關(guān)量指示電路的設(shè)計(jì)U1單片機(jī)通信接收程序:#include<system.h>#include<intrins.h>sbitLED=P1^0;unsignedchari=0;main(){unsignedchari=0;CLK_DIV&=~0x07;SCON=0x50; AUXR|=0x01; AUXR&=0xFB; T2L=0xE8; T2H=0xFF; AUXR|=0x10; ES=1;EA=1;while(1){}}voidser(void)interrupt4{if(RI){
RI=0; P1=SBUF;} if(TI) TI=0;} 5.3.2開(kāi)關(guān)量指示電路的設(shè)計(jì)U2單片機(jī)通信發(fā)送程序:#include<system.h>#include<intrins.h>sbitLED=P1^0;unsignedchari=0;main(){unsignedchari=0; CLK_DIV&=~0x07; SCON=0x50; AUXR|=0x01; AUXR&=0xFB;
T2L=0xE8; T2H=0xFF; AUXR|=0x10; while(1) {SBUF=P1;
while(!TI);
TI=0;
delay_ms(50);
}}延時(shí)程序:#include"system.h"voiddelay_ms(unsignedintz){unsignedintx,y,mid;mid=(unsignedint)((float)fosc*z/Fre_Div);for(x=mid;x>0;x--) for(y=123;y>0;y--);} 5.3.3主從多級(jí)通信系統(tǒng)的構(gòu)建例3:主從式多機(jī)通信系統(tǒng)有一個(gè)主機(jī)和兩個(gè)從機(jī),主機(jī)根據(jù)控制開(kāi)關(guān)的狀態(tài),向要訪問(wèn)的從機(jī)發(fā)送地址,地址相符的從機(jī)和主機(jī)進(jìn)行通信,然后主機(jī)根據(jù)開(kāi)關(guān)狀態(tài)向從機(jī)發(fā)送數(shù)據(jù),從機(jī)將接收到的數(shù)據(jù)通過(guò)點(diǎn)亮發(fā)光二極管的方式顯示。圖9主從式多機(jī)通信系統(tǒng)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專業(yè)茶青采購(gòu)協(xié)議范例一
- 個(gè)人承包車輛運(yùn)輸協(xié)議合同模板
- 2025年度新能源儲(chǔ)能技術(shù)研發(fā)與應(yīng)用合作協(xié)議4篇
- 專業(yè)無(wú)人機(jī)航拍拍攝合同文檔2024版版B版
- 2025年度智能廠區(qū)綜合環(huán)境管理服務(wù)合同4篇
- 個(gè)人保險(xiǎn)理賠服務(wù)合同(2024版)3篇
- 二零二五年度廠房出租合同附設(shè)備故障應(yīng)急響應(yīng)及維修服務(wù)協(xié)議3篇
- 2025年新型智能化廠房土地購(gòu)置與使用權(quán)合同4篇
- 2025年新型廠房設(shè)備購(gòu)置及安裝服務(wù)協(xié)議4篇
- 2025年度二零二五智能家居攤位租賃及智慧城市建設(shè)合同4篇
- 使用錯(cuò)誤評(píng)估報(bào)告(可用性工程)模版
- 公司章程(二個(gè)股東模板)
- GB/T 19889.7-2005聲學(xué)建筑和建筑構(gòu)件隔聲測(cè)量第7部分:樓板撞擊聲隔聲的現(xiàn)場(chǎng)測(cè)量
- 世界奧林匹克數(shù)學(xué)競(jìng)賽6年級(jí)試題
- 藥用植物學(xué)-課件
- 文化差異與跨文化交際課件(完整版)
- 國(guó)貨彩瞳美妝化消費(fèi)趨勢(shì)洞察報(bào)告
- 云南省就業(yè)創(chuàng)業(yè)失業(yè)登記申請(qǐng)表
- UL_標(biāo)準(zhǔn)(1026)家用電器中文版本
- 國(guó)網(wǎng)三個(gè)項(xiàng)目部標(biāo)準(zhǔn)化手冊(cè)(課堂PPT)
- 快速了解陌生行業(yè)的方法論及示例PPT課件
評(píng)論
0/150
提交評(píng)論