串行口及串行通信技術(shù).ppt_第1頁
串行口及串行通信技術(shù).ppt_第2頁
串行口及串行通信技術(shù).ppt_第3頁
串行口及串行通信技術(shù).ppt_第4頁
串行口及串行通信技術(shù).ppt_第5頁
已閱讀5頁,還剩68頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第7章 串行口及串行通信技術(shù),串行通信基本知識 89C51串口及其應(yīng)用 兩個單片機(jī)之間的通信 單片機(jī)與PC機(jī)之間的通信,什么是串行通信?,串行通信和并行通信,并行通信:數(shù)據(jù)的各位同時傳送;,串行通信:數(shù)據(jù)一位一位順序傳送。,快、多(數(shù)據(jù)線)、近,慢、少、遠(yuǎn),串行通信制式:單工(a)、半雙工(b)和全雙工(c) (simplex half duplex full duplex),異步通信,ASYNC (Asynchronous Data Communication):幀格式傳送,信息量不大 1個起始位,0 58個數(shù)據(jù)位 奇偶校驗位 12個停止位,0,串行通信的分類:異步(Asynchronous

2、 Communication) 同步(Synchronous Communication),同步通信,SYNC(Synchronous Data Communication):嚴(yán)格同步,發(fā)送同步字符,數(shù)據(jù)連續(xù),信息量大,速度較高 按數(shù)據(jù)塊傳送把要傳送的字符順序連接起來 數(shù)據(jù)塊前有同步字符,后有檢驗字符,同步字符可由通信雙方約定,也可采用ASCII碼中規(guī)定的SYNC代碼,即16H。,同步傳送時,要求用時鐘來實現(xiàn)發(fā)送端與接收端之間的同步。,波特率(Band rate),數(shù)據(jù)傳送速率:每秒傳送的二進(jìn)制代碼的位數(shù)。 波特率反映了串行通信的速率,也反映了對于傳輸通道的要求。波特率越高,要求傳輸通道的頻率

3、越寬,一般異步通信的波特率在50b/s19200b/s之間。 相互通信的甲乙雙方必須具有相同的波特率,否則無法成功地完成串行數(shù)據(jù)通信。,通信線上傳送的所有位信號都保持一致的信號持續(xù)時間,每一位的信號持續(xù)時間都由數(shù)據(jù)傳送速度確定。,舉例,假如在1秒內(nèi),89C51串口把100個FFH的數(shù)據(jù)發(fā)送出去,問波特率是多少?假若每個字符是包含一個起始位、一個終止位和8個數(shù)據(jù)位。,根據(jù)串行通信的格式及約定(如:同步方式、通訊速率、數(shù)據(jù)塊格式、信號電平等)不同,形成了多種串行通信的協(xié)議與接口標(biāo)準(zhǔn)。 常見的有: 通用異步收發(fā)器(UART)本課程介紹的串口 通用串行總線(USB) I2C總線 CAN總線 SPI總線

4、 RS-485,RS-232C,RS422A標(biāo)準(zhǔn)等等,串行通信的基本特征是數(shù)據(jù)逐位順序進(jìn)行傳送。,串行口及串行通信技術(shù),串行通信基本知識 89C51串口及其應(yīng)用 兩個單片機(jī)之間的通信 單片機(jī)與PC機(jī)之間的通信,概述 有一個可編程全雙工異步串行通信接口(UART) (Universal Asynchronous Receiver/Transmitter ) 管腳:TXD(P3.1)、RXD(P3.0) 可同時發(fā)送、接收數(shù)據(jù)(Transmit/Receive) 有四種工作方式,幀格式有8、10、11位。 波特率(Baud rate)可設(shè)置 波特率:每秒鐘傳送二進(jìn)制數(shù)碼的位數(shù),也叫比特數(shù),單位為b/

