【正文】
? 16進(jìn)制發(fā)送一個 065536之間的任一數(shù),當(dāng)單片機(jī)收到后在數(shù)碼管上動態(tài)顯示出來,波特率自定。 程序分為主機(jī)程序和從機(jī)程序。其它都按 02H對待。 ?從機(jī)收到復(fù)位命令后回到監(jiān)聽地址狀態(tài)( SM2=1)。 ?從機(jī)發(fā)送數(shù)據(jù)結(jié)束后,要發(fā)送一幀校驗和,并置第 9位( TB8)為 1,作為從機(jī)數(shù)據(jù)傳送結(jié)束的標(biāo)志。 T X DR X D主 機(jī)T X DR X D1 號 從 機(jī)T X DR X D2 號 從 機(jī)T X DR X DN 號 從 機(jī)? ?通信協(xié)議 ?所有從機(jī)的 SM2位置 1,處于接收地址幀狀態(tài)。所謂主從式,即在數(shù)個單片機(jī)中,有一個是主機(jī),其余的是從機(jī),從機(jī)要服從主機(jī)的調(diào)度、支配。 80C51單片機(jī)的串行口為計算機(jī)間的通信提供了極為便利的條件。常用的串行口波特率以及各參數(shù)的關(guān)系如表所示。( T1溢出率) 當(dāng) T1作為波特率發(fā)生器時,最典型的用法是使 T1工作在自動再裝入的 8位定時器方式(即方式 2,且 TCON的 TR1=1,以啟動定時器)。由于輸入的移位時鐘的來源不同,所以,各種方式的波特率計算公式也不相同。如果條件不滿足,則數(shù)據(jù)丟失,且不置位 RI,繼續(xù)搜索 RXD引腳的負(fù)跳變。 第一次移位時,停止位“ 1”移入輸出移位寄存器的第 9位上 ,以后每次移位,左邊都移入 0。 方式 2和方式 3時起始位 1位,數(shù)據(jù) 9位(含 1位附加的第 9位,發(fā)送時為 SCON中的 TB8,接收時為 RB8),停止位 1位,一幀數(shù)據(jù)為 11位。接收過程中,數(shù)據(jù)從輸入移位寄存器右邊移入,起始位移至輸入移位寄存器最左邊時,控制電路進(jìn)行最后一次移位。 方式 0輸出 D 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7寫 入 S B U FR X D ( 數(shù) 據(jù) )T X D ( 移 位 脈 沖 )T I ( 中 斷 標(biāo) 志 ) 方式 0輸入 R E N = 1R X D ( 數(shù) 據(jù) 輸 入 )T X D ( 移 位 脈 沖 )R I = 0D 0 D 1 D 2 D 3D 4D 5 D 6 D 7 方式 0接收和發(fā)送電路 7 4 L S 1 6 4R X DT X DP 1 . 08 0 C 5 1C L RC L KABG N D7 4 L S 1 6 5R X DT X DP 1 . 08 0 C 5 1S / LC L KQG N D 二、方式 1 方式 1是 10位數(shù)據(jù)的異步通信口。主要用于擴(kuò)展并行輸入或輸出口。 PCON中只有一位 SMOD與串行口工作有關(guān) : SMOD( ) 波特率倍增位。在中斷服務(wù)程序中,必須用軟件將其清 0,取消此中斷申請。 ● RB8,在方式 2或方式 3中,是接收到數(shù)據(jù)的第九位 ,作為奇偶校驗位或地址幀 /數(shù)據(jù)幀的標(biāo)志位。由軟件置 REN=1,則啟動串行口接收數(shù)據(jù);若軟件置 REN=0,則禁止接收。通過控制 SM2,可以實現(xiàn)多機(jī)通信。 2247。在計算機(jī)和單片機(jī)組成的 RS485通信系統(tǒng)中,下位機(jī)由單片機(jī)系統(tǒng)組成,上位機(jī)為普通的 PC機(jī),負(fù)責(zé)監(jiān)視下位機(jī)的運(yùn)行狀態(tài),并對其狀態(tài)信息進(jìn)行集中處理,以圖文方式顯示下位機(jī)的工作狀態(tài)以及工業(yè)現(xiàn)場被控設(shè)備的工作狀況。傳輸線采用差動信道,所以它的干擾抑制性極好,又因為它的阻抗低,無接地問題,所以 傳輸距離可達(dá) 1200米 ,傳輸速率可達(dá) 1Mbps。 RS485是一種 多發(fā)送器 標(biāo)準(zhǔn),在通信線路上最多可以使用 32 對差分驅(qū)動器 /接收器。若傳輸過程中混入了干擾和噪聲,由于差分放大器的作用,可使干擾和噪聲相互抵消。為了提高信噪比, RS232C總線標(biāo)準(zhǔn)不得不采用比較大的電壓擺幅。最高傳送速率為 20Kbps。 RS232C定義了數(shù)據(jù)終端設(shè)備( DTE)與數(shù)據(jù)通信設(shè)備( DCE)之間的物理接口標(biāo)準(zhǔn)。如每秒鐘傳送 240個字符,而每個字符格式包含 10位 (1個起始位、 1個停止位、 8個數(shù)據(jù)位 ),這時的比特率為: 10位 240個 /秒 = 2400 bps 傳輸距離與傳輸速率的關(guān)系 串行接口或終端直接傳送串行信息位流的最大距離與傳輸速率及傳輸線的電氣特性有關(guān)。這種校驗方法糾錯能力強(qiáng),廣泛應(yīng)用于同步通信中。 D C ED T E電 話 網(wǎng)D C ED T ER S 2 3 2 C R S 2 3 2 C四、串行通信的錯誤校驗 奇偶校驗 在發(fā)送數(shù)據(jù)時,數(shù)據(jù)位尾隨的 1位為奇偶校驗位( 1或 0)。 半雙工 半雙工 是指數(shù)據(jù)傳輸可以沿 兩個方向 ,但需要分時進(jìn)行。 典型的面向位的同步協(xié)議如 ISO的高級數(shù)據(jù)鏈路控制規(guī)程HDLC和 IBM的同步數(shù)據(jù)鏈路控制規(guī)程 SDLC。然后是 校驗碼 。 SOH為序始 字符( ASCII碼為 01H),表示標(biāo)題的開始, 標(biāo)題 中包含源地址、目標(biāo)地址和路由指示等信息。此時,傳輸數(shù)據(jù)的位之間的距離均為“位間隔”的整數(shù)倍,同時傳送的字符間不留間隙,即保持位同步 關(guān)系, 也保持字符同步 關(guān)系。為使雙方的收發(fā)協(xié)調(diào)