第六 講 MCS-51單片機串行通訊接口_第1頁
第六 講 MCS-51單片機串行通訊接口_第2頁
第六 講 MCS-51單片機串行通訊接口_第3頁
第六 講 MCS-51單片機串行通訊接口_第4頁
第六 講 MCS-51單片機串行通訊接口_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

《單片機原理及應用》

----單片機工作過程導向廣東技術師范學院自動化學院測控技術與儀器技術系祁偉主講MCS-51系統(tǒng)的串行接口一、串行通信的概念通信:CPU與外圍設備或計算機與計算機之間的信息交換叫通信。串行通信的兩種基本方式:1)并行通信:各位同時傳送,速度快,近距離,成本高。2)串行通信:一位一位傳送,速度慢,成本低,遠距離。 P1.080C51 .... P1.7 GNDD0....D7GND外圍設備并行通信 RXD80C51 TXD GNDTXDRXDGND外圍設備串行通信并行、串行通信示圖一、異步通信傳送方式異步:字符按幀格式傳送…P10D0D1D2D3D4D5D6D7P10D0…

起始位

數(shù)據(jù)位

校停驗止位位異步通信的幀格式二、同步通信傳送方式同步傳送:以同步字符SYN開始連續(xù)發(fā)送,再以同步字符結束,時鐘信號同時發(fā)送。適用高速、大容量的數(shù)據(jù)傳送。開始

結束同步字符同步字符數(shù)據(jù)段同步字符同步字符同步傳送方式三、串行通信數(shù)據(jù)的傳送方向1、單工傳送(單工制式Simplex)一端發(fā)送,一端接收。2、半雙工(半雙工制式HalfDuplex)一端可發(fā)送可接收,但同一時間只能實現(xiàn)一個功能。雙方可通過硬件、軟件約定。3、全雙工(全雙工Full-duplex制式)同一時間既可發(fā)送又可接收有各自的獨立通道。接收器單工通信方式發(fā)送器接收器接收器

發(fā)送器發(fā)送器

數(shù)據(jù)流半雙工通信方式接收器接收器

發(fā)送器發(fā)送器

數(shù)據(jù)流全雙工通信方式四、MCS-51單片機的串行接口組成MOVSBUF,AMOVA,SBUF串行口構成及工作原理串行口構成:發(fā)送數(shù)據(jù)緩沖器SBUF(只寫不讀)、接收數(shù)據(jù)緩沖器SBUF(只讀不寫)、電源控制寄存器PCON、串行口控制寄存器SCON、發(fā)送中斷標志位TI、接收中斷標志位RI、移位寄存器等組成。接收:接收控制器按波特率發(fā)生器提供的時鐘速率從RXD引腳一位一位接收數(shù)據(jù),當收到一個完整字符時,裝入SBUF中,同時置RI=1,通知CPU,CPU執(zhí)行MOVA,SBUF,將數(shù)據(jù)讀入累加器A。工作原理:發(fā)送:CPU執(zhí)行MOVSBUF,A,將數(shù)據(jù)送入SBUF。發(fā)送控制器按波特率發(fā)生器(定時器構成)提供的時鐘速率將SBUF中的數(shù)據(jù)一位、一位從TXD輸出,發(fā)送結束時,置TI=1。

注意:由于SBUF具有雙緩沖作用,它可以在CPU讀入之前開始接收下一數(shù)據(jù),CPU應在下一數(shù)據(jù)接收完畢前讀取SBUF內容。由于串口的接收、發(fā)送各自獨立,所以可同時發(fā)送及接收,即可以實現(xiàn)全雙工通訊。六、與通訊有關的寄存器1)SBUF(1):發(fā)送緩沖器SBUF(2):接收緩沖器2)電源控制寄存器PCON:控制串行口波特率,SMOD即PCON.7波特率倍增位,PCON.7=1,波特率在原設定值上加倍。可同時、發(fā)送接收SMODD0D7PCONGF1GF0PDIDL

