




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、串行口通信原理及操作流程 51單片機(jī)的串行口是一個(gè)可編程全雙工的通信接口,具有UART(通用異步收發(fā)器)的全部功能,能同時(shí)進(jìn)行數(shù)據(jù)的發(fā)送和接收,也可以作為同步移位寄存器使用。 51單片機(jī)的串行口主要由兩個(gè)獨(dú)立的串行數(shù)據(jù)緩沖寄存器SBUF(發(fā)送緩沖寄存器和接收緩沖寄存器)和發(fā)送控制器、接收控制器、輸入移位寄存器及若干控制門電路組成。 51 單片機(jī)可以通過特殊功能寄存器SBUF隊(duì)串行接收或串行發(fā)送寄存器進(jìn)行訪問,兩個(gè)寄存器共用一個(gè)地址99H,但在物理上是兩個(gè)獨(dú)立的寄存器,由指令操作決定訪問哪一個(gè)寄存器。執(zhí)行寫指令時(shí)訪問串行發(fā)送寄存器;執(zhí)行讀指令時(shí),訪問串行接收寄存器。(接收器具有雙緩沖結(jié)構(gòu),即在接
2、收寄存器中讀出前一個(gè)已接收到的字節(jié)之前,便能接收第二個(gè)字節(jié),如果第二個(gè)字節(jié)已接收完畢,而第一個(gè)字節(jié)還沒有讀出,則將丟失其中一個(gè)字節(jié),編程時(shí)應(yīng)引起注意。對(duì)于發(fā)送器,因?yàn)槭怯?cpu控制的,所以不需要考慮。 與串行口緊密相關(guān)的一個(gè)特殊功能寄存器是串行口控制寄存器SCON,它用來設(shè)定串行口的工作方式、接收/發(fā)送控制以及狀態(tài)標(biāo)志等。 串行口控制寄存器SCON 串行口控制寄存器SCON在特殊功能寄存器中,字節(jié)地址為98H,可位尋址,單片機(jī)復(fù)位時(shí)SCON全部被清零。 位序號(hào) D7 D6 D5 D4 D3 D2 D1 D0 位符號(hào) SM0 SM1 SM2 REN TB8 RB8 T1 R1 SM0,SM1為
3、工作方式選擇位。串行口有四種工作方式,它們由SM0、SM1設(shè)定。其中方式一最為常用。 SM2為多機(jī)通信控制位。 REN為允許串行接收位。 TB8為方式2、3中方式數(shù)據(jù)的第九位。 RB8為方式2、2中接收數(shù)據(jù)的第九位。 TI為發(fā)送中斷標(biāo)志位,在方式0時(shí),當(dāng)串行發(fā)送第8位數(shù)據(jù)結(jié)束時(shí),或在其他方式,串行發(fā)送停止位的開始時(shí),由內(nèi)部硬件使TI置一,向CPU發(fā)出中斷申請(qǐng)。在中斷服務(wù)程序中,必須使用軟件將其清零,取消此中斷申請(qǐng)。 RI為接收中斷標(biāo)志位。在方式0時(shí),當(dāng)串行接收第8位數(shù)據(jù)結(jié)束時(shí),或在其他方式,串行接收停止位的中間時(shí),由內(nèi)部硬件使RI置一,向CPU發(fā)出中斷申請(qǐng)。在中斷服務(wù)程序中,必須使用軟件將其清
4、零,取消此中斷申請(qǐng)。 串口工作方式1簡介(0、2、3以后再說),串行口方式傳送1幀數(shù)據(jù)共10位,其中一位起始位(0),八位數(shù)據(jù)位(最低位在前,高位在后),一位停止位(1)。幀與幀之間可以有空閑,也可以無空閑。TXD(P3.1)位數(shù)據(jù)發(fā)送引腳,RXD(P3.0)為數(shù)據(jù)接收引腳。其傳輸波特率是可變的,對(duì)于51單片機(jī),波特率由定時(shí)器1的溢出率決定。 串行口方式1編程與實(shí)現(xiàn) 當(dāng)數(shù)據(jù)被寫入SBUF寄存器后,單片機(jī)自動(dòng)開始從起始位發(fā)送數(shù)據(jù),發(fā)送到停止位的開始時(shí),由內(nèi)部硬件使TI置1,向CPU申請(qǐng)中斷,接下來可在中斷服務(wù)程序中做相應(yīng)的處理,也可選擇不進(jìn)入中斷。 用軟件置REN為1時(shí),接收器以所選擇波特率的1
5、6倍速率采樣RXD引腳電平,檢測(cè)到RXD引腳輸入電平發(fā)生負(fù)跳變時(shí),則說明起始位有效,將其移入輸入移位寄存器,并開始接收這一幀信息的其余位。接收過程中,數(shù)據(jù)從移位寄存器右邊移入,起始位移至輸入移位寄存器最左邊時(shí),控制電路進(jìn)行最后一次移位。當(dāng) RI=0,且SM2=0(或接收到的停止位為1時(shí)),將接收到的9位數(shù)據(jù)的前8位數(shù)據(jù)裝入接收SBUF,第9位(停止位)進(jìn)入RB8,并置RI=1,向 CPU請(qǐng)求中斷。 在具體操作串口之前需要對(duì)單片機(jī)的一些與串口有關(guān)的特殊功能寄存器進(jìn)行初始化設(shè)置,主要是設(shè)置產(chǎn)生波特率的定時(shí)器1、串行口控制和中斷控制。具體步驟如下: 1. 確定T1的工作方式(編程TMOD寄存器) 2
6、. 計(jì)算T1的初值,載入TH1、TL1 3. 啟動(dòng)T1(編程TCON中的TR1位) 4. 確定串行口工作方式(編程SCON寄存器) 5. 串行口工作在中斷方式時(shí),要進(jìn)行中斷設(shè)置(編程IE,IP) /* 實(shí)現(xiàn)功能: RS232通信(串口通信) */ #include; #define uint unsigned int #define uchar unsigned char uchar flag; uchar date; void init() TMOD=0X20;/定時(shí)器1工作方式2 TH1=0xfd;/9600 TH0=0xfd;/9600 TR1=1;/啟動(dòng)定時(shí)器1 REN=1;/允許串口接收 SM0=0;/設(shè)定串口工作方式1 SM1=1;/設(shè)定串口工作方式1 EA=1; /開總中斷 ES=1;/開串口中斷 void main() init(); while(1) if(flag=1) ES=0; /關(guān)閉串口中斷 P1=date; SBUF=date; while(!TI);/等待串行發(fā)送停止位的開始,TI=1,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年體育休閑廣場(chǎng)周邊配套設(shè)施完善策略研究報(bào)告
- 2025年商業(yè)地產(chǎn)數(shù)字化運(yùn)營模式創(chuàng)新客戶體驗(yàn)優(yōu)化路徑研究報(bào)告
- 藥品耗材倉庫管理制度
- 藥品銷售環(huán)節(jié)管理制度
- 藥店加盟進(jìn)貨管理制度
- 藥店煎藥日常管理制度
- 蓮花味精績效管理制度
- 論述負(fù)面清單管理制度
- 設(shè)備制造采購管理制度
- 設(shè)備寄存?zhèn)}庫管理制度
- GB/T 45700-2025物業(yè)管理術(shù)語
- 2024-2025人教版一年級(jí)下冊(cè)數(shù)學(xué)期末考試卷附答案 (三套)
- 【MOOC】土木工程制圖-同濟(jì)大學(xué) 中國大學(xué)慕課MOOC答案
- 英語四級(jí)閱讀練習(xí)及答案
- 水系沉積物地球化學(xué)測(cè)量1
- 成敗歸因理論P(yáng)PT課件
- 湘魯版六年級(jí)下冊(cè)期末英語試卷
- 汽車標(biāo)準(zhǔn)件手冊(cè)
- (完整版)綠色施工管理體系與管理制度
- 報(bào)銷明細(xì)匯總表
- 塊狀物品推送機(jī)機(jī)械原理課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論