新聞中心

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

        51單片機串口通信實例

        作者: 時間:2013-01-06 來源:網絡 收藏

        最小系統部分(時鐘電路、復位電路等)第一講已經講過,在此不再敘述。我們重點來了解下與計算機的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)。

        圖2 DB-9連接器接口圖

        圖2 DB-9連接器接口圖

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

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

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

        三、程序設計

        本講設計程序如下:

        #include AT89X52.h (1)

        void Init_Com(void) ( 2)

        {

        TMOD = 0x20; ( 3)

        PCON = 0x00; ( 4)

        SCON = 0x50; ( 5)

        TH1 = 0xE8; ( 6)

        TL1 = 0xE8; ( 7)

        TR1 = 1; ( 8)

        }

        void main(void) ( 9)

        {

        unsigned char dat; ( 10)

        Init_Com(); ( 11)

        while(1) ( 12)



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 灵山县| 武城县| 赫章县| 吴堡县| 盐源县| 平邑县| 惠东县| 高淳县| 吉首市| 乐都县| 枣强县| 固镇县| 辉县市| 江油市| 清苑县| 乌审旗| 聊城市| 濮阳市| 凤凰县| 遵义市| 英吉沙县| 祁东县| 象山县| 西乌珠穆沁旗| 疏附县| 白城市| 泾川县| 湖南省| 友谊县| 高陵县| 丹阳市| 维西| 邵东县| 城市| 樟树市| 石泉县| 河曲县| 鄢陵县| 安顺市| 麦盖提县| 五常市|