5、s,即位/秒。,89C51的串行接口,圖7-7,return,串行口結(jié)構(gòu),引腳RXD (P3.0串行數(shù)據(jù)接收端) 引腳TXD (P3.1串行數(shù)據(jù)發(fā)送端) MOV SBUF, A :發(fā)送數(shù)據(jù)到串口引腳 MOV A , SBUF :接收數(shù)據(jù) RI :從串口上接收數(shù)據(jù)到SBUF RI=1 TI :數(shù)據(jù)從SBUF向外發(fā)送完 TI=1,MCS-51串行接口寄存器,SBUF串行口數(shù)據(jù)緩沖器 SCON串行口控制寄存器 PCON電源及波特率選擇寄存器,控制寄存器SCON,SM2置1,多機(jī)通信,用于方式2和方式3 D81,地址幀 D80,數(shù)據(jù)幀 SM2置0,不屬于多機(jī)通信,串行方式的定義,例:設(shè)串行口工作在方式

6、1,允許接收,則指令為: MOV SCON,#01010000B,串行通信只用該位,為1時,波特率2;為0時不變。,電源及波特率選擇寄存器PCON,87H,串行口四種工作方式應(yīng)用比較,方式的選擇由SM1、SM0實現(xiàn)。,波特率的設(shè)定可參見表7.2,實際無需計算。,表,方式0,在方式0下,串行口作同步移位寄存器用,其波特率固定為fosc/12。串行數(shù)據(jù)從RXD(P3.0)端輸入或輸出,同步移位脈沖由TXD(P3.1)送出。這種方式常用于擴(kuò)展I/O口。,方式0用于擴(kuò)展I/O口輸出,方式0用于擴(kuò)展I/O口輸入,方式1,10位的幀格式,串行口為波特率可調(diào)的10位通用異步接口UART。每發(fā)送或接收的一幀信

7、息中,包括1位起始位0,8位數(shù)據(jù)位和1位停止位1。,方式2,串行口為11位UART,傳送波特率與SMOD有關(guān)。發(fā)送或接收的一幀數(shù)據(jù)中包括1位起始位0,8位數(shù)據(jù)位,1位可編程位(用于奇偶校驗)和1位停止位1。,11位的幀格式,方式3,方式3為波特率可變的11位UART通信方式,除了波特率以外,方式3和方式2完全相同。,MCS-51串行口的波特率,1.方式0和方式2的波特率是固定的,在方式0中,波特率為時鐘頻率的1/12,即fosc/12,固定不變,圖,2. 方式1和方式3的波特率可變,由定時器1的溢出率決定,波特率=,return,RETURN,解決的方法只有調(diào)整單片機(jī)的時鐘頻率fosc,通常采

8、用11.0592MHz晶振。,常用波特率及其產(chǎn)生條件,常用波特率通常按規(guī)范取1200、2400、4800、9600、,若采用晶振12MHz和6MHz,則計算得出的T1定時初值將不是一個整數(shù),產(chǎn)生波特率誤差而影響串行通信的同步性能。,四種工作方式應(yīng)用舉例,串行口的應(yīng)用,編程注意事項 設(shè)置串行口工作方式 設(shè)置波特率(SMOD,若是方式1、3,設(shè)置TI初值) 若串行口接收數(shù)據(jù),REN必須賦值為1 TI和RI標(biāo)志,須由軟件清0 第9位,串行口工作方式0,用于擴(kuò)展I/O口,外接74HC164(串入并出)或165(并入串出)。RXD作為數(shù)據(jù)輸入/輸出端,TXD作為同步時鐘信號,接至?xí)r鐘端。 8位數(shù)據(jù)為1幀