MOVPCON,#80H能否位尋址?3)串行口控制寄存器SCON設定串行口工作方式、接收、發(fā)送控制、監(jiān)視串行口工作。SM0SM1SM2RENTB8RB8TIRI工作方式設定用于多機通訊接收控制發(fā)送第九位接收第九位發(fā)送中斷標志接收中斷標志多機通信TB8=0表示數(shù)據(jù)幀多機通信TB8=1表示地址幀七、MCS-51串行的工作方式MCS-51的串行口有四種工作方式,它是由SCON中的SM1和SM0來決定。SM0SMl工作方式方式簡單描述波特率000移位寄存器I/O主振頻率/120118位UART可變1029位UART主振頻率/32或主振頻率/641139位UART可變方式0:SM0SM1=00移位寄存器方式,數(shù)據(jù)傳輸波特率(fosc/12),串口輸出端與移位寄存器相連,發(fā)送、接收的是8位數(shù)據(jù)。發(fā)送:數(shù)據(jù)從RXD引腳串行輸出,TXD引腳輸出同步脈沖,當一個數(shù)據(jù)寫入串行口緩沖器時,串行口將8位數(shù)據(jù)以(fosc/12)波特率從RXD引腳輸出,先送低位,發(fā)送結束后,置TI標志,若允許串口中斷,CPU即響應中斷服務。若不允許串口中斷,即可通過查詢TI位判斷發(fā)送結束。由于TI位不能自動清零,則必須由軟件清零后,才能再發(fā)送數(shù)據(jù)。發(fā)送過程:CPU主動MOVA,#01HMOVSBUF,A;啟動發(fā)送JNBTI,$CLRTI注釋:SBUF內容通過RXD輸出,移位脈沖通過TXD輸出當TI=1時,發(fā)送結束TI,由軟件清零SBUF=0X01;while(!TI);TI=0;串行口方式0的時序串入/并出LED顯示電路圖例題:根據(jù)實驗板電路設計,通過8051串口工作方式0,控制2位數(shù)碼管顯示00~991)利用MCS-51單片機串入/并出的顯示電路設計2)從I/O接口擴展我們學到可以利用MCS-51單片機的串行口擴展并行I/O接口。實驗板原理圖的顯示部分就是利用串入/并出技術實現(xiàn)2位數(shù)碼管的顯示任務??措娐钒逶韴D。3)現(xiàn)在我們根據(jù)硬件電路設計,編程使2位數(shù)碼管顯示00~99。4)分析程序:字型碼計算?串行口方式0應用74HC595移位寄存器

74595的控制端說明:/CLK(10腳):低電平時將移位寄存器的數(shù)據(jù)清零。通常接VccSCLK(11腳):上升沿時數(shù)據(jù)寄存器的數(shù)據(jù)移位。QA-->QB—>QC—>...-->QH;下降沿移位寄存器數(shù)據(jù)不變。(脈沖寬度:5V時,通常都選微秒級)SLCK(12腳):上升沿時移位寄存器的數(shù)據(jù)進入數(shù)據(jù)存儲寄存器,下降沿時存儲寄存器數(shù)據(jù)不變。通常將SLCK置為低電平,當移位結束后,在SLCK端產生一個正脈沖(5V時,大于幾十納秒就行了),更新顯示數(shù)據(jù)。/EN(13腳):高電平時禁止輸出(高阻態(tài))。如果單片機的引腳夠用,用一個引腳控制它,可以方便地產生閃爍和熄滅效果觀看程序Serial_Disp.c項目訓練:(自行練習)試通過串口控制數(shù)碼管開機顯示op,一分鐘后啟動計時,3分鐘后停機并顯示30。試通過模擬串口控制數(shù)碼管開機顯示op,一分鐘后啟動計時,3分鐘后停機并顯示30。實驗:用實驗板(星期四)開機顯示HELLO-按下p3.2鍵數(shù)碼管后兩位開始以秒為單位計數(shù)至00~99。方式1

方式1為8位異步通信方式。一幀10位,1位起始位(0),8位數(shù)據(jù)位(低位在前),1位停止位(1),起始位、停止位自動加入,TXD發(fā)送端,RXD接收端。波特率=(2SMOD/32)*N

N為定時器溢出率,每秒定時溢出的次數(shù)

波特率計算

波特率即數(shù)據(jù)傳送速率,每秒傳送二進制數(shù)碼的位數(shù)bit/s。串行口四種工作方式決定三種波特率。1)方式0,波特率為固定值,為單片機時鐘頻率的1/12,即fosc/12,由單片機T1產生。2)方式2,有兩種波特率, 波特率=(2SMOD/64)fosc式中:SMOD波特率倍增位,可選0、1。3)方式1和方式3波特率是可變的,波特率=(2SMOD/32)*N例題:若串行通信要求波特率為1200bit/s,不加倍,試選用定時器T1,方式1工作。波特率=(2SMOD/32)*N定時器定時1秒時溢出的次數(shù)為NN=(fosc/12)*[1/(2k-Z)]1200S-1=(20/32)*N,N=38400S-1,38400=(12*106/12)*1/(28-Z)Z=230D=0E6H,通常選fosc=11.059MHz,Z=230D=0E8H也可根據(jù)要求波特率查表得出定時器初值,如表7-1所列。MCS-51單片微型計算機串行口程序設計

在單片機應用系統(tǒng)中,數(shù)據(jù)通信主要采用的是異步串行通信方式,在設置通信接口時,必須根據(jù)需要選擇標準接口,并考慮電平轉換,傳輸介質等問題。RS232C、RS449、RS423/422、RS485標準總線接口。選擇接口標準時,要注意以下兩點:

