




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、51串口通訊2013.05.03 1 異步通信方式 01停止位起始位低位高位7位數據位奇偶校驗停止位第N個字符第N-1個字符 2 同步通信方式 串行通信的波特率 波特率(band rate)是異步通信中每秒鐘傳送的二進制數碼的位數(比特數),單位是位/秒。 作用:1、反映串行通信的速率; 2、反映對傳輸通道的要求:波特率越高,要求的傳輸通道的頻帶寬度就越寬。 異步通信:波特率為每秒傳送的字符數和每個字符位數的乘積。MCS-51MCS-51串行口的結構串行口的結構 MCS-51有一個可編程的有一個可編程的全雙工串行通全雙工串行通信接口信接口,可作為通用異步收發器,可作為通用異步收發器(UART)
2、,也可作為同步移位寄存器。它的幀格式有也可作為同步移位寄存器。它的幀格式有8位、位、10位和位和11位,可以設置為固定波特率位,可以設置為固定波特率和可變波特率,給使用者帶來很大的靈活和可變波特率,給使用者帶來很大的靈活性。性。串行口內部結構示意簡圖有兩個物理上獨立的接收、發送緩沖器有兩個物理上獨立的接收、發送緩沖器SBUF,它們占用,它們占用同一地址同一地址99H ;接收器是雙緩沖結構;接收器是雙緩沖結構 ;發送緩沖器,因;發送緩沖器,因為發送時為發送時CPU是主動的,不會產生重疊錯誤。是主動的,不會產生重疊錯誤。 80C5180C51串行口的控制寄存器串行口的控制寄存器 SCON 是一個特
3、殊功能寄存器,用以設定串行口的工是一個特殊功能寄存器,用以設定串行口的工作方式、接收作方式、接收/發送控制以及設置狀態標志:發送控制以及設置狀態標志: SM0和和SM1為工作方式選擇位,可選擇四種工作方式:為工作方式選擇位,可選擇四種工作方式: SM2,多機通信控制位,多機通信控制位,主要用于方式,主要用于方式2和方式和方式3。當當接收機的接收機的SM2=1時可以利用收到的時可以利用收到的RB8來控制是否來控制是否激活激活RI(RB80時不激活時不激活RI,收到的信息丟棄;,收到的信息丟棄;RB81時收到的數據進入時收到的數據進入SBUF,并激活,并激活RI,進而在,進而在中斷服務中將數據從中
4、斷服務中將數據從SBUF讀走)。讀走)。當當SM2=0時,不時,不論收到的論收到的RB8為為0和和1,均可以使收到的數據進入,均可以使收到的數據進入SBUF,并激活,并激活RI(即此時(即此時RB8不具有控制不具有控制RI激活的激活的功能)。通過控制功能)。通過控制SM2,可以實現多機通信。,可以實現多機通信。在方式在方式0時,時,SM2必須是必須是0。在方式。在方式1時,若時,若SM2=1,則只有接收到有效停止位時,則只有接收到有效停止位時,RI才置才置1。REN,允許串行接收位,允許串行接收位。由軟件置。由軟件置REN=1,則啟動,則啟動串行口接收數據;若軟件置串行口接收數據;若軟件置RE
5、N=0,則禁止接收。,則禁止接收。TB8,在方式,在方式2或方式或方式3中,是發送數據的中,是發送數據的第九位第九位,可以用軟件規定其作用。可以用作,可以用軟件規定其作用??梢杂米鲾祿钠媾夹r炍?,或在多機通信中,作為數據的奇偶校驗位,或在多機通信中,作為地址幀地址幀/數據幀的標志位。數據幀的標志位。在方式在方式0和方式和方式1中,該位未用。中,該位未用。RB8,在方式,在方式2或方式或方式3中,是接收到數據中,是接收到數據的第九位的第九位,作為奇偶校驗位或地址幀,作為奇偶校驗位或地址幀/數據幀數據幀的標志位。在方式的標志位。在方式1時,若時,若SM2=0,則,則RB8是接收到的停止位。是接收
6、到的停止位。TI,發送中斷標志位,發送中斷標志位。在方式。在方式0時,當串行時,當串行發送第發送第8位數據結束時,或在其它方式,串位數據結束時,或在其它方式,串行發送停止位的開始時,由內部硬件使行發送停止位的開始時,由內部硬件使TI置置1,向,向CPU發中斷申請。在中斷服務程序中,發中斷申請。在中斷服務程序中,必須用軟件將其清必須用軟件將其清0,取消此中斷申請。,取消此中斷申請。RI,接收中斷標志位,接收中斷標志位。在方式。在方式0時,當串時,當串行接收第行接收第8位數據結束時,或在其它方式,位數據結束時,或在其它方式,串行接收停止位的中間時,由內部硬件使串行接收停止位的中間時,由內部硬件使R
7、I置置1,向,向CPU發中斷申請。也必須在中斷服發中斷申請。也必須在中斷服務程序中,用軟件將其清務程序中,用軟件將其清0,取消此中斷申,取消此中斷申請。請。80C5180C51串行口的控制寄存器串行口的控制寄存器PCON中只有一位中只有一位SMOD與串行口工作有關與串行口工作有關 : SMOD(PCON.7) 波特率倍增位。在串行口方式波特率倍增位。在串行口方式1、方式方式2、方式、方式3時,波特率與時,波特率與SMOD有關,當有關,當SMOD=1時,時,波特率提高一倍。復位時,波特率提高一倍。復位時,SMOD=0。80C5180C51串行口的工作方式串行口的工作方式 一、方式一、方式0 方式
8、方式0時,串行口為同步移位寄存器的輸入輸出方式。主時,串行口為同步移位寄存器的輸入輸出方式。主要用于擴展并行輸入或輸出口。數據由要用于擴展并行輸入或輸出口。數據由RXD(P3.0)引腳)引腳輸入或輸出,同步移位脈沖由輸入或輸出,同步移位脈沖由TXD(P3.1)引腳輸出。發)引腳輸出。發送和接收均為送和接收均為8位數據,低位在先,高位在后。波特率固定位數據,低位在先,高位在后。波特率固定為為fosc/12。 1、方式、方式0輸出輸出80C5180C51串行口的工作方式串行口的工作方式 2、方式、方式0輸入輸入 方式方式0接收和發送電路接收和發送電路80C5180C51串行口的工作方式串行口的工作
9、方式 二、方式二、方式1 方式方式1是是10位數據的異步通信口。位數據的異步通信口。TXD為數據發送引腳,為數據發送引腳,RXD為數據接收引腳,傳送一幀數據的格式如圖所示。其中為數據接收引腳,傳送一幀數據的格式如圖所示。其中1位起始位,位起始位,8位數據位,位數據位,1位停止位。位停止位。 1、方式、方式1輸出輸出80C5180C51串行口的工作方式串行口的工作方式 2、方式、方式1輸入輸入 用軟件置用軟件置REN為為1時,接收器以所選擇波特率的時,接收器以所選擇波特率的16倍速率采倍速率采樣樣RXD引腳電平,檢測到引腳電平,檢測到RXD引腳輸入電平發生負跳變時,則引腳輸入電平發生負跳變時,則
10、說明起始位有效,將其移入輸入移位寄存器,并開始接收這一說明起始位有效,將其移入輸入移位寄存器,并開始接收這一幀信息的其余位。接收過程中,數據從輸入移位寄存器右邊移幀信息的其余位。接收過程中,數據從輸入移位寄存器右邊移入,起始位移至輸入移位寄存器最左邊時,控制電路進行最后入,起始位移至輸入移位寄存器最左邊時,控制電路進行最后一次移位。當一次移位。當RI=0,且,且SM2=0(或接收到的停止位為(或接收到的停止位為1)時,)時,將接收到的將接收到的9位數據的前位數據的前8位數據裝入接收位數據裝入接收SBUF,第,第9位(停止位(停止位)進入位)進入RB8,并置,并置RI=1,向,向CPU請求中斷。
11、請求中斷。80C5180C51串行口的工作方式串行口的工作方式 三、方式三、方式2和方式和方式3 方式方式2或方式或方式3時為時為11位數據的異步通信口。位數據的異步通信口。TXD為數據發為數據發送引腳,送引腳,RXD為數據接收引腳為數據接收引腳 。 方式方式2和方式和方式3時起始位時起始位1位,數據位,數據9位(含位(含1位附加的第位附加的第9位位,發送時為,發送時為SCON中的中的TB8,接收時為,接收時為RB8),停止位),停止位1位,位,一幀數據為一幀數據為11位。方式位。方式2的波特率固定為晶振頻率的的波特率固定為晶振頻率的1/64或或1/32,方式,方式3的波特率由定時器的波特率由
12、定時器T1的溢出率決定。的溢出率決定。 80C5180C51串行口的工作方式串行口的工作方式 1、方式、方式2和方式和方式3輸出輸出 發送開始時,先把起始位發送開始時,先把起始位0輸出到輸出到TXD引腳,然后發送移引腳,然后發送移位寄存器的輸出位(位寄存器的輸出位(D0)到)到TXD引腳。每一個移位脈沖都引腳。每一個移位脈沖都使輸出移位寄存器的各位右移一位,并由使輸出移位寄存器的各位右移一位,并由TXD引腳輸出。引腳輸出。 第一次移位時,停止位第一次移位時,停止位“1”移入輸出移位寄存器的第移入輸出移位寄存器的第9位位上上 ,以后每次移位,左邊都移入,以后每次移位,左邊都移入0。當停止位移至輸
13、出位時。當停止位移至輸出位時,左邊其余位全為,左邊其余位全為0,檢測電路檢測到這一條件時,使控制,檢測電路檢測到這一條件時,使控制電路進行最后一次移位,并置電路進行最后一次移位,并置TI=1,向,向CPU請求中斷。請求中斷。 80C5180C51串行口的工作方式串行口的工作方式 2、方式、方式2和方式和方式3輸入輸入 接收時,數據從右邊移入輸入移位寄存器,在起接收時,數據從右邊移入輸入移位寄存器,在起始位始位0移到最左邊時,控制電路進行最后一次移位。移到最左邊時,控制電路進行最后一次移位。當當RI=0,且,且SM2=0(或接收到的第(或接收到的第9位數據為位數據為1)時)時,接收到的數據裝入接
14、收緩沖器,接收到的數據裝入接收緩沖器SBUF和和RB8(接收(接收數據的第數據的第9位),置位),置RI=1,向,向CPU請求中斷。如果條請求中斷。如果條件不滿足,則數據丟失,且不置位件不滿足,則數據丟失,且不置位RI,繼續搜索,繼續搜索RXD引腳的負跳變。引腳的負跳變。波特率的計算波特率的計算 在串行通信中,收發雙方對發送或接收數據的速率要有在串行通信中,收發雙方對發送或接收數據的速率要有約定。通過軟件可對單片機串行口編程為四種工作方式,其約定。通過軟件可對單片機串行口編程為四種工作方式,其中方式中方式0和方式和方式2的波特率是固定的,而方式的波特率是固定的,而方式1和方式和方式3的波特的波
15、特率是可變的,由定時器率是可變的,由定時器T1的溢出率來決定。的溢出率來決定。 串行口的四種工作方式對應串行口的四種工作方式對應三種波特率三種波特率。由于輸入的移位。由于輸入的移位時鐘的來源不同,所以,各種方式的波特率計算公式也不相時鐘的來源不同,所以,各種方式的波特率計算公式也不相同。同。方式方式0的波特率的波特率 = fosc/12方式方式2的波特率的波特率 =(2SMOD/64) fosc 方式方式1的波特率的波特率 =(2SMOD/32)(T1溢出率)溢出率)方式方式3的波特率的波特率 =(2SMOD/32)(T1溢出率)溢出率) 當當T1作為波特率發生器時,最典型的用法是使作為波特率
16、發生器時,最典型的用法是使T1工作在自動再裝入工作在自動再裝入的的8位定時器方式(即方式位定時器方式(即方式2,且,且TCON的的TR1=1,以啟動定時器)。這,以啟動定時器)。這時溢出率取決于時溢出率取決于TH1中的計數值。中的計數值。 T1 溢出率溢出率 = fosc /12256 (TH1) 在單片機的應用中,常用的晶振頻率為:在單片機的應用中,常用的晶振頻率為:12MHz和和11.0592MHz。所。所以,選用的波特率也相對固定。常用的串行口波特率以及各參數的關系以,選用的波特率也相對固定。常用的串行口波特率以及各參數的關系如表所示。如表所示。串口的配置串行口工作之前,應對其進行初始化,主要是設置串行口工作之前,應對其進行初始化,主要是設置產生波特率的定時器產生波特率的定時器1、串行口控制和中斷控制。、串行口控制和中斷控制。具體步驟如下:具體步驟如下:確定確定T1的工作方式的工作方式(編程(編程TMOD寄存器);寄存器);計算計算T1的初值的初值,裝載
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 四川鐵道職業學院《塑料加工技術》2023-2024學年第二學期期末試卷
- 山西財經大學《針灸醫籍選》2023-2024學年第二學期期末試卷
- 武夷山職業學院《醫學科研方法入門及設計》2023-2024學年第二學期期末試卷
- 浙江紡織服裝職業技術學院《中醫內科學及研究》2023-2024學年第一學期期末試卷
- 四川省通江縣2024-2025學年初三下學期5月模擬考試生物試題試卷含解析
- 四川省綿陽富樂國際2025年中考模擬考試化學試題理工類試卷含解析
- 唐山市遷安市2025年五下數學期末達標測試試題含答案
- 四川省綿陽第五中學2025年中考模擬最后十套:化學試題(七)考前提分仿真卷含解析
- 浙江警官職業學院《電工電子技術(下)》2023-2024學年第二學期期末試卷
- 濰坊醫學院《工程項目經濟管理與建筑法規》2023-2024學年第二學期期末試卷
- GB/T 788-1999圖書和雜志開本及其幅面尺寸
- GB/T 756-2010旋轉電機圓柱形軸伸
- GB/T 6172.1-2000六角薄螺母
- GB/T 19189-2011壓力容器用調質高強度鋼板
- 公司合格供應商清單
- GB/T 13007-2011離心泵效率
- 2022年物流倉儲行業REITs研究
- 政治學基礎課件全部終稿
- 朱蘭質量手冊課件
- 小豬佩奇Peppa-Pig第一季1-2集英文臺詞
- 一園青菜成了精-課件
評論
0/150
提交評論