9、,由低位到高位,無起始位和停止位。 波特率: fosc/12,例,用89C51串行口外接CD4049或164串入-并出移位寄存器擴(kuò)展8位并行口;8位并行口的每位都接一個發(fā)光二極管,要求發(fā)光二極管從左到右以一定延遲輪流顯示,并不斷循環(huán)。設(shè)發(fā)光二極管為共陰極接法。如圖所示。,解:設(shè)數(shù)據(jù)串行發(fā)送采用中斷方式,顯示延遲通過延遲程序DELAY來實現(xiàn)。 程序清單: ORG 0000H LJMP MAIN ORG0023H AJMPSBR ORG2000H MAIN: MOVSCON, #00H ;串行口方式0初始化 MOVA, #80H ;最左一位發(fā)光二極管先亮 CLRP1.0 ;關(guān)閉并行輸出 MOVSB

10、UF, A ;開始串行輸出 LOOP: SJMP$ ;等待中斷 SBR:SETBP1.0 ;啟動并行輸出 ACALL DELAY ;顯示延遲一段時間 CLRTI ;清發(fā)送中斷標(biāo)志 RRA ;準(zhǔn)備右移一位顯示 CLR P1.0 ;關(guān)閉并行輸出 MOVSBUF, A ;再一次串行輸出 RETI,串行口工作方式1,10位通用異步串行口UART (Universal Asynchronous Receiver / Transmitter) ,1位起始位、8位數(shù)據(jù)、1位停止位。 波特率可調(diào),由定時器T1的溢出率(定時時間)決定。 當(dāng)一幀數(shù)據(jù)接收完畢后,必須同時滿足以下條件,這次接收才真正有效: REN

11、=1 RI=0, SBUF為空 SM2=0或SM2=1時,收到停止位為1,收到的數(shù)據(jù)才能裝到SBUF里。,串行口工作方式1,波特率 (定時器T1的溢出速率),PCON.7波特率選擇位,7位ASCII碼+1位奇偶校驗位=8 A中1的個數(shù)為奇數(shù),P=1,如果最高位為為P的值,則A的1的個數(shù)編程偶數(shù),因此,要把P的值取反以后放入ASCII碼最高位,才是奇校驗。 設(shè)發(fā)送數(shù)據(jù)區(qū)的首地址為20H,接收首地址為40H,例 89C51串行口按雙工方式收發(fā)ASCII字符,最高位用作奇校驗,要求傳送碼率為1200b/s,fosc=11.059MHz。,奇偶校驗位:數(shù)據(jù)位和奇偶位中1的個數(shù) 偶校驗:以上1的個數(shù)為偶

12、數(shù) 奇校驗:以上1的個數(shù)為奇數(shù),MOV TMOD, #20H; MOV TL1, #0E8H; MOV TH1, #0E8H; SETB TR1; MOV SCON, #50H; MOV R0, #20H; MOV R1, #40H; SETBES; SETBEA; LCALLSOUT; SJMP$;,T1為模式2 時間常數(shù),見表7-2 重裝時常 啟動T1 串行口方式1,允許接收 發(fā)送數(shù)據(jù)區(qū)首址 接收數(shù)據(jù)區(qū)首址 串行口開中斷 CPU開中斷 發(fā)送一個字符 等待中斷,表,ORG0000H LJMP MAIN ORG0050H,MAIN:,中斷服務(wù)程序,ORG0023H LJMP SBR1 ORG0

13、100H PUSHACC PUSHPSW JNBRI,SEND LCALLSIN SJMP NEXT LCALLSOUT POPPSW POPACC RETI,SBR1: SEND: NEXT:,發(fā)送子程序,CLRTI MOV A,R0 MOV C,P CPLC MOV ACC.7,C MOV SBUF,A INC R0 RET,SOUT:,;若奇數(shù)個1,P1,;取要發(fā)送的數(shù)據(jù),;A中的ASCII碼為奇校驗,;發(fā)送,;修改發(fā)送數(shù)據(jù)區(qū)指針,接收子程序,CLR RI MOV A,SBUF JNB P,ER ANL A,#7FH MOV R1,A INC R1 RET ,SIN:,;若偶數(shù)個1,出錯

