新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機串口通信

        51單片機串口通信

        作者: 時間:2012-10-23 來源:網絡 收藏

        波特率計算:在了解了串行口相關的之后,我們可得出其通信波特率的一些結論:

        ① 方式0 和方式2 的波特率是固定的。

        在方式0 中, 波特率為時鐘頻率的1/12, 即fOSC/12,固定不變。

        在方式2 中,波特率取決于PCON 中的SMOD 值,即波特率為:

        51單片機串口通信

        當SMOD=0 時,波特率為fosc/64 ;當SMOD=1 時,波特率為fosc/32。

        ② 方式1 和方式3 的波特率可變,由定時器1 的溢出率決定。

        51單片機串口通信

        當定時器T1 用作波特率發生器時,通常選用定時初值自動重裝的工作方式2( 注意:不要把定時器的工作方式與串行口的工作方式搞混淆了)。其計數結構為8 位,假定計數初值為Count,單片機的機器周期為T,則定時時間為(256 ?Count)×T 。從而在1s內發生溢出的次數(即溢出率)可由公式(1)所示:

        51單片機串口通信

        從而波特率的計算公式由公式(2)所示:

        51單片機串口通信

        在實際應用時,通常是先確定波特率,后根據波特率求T1 定時初值,因此式(2)又可寫為:

        51單片機串口通信

        二、電路詳解

        51單片機串口通信

        下面就對圖1 所示電路進行詳細說明。

        圖1 串行通信實驗電路圖

        最小系統部分(時鐘電路、復位電路等)第一講已經講過,在此不再敘述。我們重點來了解下與計算機通信的RS-232 接口電路。可以看到,在電路圖中,有TXD 和RXD 兩個接收和發送指示狀態燈,此外用了一個叫MAX3232 的芯片,那它是用來實現什么的呢?首先我們要知道計算機上的串口是具有RS-232 標準的串行接口,而RS-232 的標準中定義了其電氣特性:高電平“1”信號電壓的范圍為-15V~-3V,低電平“0”

        信號電壓的范圍為+3V~+15V。可能有些讀者會問,它為什么要以這樣的電氣特性呢?這是因為高低電平用相反的電壓表示,至少有6V 的壓差,非常好的提高了數據傳輸的可靠性。由于單片機的管腳電平為TTL,單片機與RS-232 標準的串行口進行通信時,首先要解決的便是電平轉換的問題。一般來說,可以選擇一些專業的集成電路芯片,如圖中的MAX3232。MAX3232 芯片內部集成了電壓倍增電路,單電源供電即可完成電平轉換,而且工作電壓寬,3V~5.5V 間均能正常工作。其典型應用如圖中所示,其外圍所接的電容對傳輸速率有影響,在試驗套件中采用的是0.1μF。

        值得一提的是MAX3232 芯片擁有兩對電平轉換線路,圖中只用了一路,因此浪費了另一路,在一些場合可以將兩路并聯以獲得較強的驅動抗干擾能力。此外,我們有必要了解圖中與計算機相連的DB-9 型RS-232的引腳結構(見圖2)。

        51單片機串口通信

        圖2 DB-9連接器接口圖

        其各管腳定義如下(見表4)。

        51單片機串口通信

        表4 DB-9型接口管腳定義

        51單片機相關文章:51單片機教程


        單片機相關文章:單片機教程


        單片機相關文章:單片機視頻教程


        單片機相關文章:單片機工作原理


        數字通信相關文章:數字通信原理


        通信相關文章:通信原理




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 长白| 建始县| 浦北县| 宁都县| 彩票| 大安市| 通化县| 登封市| 敦化市| 阿拉善盟| 隆德县| 桂阳县| 游戏| 县级市| 荔浦县| 尉犁县| 周口市| 岳池县| 石景山区| 自贡市| 博客| 凌海市| 阳东县| 堆龙德庆县| 英吉沙县| 招远市| 佛冈县| 临澧县| 会东县| 色达县| 遂宁市| 皋兰县| 青川县| 黄石市| 大丰市| 高淳县| 志丹县| 平阴县| 莫力| 唐河县| 临江市|