RS232串行通訊相關_第1頁
RS232串行通訊相關_第2頁
RS232串行通訊相關_第3頁
RS232串行通訊相關_第4頁
RS232串行通訊相關_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實用標準文檔RS232串行通信相關一.異步串行通訊數(shù)據(jù)格式:一幀異步通訊的數(shù)據(jù)格式主要包含一下幾個部分:(1)起始位:起始位以一位低電平開始,表示發(fā)送端開始發(fā) 送一幀數(shù)據(jù)。(2 )數(shù)據(jù)位:數(shù)據(jù)位即要傳遞的數(shù)據(jù)信息,一般低位在前, 高位在后,數(shù)據(jù)位長度一般為 510位,常見為8位。(3 )奇偶校驗位:用于校驗數(shù)據(jù)的正確性,可用奇校驗,或 偶校驗。(4 )停止位:用于向接收端表示一幀信息已經(jīng)發(fā)送完畢,長 度一般為12位。(5)空閑位:空閑位一般用高電平表示,用于通知接受端等 待數(shù)據(jù)傳輸。0DOD1D2D3D4D5D6D7P1I110DCDIB r7起始位載娠位奇儁枝船也停止樁空網(wǎng)益話端機數(shù)拯垃圖一

2、 串行通信數(shù)據(jù)格式二.波特率:在異步通信(收發(fā)設備各自使用自己的時鐘)中,除了規(guī)定 好數(shù)據(jù)傳輸格式外,還要有規(guī)定好的波特率:1波特=1bps (位/秒)在系統(tǒng)設計中,需根據(jù)通信需求選擇波特率:例,設計的數(shù)據(jù)傳輸率為 300字節(jié)每秒,而每幀數(shù)據(jù)長度為 11位,需要的波特率如下:300 幀 / 秒*11 位 / 幀=3300 位 / 秒=3300bps三.RS232接口設計:二 CD二 RXD TXI) DTR 匚SGDSRRTSCHSHI1. RS232接口定義:(1 )載波檢測(DCD)(2 )接受數(shù)據(jù)(RXD) V(3)發(fā)出數(shù)據(jù)(TXD) V(4 )數(shù)據(jù)終端準備好(DTR)(5 )信號地線(

3、SG)V(6) 數(shù)據(jù)準備好(DSR)(7 )請求發(fā)送(RTS)(8 )清除發(fā)送(CTS)(9 )振鈴指示(RI)2. RS232接口針腳:54321串口接頭(公)定義圖二.RS232接頭針腳定義串口接頭(母)定義四.51的串行口通信:1.串行口控制寄存器 SCON (98H):SM0SM1SM2RENTB8RR8TIRI(1)SM0,SM1 :用于設置串口的工作方式,進行工作方式的選擇;SMOSM1工作方式功能波特率00方式08位同步移位寄存器fosc/1201方式1lO&UART可變10方式211位 UARTfbsc/64 或伽 c/3211方式311位(JART可變(2) SM2 :多機通

4、信控制位,應用于方式2與方式3中; 在方式0中,SM2應為0 ;在方式1處于接收時,若SM2=1,則只有收到有效的停 止位后,RI置1 ;在方式2,3處于接收方式時:SM2=0,收到RB8(0或1 )既可使收到的數(shù)據(jù)進入 SBUF, 也可以激活RI。SM2=1,收到的RB8 = 0時,收到的信息丟棄,不激活RI ;若收到的RB8 = 1時,收到的數(shù)據(jù)進入 SBUF,并激活RI,進而在中斷服務中將數(shù)據(jù)從 SBUF讀走。(3) REN :允許串行接收位;REN=0,禁止串行接收;REN=1 ,允許串行接收。(4) TB8 :在方式2,3中,是發(fā)送機要發(fā)送的第九位數(shù)據(jù); 可做奇偶校驗位,由軟件置位或

5、復位。在多機通信中,可作為區(qū)別地址幀或數(shù)據(jù)幀的標識位,一 般約定地址幀時,TB8為1,數(shù)據(jù)幀時,TB8為0。(5) RB8 :在方式2 , 3中,接收來自發(fā)送機的第 9位數(shù)據(jù)(TB8);(6) TI:發(fā)送中斷標志,發(fā)送一幀結(jié)束,TI=1,必須軟件清零;(7) RI:接收中斷標志,接收一幀結(jié)束,RI=1,必須軟件清零。2.電源功能寄存器PCON (87H):SMODSMOD,波特率倍增位,在方式1、2、3時,波特率與SMOD 有關:SMOD=1時,波特率提高一倍;復位時,SMOD=0。3.串行口的四種工作方式:SM0SMI工作方式功能波特率00方式8位同步移位寄存器fosc/1201方式11(1

6、位 UART可變10方式2位 UARTfosc/64 或11方式311位 DARTP可變(1)方式0 : 8位同步移位寄存器(用于I/O擴展);為同步工 作方式,不能用于雙機通信,只能與外界的同步移位寄存器配套 進行工作;如果想進行異步串行通信,只能使用方式1,2,3進行。 使用方式0實現(xiàn)數(shù)據(jù)的移位輸入輸出時,實際上是把串行口變成為并行口使用。串行口作為并行輸出口使用時,要有“串入并出 的移位寄存器(例如 CD4094或74LS164、74HC164 等)配 合。一幀8位,無起、停位。RXD :數(shù)據(jù)輸入/輸出端。TXD :同步脈沖輸出端,每個脈沖對應一個數(shù)據(jù)位。波特率 B = fosc/12

7、,女口 :fosc=12MHz,B=1MHz,每位數(shù)據(jù)1微秒。發(fā)送過程:寫入SBUF (啟動發(fā)送),一幀發(fā)送完,TI=1 接收過程:REN=1且2RI=0,啟動接收,一幀接收完,RI=1SENDSHIFT| 寫入SBUFS6P2RXD(DA-T XD(SHIT方式0發(fā)送時序|清除SCON中的Rl位RIRECEIVESHIFT1_JS5P2RXD(DAT方式0接收時序TXD(SHIFT CLOCK)i_ru文案大全方式0接收時序圖三方式0串口通信電路連接D(2)方式1: 10位數(shù)據(jù)的異步通信一幀10位:起位+8位數(shù)據(jù)位+停位。波特率:用T1作波特率發(fā)生器,B=(2SMOD/32) XT1溢出率。

8、接收:REN=1 , RI=0且停止位為1(或SM2=0 ),將,、寫入BUF“ SENDS1P1接收數(shù)據(jù)裝入SBUF,停止位裝入RB8 ,并使RI=1 ;否則 SHIFTIIII丟棄 接收數(shù)據(jù),不置位寸x D5 D6: -/T I 起 始 位D0D71幀共10位方式1發(fā)送時序數(shù)據(jù)位8位LSBMSB停止位1 2圖四方式1傳輸數(shù)據(jù)幀格式方式1發(fā)送數(shù)據(jù)幀時序方式1接收數(shù)據(jù)幀時序(3)方式2 , 3:11位數(shù)據(jù)的異步通訊3456一幀11位:起位+9位數(shù)據(jù)位+停位。第9位數(shù)據(jù)位在TB8/RB8中,常作校驗位或多機通訊標D識位波特率:方式 2 : B=(2SMOD/64) xfoscT X CLOCK一

9、方式 3 : B=(2SMOD/32)XT1 溢出率匚 二寫入SBUFSEND發(fā)送比填寫TB8 ,寫入SBUF (啟動發(fā)送),發(fā)送完 口=1S1P1DATSHIFT接收:REN=1 ,占匸且第9沖為1 (或SM2=0)接TXD收數(shù)據(jù)裝入SBUF,第9位裝入RB&,使;停止否則丟IT I RX CLOCK棄接收數(shù)據(jù),不置位理。=停止位1幀共11位起位檢測器采羊時間網(wǎng)然.嫌丑瑛冋止 空僉烷_位閑-數(shù)據(jù)位9位SHIFTD0D7RB8/TB8LSBRIMSB方式1接攵時序圖五 方式2,3傳輸數(shù)據(jù)幀格式TitleSizeNum berA2A Date:16-Mar-2009File:教材參編Title

10、67SizeNumberRevisionBDate:16-Mar-2009Sheet ofFile:教材參編第七章圖ch7gzsx.ddbDrawn By :56方式2,3發(fā)送數(shù)據(jù)幀時序方式2,3接收數(shù)據(jù)幀時序4.波特率的計算:波特率方式0fosc/12方式I(2泅叫64)廿吸方式2(2SMOD/32) - (T1 溢出率)RX clock II I IIlli.韋己始位RXDD0 D1 D2 D3 D4D5 D6 D7 / RB8 停止位位檢器采樣時間9WD11 0592方式2接收時序22卩FDHp*4800P11.0592POp2卩FAHQ*240011.059*葉2口F4H12咖15.0

11、5922葉62ESHflSHIFTRI舊+TitleSizeA2Date:File:Number16-Mar-20教材參T5.串口初始化的具體步驟:(1 )串口初始化的一般步驟包括:確定T1的工作方式(編程TMOD寄存器);計算T1的初值,裝載TH1、TL1 ;啟動T1 (編程TCON中的TR1位);IE、確定串行口控制(編程 SCON寄存器);串行口在中斷方式工作時,還要進行中斷設置(IP寄存器)。a束)6. 51串口通信相關例程:(1)串口初始化,晶振為 11.0592M,方式1,波特率300 -57600 。void In itCom (un sig ned char BaudRate)

12、un sig ned char THTL;switch (BaudRate)case 1: THTL = 64; break; / 波特率 300case 2: THTL = 160; break; /600case 3: THTL = 208; break; /1200 case 4: THTL = 232; break; /2400 case 5: THTL = 244; break; /4800 case 6: THTL = 250; break; /9600 case 7: THTL = 253; break; /19200 case 8: THTL = 255; break; /57

13、600default: THTL = 208;SCON = 0x50; /串口方式 1,允許接收TMOD = 0x20; /定時器 1 定時方式 2TCON = 0x40; /設定時器 1 開始計數(shù)TH1 = THTL;TL1 = THTL;PCON = 0x80; /波特率加倍控制 ,SMOD 位RI = 0; / 清收發(fā)標志TI = 0;TR1 = 1; / 啟動定時器2)向串口輸出一個字符(非中斷方式)void ComOutChar(unsigned char OutData)SBUF = OutData; / 輸出字符while(!TI); / 空語句判斷字符是否發(fā)完TI = 0; /

14、 清 TI(3)向串口輸出一個字符串(非中斷方式)void ComOutStr(unsigned char *Str)while(*Str != 0x00) / 判斷是否到了字符串的尾部SBUF = *Str; / 輸出字符while(!TI); / 空語句判斷字符是否發(fā)完TI = 0; / 清 TIStr+; / 字符串指針加一(4) 從串口接收一個字符 (非中斷方式 )unsigned char ComInChar()unsigned char InData;while(!RI); / 空語句判斷字符是否收完InData = SBUF; / 保存 COM 緩沖字符RI = 0; / 清 R

15、Ireturn (InData); / 返回收到的字符(5) 從串口接收一個定長字符串 (非中斷方式,只用于字符需有 一個的 idata 字符串數(shù)組 )/ 如 unsigned char *Str;/unsigned char i=abcd;/InHandStr = &i;void ComInStr(unsigned char *Str)while(*Str != 0x00) / 判斷是否到了字符串的尾部while(!RI); / 空語句判斷字符是否收完*Str = SBUF; / 保存字符RI = 0; / 清 RIStr+; / 字符串指針加一(6) 向串口輸出一個回車換行void Com

16、OutEnter(void)SBUF = 0x00;while(!TI);TI = 0;SBUF = OxOA; while(!TI);TI = 0;7. 51串口通信初始化程序自動生成(自動生成初始化程序,復制即可):(1 )下載鏈接:http:/www.ourdev.c n/bbs/bbs c onten t.jsp?bbs s n=4023698&bbs_page_no=1&bbs_id=9999(2 )軟件運行界面:8. 串口工作在工作方式 0例程:(1)電路原理圖:基本電路有51單片機和74LS164組成,51的RXD接 164的AB管腳,TXD接164的CLK管腳,P32接164的

17、 CLEAR管腳。電路實現(xiàn)的功能是 51通過串口發(fā)送0至255 的數(shù)值,164通過譯碼,將收到的數(shù)值并行通過LED進行輸出。基本51的串口工作方式0,也僅用于如下的這種工作方 式。51TA13FCTFQH-QEJ ffllJOD-mjanGv*F廠(2)驅(qū)動程序:#in cludereg51.h#define uchar un sig ned char sbit P32=P3A2;void Mode0_i ni t();void Mode0_work();void delay();void main()Mode0_init();Mode0_work();void Mode0_init()SCON=0x00; /SM0 , SM1 都為 0,設定串口工作方式為 0ES=0; / 禁止串口中

溫馨提示

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

評論

0/150

提交評論