14、,;讀接收到的數(shù)據(jù),;數(shù)據(jù)存入接收區(qū),;修改接收數(shù)據(jù)區(qū)指針,;若奇數(shù)個1,ACC.7清0,ER:,;處理出錯程序,串行口工作方式2和方式3,每幀11位:1位起始位,9位數(shù)據(jù)(D8D0),1位停止位; 第9位數(shù)據(jù)作為奇偶校驗位或地址/數(shù)據(jù)標(biāo)志位; 發(fā)送時,第9位(D8)數(shù)據(jù)裝入TB8;-串口自動完成 MOV A ,DATA MOV TB8, C MOV SBUF, A 接收時,第9位(D8)數(shù)據(jù)裝入RB8; D0D7 SBUF D8RB8 RI =1,多機(jī)通信,串行口工作方式2和方式3,方式2,波特率位fosc/32或fosc/64; 方式3,波特率可調(diào),同方式1。,用第9個數(shù)據(jù)位作奇偶校驗位,

15、 編制串行口方式2的發(fā)送程序。 例:設(shè)計一個發(fā)送程序,將片內(nèi)RAM 50H5FH中的數(shù)據(jù)串行發(fā)送;串行口設(shè)定為方式2狀態(tài),TB8作奇偶校驗位,采用偶校驗。,程序清單,TRT: MOV SCON, #80H ;方式2設(shè)定 MOV PCON, #80H ; 波特率=fosc/32 MOV R0,#50H ;首地址R0 MOV R7, #10H ;數(shù)據(jù)長度 LOOP:MOV A,R0 ;取數(shù)據(jù) MOV C, PSW.0 ;PTB8 MOV TB8, C MOV SBUF, A ;數(shù)據(jù)SBUF,啟動發(fā)送 WAIT: JBC TI, CONT ;判斷發(fā)送中斷標(biāo)志 SJMP WAIT CONT: INC

16、R0 DJNZ R7, LOOP RET,串行口及串行通信技術(shù),串行通信基本知識 89C51串口及其應(yīng)用 兩個單片機(jī)之間的通信 單片機(jī)與PC機(jī)之間的通信,兩個單片機(jī)之間的通信,通信協(xié)議:幀格式、校驗方式等 波特率,雙機(jī)通信軟件編程,查詢方式 1) 甲機(jī)發(fā)送 編程將甲機(jī)片外1000H101FH單元的數(shù)據(jù)塊從串行口輸出。定義方式2發(fā)送,TB8為奇偶校驗位。發(fā)送波特率375 kb/s,晶振為12 MHz, SMOD=1。,參考發(fā)送子程序如下: MOV SCON,#80H ;設(shè)置串行口為方式2 MOV PCON,#80H ;SMOD=1 MOV DPTR,#1000H ;設(shè)數(shù)據(jù)塊指針 MOV R7,#

17、20H ;設(shè)數(shù)據(jù)塊長度 START: MOVX A,DPTR ;取數(shù)據(jù)給A MOV C,P MOV TB8,C ;奇偶位P送給TB8 MOV SBUF,A ;數(shù)據(jù)送SBUF,啟動發(fā)送 WAIT: JBC TI,CONT ;判斷一幀是否發(fā)送完。若送完,清TI,取下一個數(shù)據(jù) AJMP WAIT ;未完等待 CONT: INC DPTR ;更新數(shù)據(jù)單元 DJNZ R7,START ;循環(huán)發(fā)送至結(jié)束 RET,2) 乙機(jī)接收 編程使乙機(jī)接收甲機(jī)發(fā)送過來的數(shù)據(jù)塊,并存入片內(nèi)50H6FH單元。接收過程要求判斷RB8,若出錯置F0標(biāo)志為1,正確則置F0標(biāo)志為0,然后返回。 在進(jìn)行雙機(jī)通信時,兩機(jī)應(yīng)采用相同的工