1)通信速度和通信距離通常標準串行接口的電氣特性,都滿足可靠傳輸時的最大通信速度和傳送距離指標。但這兩個指標之間具有相關性,適當降低傳輸速度,可以提高通信距離,反之。如采用RS422標準進行數(shù)據(jù)傳輸時,最大傳輸速度為10Mbit/s,最大傳輸距離為300m,適當降低速度傳輸速度,傳送距離可達1200m。選擇接口標準時,要注意以下兩點:2)抗干擾能力通常選擇的標準接口,在保證不超過使用范圍時都有一定的抗干擾能力,以保證信號的可靠傳輸。但在一些工業(yè)控制系統(tǒng)中,通信環(huán)境往往十分惡劣,因此在通信介質選擇、接口標準選擇時,要充分注意其抗干擾能力,并采取必要的抗干擾措施。例如,在長距離傳輸時,使用RS422標準,能有效抑制共模信號干擾。在高噪聲污染環(huán)境中,通過使用光纖介質可減少噪聲的干擾,通過光電隔離提高通信系統(tǒng)的安全性是一些行之有效的方法。1)RS232C標準總線接口RS232C是使用最早、應用最多的一種異步串行通信總線標準,它是美國電子工業(yè)協(xié)會(ElectronicIndustriesAssociation)1962年公布的,1969年最后一次修訂而成。其中RS是RecommendedStandard的縮寫,232是該標準的標識號,C表示最后一次修訂。①RS232C傳遞信息的格式標準

RS232C采用按位串行方式,該標準所傳遞的信息規(guī)定如下:信息的開始為起始位信息,結尾為停止位,它可以是一位、一位半或兩位;信息本身可以是5、6、7、8位再加一位奇偶效驗位。RS232C傳送的波特率(bit/s)規(guī)定為19200、9600、4800、2400、600、300、150、110、75、50。RS232C接口總線的傳輸距離一般不超過15m。

②RS232C電氣特性由于RS232C是在TTL電路出現(xiàn)之前研制的,所以他的電平不是+5V和地,它使用負邏輯,其低電平“0”在+5V~+15V之間,高電平“1”在-5V~-15V之間,最高能承受±25V的信號電平。因此,RS232C不能和TTL電平直接相連,使用時必須加上適當?shù)慕涌陔娐罚駝t將TTL電路燒毀。常用晶體管MC1488、MC1489或MAX232/202作TTL與RS232的電平轉換。MAX232介紹

晶體管MC1488、MC1489作TTL與RS232的電平轉換時,MC1488、MC1489還需要一套12V工作電源,給電路設計帶來麻煩,所以通常用MAX232/MAX202TTL與RS232的電平轉換。MAXIM(美信)公司生產的含有兩路接收器和驅動器的單電源電平轉換芯片,可以把輸入的+5V電源電壓轉換為RS-232輸出電平所需的+10V或-10V電壓。MAX232引腳封裝如圖所示。引腳說明如表所示。

第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構成。功能是產生+12v和-12v兩個電源,提供給RS-232串口電平的需要。片載電荷泵具有升壓、電壓極性反轉能力,能夠產生+10V和-10V電壓V+、V-

第二部分是數(shù)據(jù)轉換通道。由7、8、9、10、11、12、13、14腳構成兩個數(shù)據(jù)通道。其中13腳(R1IN)、12腳(R1OUT)、11腳(T1IN)、14腳(T1OUT)為第一數(shù)據(jù)通道。8腳(R2IN)、9腳(R2OUT)、10腳(T2IN)、7腳(T2OUT)為第二數(shù)據(jù)通道。TTL/CMOS數(shù)據(jù)從T1IN、T2IN輸入轉換成RS-232數(shù)據(jù)從T1OUT、T2OUT送到電腦DB9插頭;DB9插頭的RS-232數(shù)據(jù)從R1IN、R2IN輸入轉換成TTL/CMOS數(shù)據(jù)后從R1OUT、R2OUT輸出。第三部分是供電。15腳GND、16腳VCC(+5v)。單片機與單片機串行通信電路

雙機雙工通信編程

雙機通信(點對點)利用單片機串行口實現(xiàn)兩個單片機之間的串行異步通信。如果兩個單片機相距很近(1.5m),將它們的串行口直接相連,即實現(xiàn)雙機通信;如果距離較遠,可利用RS232(15m)、RS429、RS423/422、RS485標準總線接口進行通信(1200m)編程:利用單片機實現(xiàn)串口雙機雙工通信,要求接收方接收到數(shù)據(jù)1,即驅動一個通信紅燈RED1亮,接收到數(shù)據(jù)2,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論