資源描述:
《單片機原理及應(yīng)用 教學(xué)課件 作者 匡忠輝 第9章--串行通訊.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第九章單片機串行通訊設(shè)計9.1功能要求9.2任務(wù)分析9.3串行通訊技術(shù)9.3.1鍵盤工作特性9.3.2串行通訊基本概念9.4MCS_51單片機串行口9.4.1串行口結(jié)構(gòu)9.4.2串行口控制寄存器9.4.3串行口的工作方式9.5單片機串行通訊設(shè)計9.5.1單片機與單片機之間串行通訊9.1功能要求一.基本要求實現(xiàn)單片機與單片機之間的串行通訊。二.發(fā)揮部分實現(xiàn)單片機與PC機之間的串行通訊?;啬夸?.2任務(wù)分析要完成此任務(wù),主要需解決如下四方面的問題:串行通訊的工作原理;單片機與單片機串行通訊接口電路和程序設(shè)計方法;PC
2、機與單片機串行通訊接口電路的設(shè)計方法;PC機與單片機串行通訊的程序設(shè)計方法?;啬夸?.3.1串行通訊基礎(chǔ)在實際工作中,單片機與外部設(shè)備之間、單片機與單片機之間經(jīng)常需要交換信息,所有這些信息的交換均稱為通訊。通訊按數(shù)據(jù)傳送的方式分為二種,即并行通訊和串行通訊。并行通訊是指數(shù)據(jù)的各位同時進行傳送(發(fā)送和接收)的通訊方式,接口電路如下頁左圖所示,數(shù)據(jù)傳送如下頁右圖所示。由于各位同時傳送,其突出優(yōu)點為傳送速度快,但其缺點為所需的數(shù)據(jù)線較多,數(shù)據(jù)有多少位,就需要多少根數(shù)據(jù)線,因此它一般適用于通訊距離較近的場合,如單片機和打
3、印機之間的通訊等,但當(dāng)通訊距離較遠,將導(dǎo)致成本成倍增加,并且接收數(shù)據(jù)的誤碼率較高。9.3串行通訊技術(shù)回目錄并行通訊的特點通訊軟件控制簡單(無需并—串之間的轉(zhuǎn)換),傳輸?shù)乃俣瓤欤〝?shù)據(jù)各位同時傳送),但傳輸線較多,長距離傳送時成本高,且不利于接收方各位的同時接收,一般應(yīng)用于短距離數(shù)據(jù)通訊?;啬夸洸⑿型ㄓ嵔涌陔娐泛唸D并行通訊數(shù)據(jù)傳送示意圖串行通訊串行通訊是指數(shù)據(jù)的各位依次進行傳送(發(fā)送和接收)的通訊方式,接口電路如圖9-4所示,TXD表示發(fā)送管腳,RXD表示接收管腳,數(shù)據(jù)傳送如圖所示,由于各位依次傳送,通訊時占用同一根
4、數(shù)據(jù)線,其突出優(yōu)點為通訊所需的數(shù)據(jù)線少,但由于傳送時需要進行并—串之間的數(shù)據(jù)轉(zhuǎn)換,因此帶來了通訊速度慢、通訊控制程序復(fù)雜的缺點。但由于在遠距離通訊時,能有效的減少通訊電纜成本,所以在遠距離通訊系統(tǒng)中得到廣泛的運用,串行通訊接口電路簡圖串行通訊數(shù)據(jù)傳送示意圖9.3.2串行通訊基本概念一、串行通訊的傳輸方式串行通訊的傳輸方式一般有三種:1)單工方式只允許數(shù)據(jù)由一個方向傳送。2)半雙工方式即在同一條數(shù)據(jù)線上,在不同的時間段上實現(xiàn)雙向通訊,由于只有一條數(shù)據(jù)線,對于某一具體時刻而言,數(shù)據(jù)只能單方向傳送。3)全雙工方式即在二
5、條不同的數(shù)據(jù)線上,在相同的時間段上也能實現(xiàn)雙向通訊,由于有二條數(shù)據(jù)線,發(fā)送和接收互不干擾,可以同時進行。(a)單工方式(b)半雙工方式(c)全雙工方式回目錄二、異步通訊的通訊協(xié)議和格式起始位:為了實現(xiàn)異步傳輸字符的同步,采用的辦法是使數(shù)據(jù)線在空閑時保持高電平,在傳送每個字符前先發(fā)送一位低電平0,稱為起始位,以通知接收方準備接收數(shù)據(jù)。因此,傳送的每一個字符都用起始位來進行收發(fā)雙方的同步。數(shù)據(jù)位:指傳送的5~8位的數(shù)據(jù),常見的為一個字節(jié)(8位)的數(shù)據(jù),數(shù)據(jù)傳送時低位在前,高位在后。奇偶校驗位:接收方為了檢驗數(shù)據(jù)的正確
6、性,在數(shù)據(jù)發(fā)送完后,可以發(fā)送一位奇偶校驗位,如在發(fā)送方將程序狀態(tài)字PSW中的P標志作為校驗位發(fā)送,在接收方接收到數(shù)據(jù)和校驗位后,再用接收到的數(shù)據(jù)產(chǎn)生的P標志和接收到的校驗位比較,如果相同,認為數(shù)據(jù)正確,如果不相同,表明接收的數(shù)據(jù)出錯。。停止位:為了表示數(shù)據(jù)結(jié)束,并為下一次數(shù)據(jù)傳送的起始位作好準備,一般發(fā)送1或2位的高電平1作為停止位。異步通訊的整體格式三、異步通訊的數(shù)據(jù)傳送過程在數(shù)據(jù)傳送開始前,數(shù)據(jù)線始終保持高電平不變(空閑位),接收方不斷的檢測數(shù)據(jù)線的高低電平狀態(tài)。當(dāng)發(fā)送方開始發(fā)送數(shù)據(jù)前,先發(fā)送起始位,將數(shù)據(jù)線
7、拉低為低電平0。當(dāng)接收方檢測到低電平后,表示數(shù)據(jù)傳送即將開始,作好數(shù)據(jù)接收準備,準備統(tǒng)計接收數(shù)據(jù)位數(shù)。發(fā)送方發(fā)送完起始位后,便發(fā)送數(shù)據(jù)的最低位D0,接收方按照事先約定的速率和節(jié)拍,同步地將數(shù)據(jù)D0移入移位寄存器。并將數(shù)據(jù)位數(shù)計數(shù)器加1。依據(jù)相同的原理繼續(xù)發(fā)送和接收其它的數(shù)據(jù)位,當(dāng)數(shù)據(jù)位發(fā)送到最高位D7時,由于數(shù)據(jù)位數(shù)計數(shù)器達到預(yù)先約定值,便將接收到的數(shù)據(jù)組合為一個字節(jié)。接下來發(fā)送和接收校驗位和停止位,為下一次數(shù)據(jù)傳送作好準備?;啬夸浰摹⒉ㄌ芈什ㄌ芈手笖?shù)據(jù)的傳送速率,表示每秒鐘傳送二進制數(shù)據(jù)的位數(shù),它的單位為b/s
8、,波特率表示了數(shù)據(jù)通訊的快慢。假設(shè)數(shù)據(jù)傳送速率為120字符每秒,而每個字符包含10位(1位起始位、8位數(shù)據(jù)、1位停止位),這時傳送的波特率為:10b/字符×120字符=1200b/s異步串行通訊的波特率一般設(shè)置在50~19200b/s之間。9.4MCS_51單片機串行口MCS_51系列單片機有一個可編程的全雙工串行通訊口,它既可作為UART(通用異步收發(fā)器)使用,又可用作