18、作方式和波特率。,參考接收子程序如下: MOV SCON,#80H ;設(shè)置串行口為方式2 MOV PCON,#80H ;SMOD=1MOV R0,#50H ;設(shè)置數(shù)據(jù)塊指針MOV R7,#20H ;設(shè)置數(shù)據(jù)塊長度SETB REN ;啟動接收WAIT:JBC RI,READ ;判斷是否接收完一幀。若完,清RI,讀入數(shù)據(jù)AJMP WAIT ;未完等待READ:MOV A,SBUF ;讀入一幀數(shù)據(jù)aJNB PSW.0,PZ ;奇偶位為0則轉(zhuǎn)JNB RB8, ERR ;P=1,RB8=0,則出錯 SJMP RIGHT ;二者全為1,則正確 PZ: JB RB8, ERR ;P=0,RB8=1,則出錯R

19、IGHT: MOV R0, A ;正確,存放數(shù)據(jù)INC R0 ;更新地址指針DJNZ R7, WAIT ;判斷數(shù)據(jù)塊是否接收完CLR PSW.5 ;接收正確,且接收完清F0標(biāo)志RET ;返回 ERR: SETB PSW.5 ;出錯,置F0標(biāo)志為1RET ;返回,7.3 多個89C51通信,多機(jī)通信步驟: 主機(jī)SM20,所有從機(jī)的SM21,以便接收主機(jī)發(fā)來的地址。 主機(jī)發(fā)送地址,其中D81。 所有從機(jī)接收主機(jī)發(fā)來的地址,進(jìn)入中斷服務(wù)程序,并和本機(jī)地址比較,確認(rèn)是否是被尋址從機(jī)。 被尋址從機(jī)清除SM2,以便接收數(shù)據(jù),并向主機(jī)發(fā)回從機(jī)地址,供主機(jī)核對。其他從機(jī)保持SM21,并退出中斷服務(wù)程序。 數(shù)據(jù)

20、通信完畢,被尋址從機(jī)SM21,退出中斷服務(wù)程序,等待下次通信。,串行口及串行通信技術(shù),串行通信基本知識 89C51串口及其應(yīng)用 兩個單片機(jī)之間的通信 單片機(jī)與PC機(jī)之間的通信,PC機(jī)與單片機(jī)通信,PC機(jī)是國內(nèi)目前使用應(yīng)用最廣泛的微機(jī),在與單片機(jī)串行接口后,可以方便地構(gòu)成主從分布式多機(jī)系統(tǒng)。從機(jī)(單片機(jī))作數(shù)據(jù)采集或?qū)崟r控制,主機(jī)作數(shù)據(jù)處理或中央管理等。 這種多機(jī)系統(tǒng)在過程控制、儀表生產(chǎn)、生產(chǎn)自動化和企業(yè)管理等方面都有廣泛的應(yīng)用。此外微機(jī)和單片機(jī)串行接口后,可以大大方便單片機(jī)的開發(fā)過程。,7.4 89C51與PC機(jī)通信,電氣規(guī)范不一致,TTL與RS232電平轉(zhuǎn)換,1488、1489,89C51,

21、采用MAX232芯片接口的PC機(jī)與89C51單片機(jī)串行通信接口電路,只需單一的+5V電源即可,Tin、Rout-接單片機(jī) Rin、Tout-接PC機(jī) Tin、Tout成對使用 Rin、Rout成對使用 T、R是針對單片機(jī)的動作命名的,PC機(jī)一般使用通用異步接收器/發(fā)送器(8250) 或16c550/作為串行通訊的控制器,使用9針或25針的接插件將串行口的信號送出。,一、PC機(jī)串口資源及編程使用方法 PC機(jī)一般有COM1和COM2兩個串口。,8250系列寄存器的定義:,使用串口必須先初始化,有以下4個步驟,例:設(shè)COM1的波特率為9600,則 outportb(0 x3fb,0 x80);/*寫

22、線路控制寄存器,訪問波特率因子寄存器*/ outportb(0 x3f8,0 x0c);/*寫入波特率因子低字節(jié)*/ outportb(0 x3f9,0 x00);/*寫入波特率因子高字節(jié)*/, 設(shè)置波特率,PC機(jī)串口初始化, 設(shè)置數(shù)據(jù)格式 例:設(shè)數(shù)據(jù)為7位,1位起始位,1位停止位,偶校驗,則設(shè)置如下: outportb(0 x3fb,0 x1a); 設(shè)置操作方式 不允許中斷: outportb(0 x3fc,0 x03); 允許中斷: outportb(0 x3fc,0 x0b); 自測試工作方式,且不允許中斷: outportb(0 x3fc,0 x13); 設(shè)置中斷允許寄存器 開放中斷語

23、句: outportb(0 x3f9,0 x0f);,PC機(jī)串口初始化,例1 將PC機(jī)的COM1初始化為9600波特率、7位數(shù)據(jù)、偶校驗、1位停止位、不中斷,則初始程序如下: initcom1() outportb(0 x3fb,0 x80); /*寫線路控制寄存器,訪問波特率因子寄存器*/ outportb(0 x3f8,0 x0c); /*寫入波特率因子低字節(jié)*/ outportb(0 x3f9,0 x00); /*寫入波特率因子高字節(jié)*/ outportb(0 x3fb,0 x1a); /*設(shè)數(shù)據(jù)為7位,1位起始 位,1位停止位,偶校驗*/ outportb(0 x3fc,0 x03);

24、 /*不允許中斷*/ ,PC機(jī)的發(fā)送、接收程序,例2 PC機(jī)從COM1發(fā)送一個字符,程序如下: send(char sendchar) Int coms; do/*查詢發(fā)送緩沖器是否空*/ coms=inportb(0 x3fd); while(coms!=0 x20);查詢等待com1的線路狀態(tài)寄存器(LSR)的第五位的狀態(tài)是否為1,即發(fā)送保持寄存器是否為空?outportb(0 x3f8,sendchar); ,例3 PC機(jī)從COM1接收一個字符,程序如下: char receive() char coms,receivechar; waitok:/*查詢接收數(shù)據(jù)是否有效*/ coms=i

25、nportb(0 x3fd); if(coms&0 x01)=0) goto waitok; receivechar= inportb(0 x3f8); return receivechar; ,二、PC機(jī)與單片機(jī)雙機(jī)通信 PC機(jī)與單片機(jī)構(gòu)成主從式上下位計算機(jī)系統(tǒng)。 例:從PC機(jī)鍵盤上輸入一個字符,然后將這個字符發(fā)送給單片機(jī),單片機(jī)接收到這個字符后,不做任何處理,又將它發(fā)回給PC機(jī),PC機(jī)將這個字符顯示在屏幕上。連接電路如下:,約定: 波特率:2400b/s 信息格式:8位數(shù)據(jù),1位停止位 傳送方式:PC機(jī)采用查詢式收發(fā)數(shù)據(jù),單片機(jī)采用中斷式收發(fā)數(shù)據(jù),由于PC機(jī)是RS-232C電平,單片機(jī)是T

26、TL電平,用MAX232進(jìn)行電平轉(zhuǎn)換。,PC機(jī)與單片機(jī)通信設(shè)計, PC機(jī)的通信軟件 #include “stdio.h” main() char c1,c2; int coms; outportb(0 x3fb,0 x80);/*初始化8250*/ outportb(0 x3f8,0 x30); outportb(0 x3f9,0 x00); outportb(0 x3fb,0 x03);/*8位數(shù)據(jù),1位停止位*/ outportb(0 x3fc,0 x03); c1=getchar();,PC機(jī)發(fā)送程序,MCS-51單片機(jī)通信軟件,主程序,中斷服務(wù)程序,主程序: ORG0000H LJMP

27、MAIN ORG0023H LJMPSERVE MAIN: MOVTMOD,#20H ;初始化T1 MOVTH1,#0F3H MOVTL1,#0F3H MOVSCON,#50H;串行口為方式1,REN=1 MOVPCON,#80H;SMOD=1 SETBTR1 SETBEA SETBES HERE: SJMPHERE,單片機(jī)接收程序,中斷服務(wù)程序: SERVE:CLREA;中斷服務(wù)程序 CLRRI PUSHPSW;保護(hù)現(xiàn)場 PUSHACC MOVA,SBUF;接收PC機(jī)發(fā)來的字符 MOVSBUF,A;將字符回送給PC機(jī) WAIT:JNBTI,WAIT;等待發(fā)送完畢 CLRTI POPACC;恢

28、復(fù)現(xiàn)場 POPPSW SETBEA RETI END,三、PC機(jī)與單片機(jī)通訊多機(jī)通信 多機(jī)通信的關(guān)鍵問題:識別單片機(jī)!給單片機(jī)編號。 怎樣識別單片機(jī)?,從PC機(jī)和單片機(jī)幀格式可知:通過軟件編程,使得PC機(jī)在發(fā)送地址(單片機(jī)編號)時,奇偶位為1,發(fā)送數(shù)據(jù)時為0;單片機(jī)接收時,TB8為1表示收到的地址,為0表示收到的數(shù)據(jù)。,PC機(jī)與單片機(jī)通訊多機(jī)通信,例:從PC機(jī)的鍵盤上輸入單片機(jī)的編號,要求PC機(jī)與該單片機(jī)進(jìn)行通信測試,從鍵盤上輸入一個字符,發(fā)送給某單片機(jī),單片機(jī)受到該字符后,又發(fā)回給PC機(jī),在屏幕上顯示出來。 由于RS-232C不能實現(xiàn)多機(jī)通信,故采用RS-422標(biāo)準(zhǔn)。電路如下:,PC機(jī)與單片

29、機(jī)的多機(jī)通信,圖中75174是長線發(fā)送器,它將單端輸入信號變成差動輸出信號,并增強(qiáng)驅(qū)動能力。 75175是長線接收器,它將差動輸入信號變成單端輸出信號。,什么是差分信號? 一個差分信號是用一個數(shù)值來表示兩個物理量之間的差異。 一個差分信號作用在兩個導(dǎo)體上,信號值是兩個導(dǎo)體間的電壓差。 采用差分信號有什么好處 ? 因為你在控制基準(zhǔn)電壓,所以能夠很容易地識別小信號。 它對外部電磁干擾(EMI)是高度免疫的。 在一個單電源系統(tǒng),能夠從容精確地處理雙極信號,多機(jī)通訊程序設(shè)計,程序清單: #include “stdio.h” main() char c1,c2,n1,n2; int coms; outp

30、ortb(0 x3fb,0 x80);/*初始化8250*/ outportb(0 x3f8,0 x30); outportb(0 x3f9,0 x00); outportb(0 x3fb,0 x2b);/*8位數(shù)據(jù),1位停止,奇偶校驗位為1*/ outportb(0 x3fc,0 x03);/*PC機(jī)處于發(fā)送地址狀態(tài)*/ outportb(0 x3f9,0 x00);/*禁止8250中斷*/ printf(“Please input the number of MCS:n”); scanf(“%c”,&n1); do/*查詢發(fā)送移位寄存器是否空*/ coms=inportb(0 x3fd)&0 x40; while(coms!=0 x40); outportb(0 x3f8,n1);/*PC機(jī)發(fā)送單片機(jī)地址編號*/ outportb(0 x3fc,0 x01);/*PC機(jī)處于接收狀態(tài)*/ waitok1:/*查詢單片機(jī)返回的編號是否有效*/ coms=inportb(0

溫馨提示

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

評論

0/150

提交評論