李旋旋
摘 要 MCS-51可以利用其串口進行數據通信,在其系列機型中都只提供了一個串口,這就為一些需要多串口通信的應用和控制編程帶來了一定的不便,本文從技術角度和實踐應用等兩個方面給出了解決方案,在實現方面主要是通過多級協同、多串口單片機的選擇或者多路模擬開關的方式進行實現,其中多機協同是較為通用的實現方式,本文在最后對這種實現方式進行數據通信的具體過程進行了簡要的介紹,希望可以通過本文使得讀者能夠了解多串口通信技術在MCS-51單片機的實現方式和簡單的應用。
【關鍵詞】MSC-51 單片機 多串口通信 技術實現
1 MCS-51單片機介紹
單片機是包含中央處理器、隨機存儲器(RAM)、只讀存儲器(ROM)、中斷系統、定時計數器多種I/O等功能部件的計算機電路芯片。在單片機系列中,由英特爾(Intel公司)于1980年出品的8位MSC-51系列單片機在工業控制、機械制造等領域具有廣泛的應用。早期MCS-51單片機時鐘頻率是12MHZ,現在主流的單片機時鐘普遍達到了40MHZ以上,功能性、運算速率以及可靠性得到了進一步的提升。51系列單片機根據片內存儲器的差異性,分為8031(片內沒有存儲器)、8051(4kb ROM)、8751(4kb EPROM)、8951(4kb EEPROM)四個機型,都有5個中斷源、128b RAM、2個十六位的定時(計數)器,在實際開發過程中8031型的單片機,開發易用性和性價比較高,應用更為普遍。上百種的指令條數,使得51系列單片機控制功能豐富;由于其芯片是按照工業控制標準設計的,程序代碼固化于ROM中,整個單片機的抗干擾能力和對于病毒(或者惡性代碼)破壞性抵抗性更加有效。
51系列單片機有4個并口(8位P0-P4)和1個串口(全雙工)可用于通信,其中串口主要用于線路中繼、協議轉換等場合,但是在某些場合這種單一串口的應用局限性也比較明顯,因此采取多串口通訊成為很多情況下的必須選擇,下面本文將從MCS-51單片機多串口的技術實現和多路數據采集應用兩個方面進行相關內容的簡要探討。
2 常見的MCS-51單片機多串口通訊實現介紹
2.1 多單片機協同工作實現串口通訊
單片機具有多串口通信功能的種類是十分少的,51系列單片機之間串口可以相互兼容,同時也有其他種類的單片機的串口與其相兼容,同時在性價比和可行性方面采取多級協同作業實現串口通訊的技術可行性也是非常簡單的。多單片機系統工作主要采取一種主從式的工作模式進行工作,由于單片機的價格比較低,因此采取這種多單片機協同工作來實現串口通訊的手段是一種非常通用的形式,這種多級協作模式在協議轉換數據處理方面有著極其的廣泛的應用,同時,這種方式由于多級協同只需要對單一的協議進行操作,這對于開發工作是十分有利的。在文章的最后,本文會對這種多級協作模式進行簡要的介紹。
2.2 “軟串口”實現——多路模擬開關
多路模擬開關同樣是一種易于實現和便于操作的多路串口數據操作方式。多路模擬主要是應用多路模擬開關,對聯通的各個數據通路進行分時操作,避免數據交叉的情況產生,在技術上這種多路模擬開關是非常易于實現的,但是需要軟件的額外開銷,這種實現方式沒有直接硬件形式穩定以及對時鐘的精確控制,這是在技術應用時需要注意的方面。總之,這種多路模擬也是一種非常便捷的多串口通訊實現方式。
2.3 擴展串口實現多串口數據通信
MCS-51系列的單片機中有兩種芯片類型可供選用,即8250(DIP40進行封裝處理實現)和8251(DIP28進行封裝處理實現),通過對這兩個芯片進行擴展即可實現多串口通信,但是需要指出的是利用串口擴展最大缺陷在于芯片由于經過擴展處理,芯片的體積必然會有所增大,這就導致了整個單片機系統變得相對復雜和龐大,因此,利用這種方式實現單片機多串口通信是一種慎用的方式。
除此之外,對于多串口的實現還可以直接利用多串口單片機的方式,但是由于這種單片機在價格方面較高,這種方式不作為推薦方式。
3 利用MCS-51單片機多級多串口實現多路數據通信分析
首先通過總線將主機和從機進行連接,從機可以是多個單片機,主機主要負責整個系統運行控制和數據的收集工作,由主機從TXD端口將數據信息進行發出,其他從機接受信號。任何從機都可以與主機進行通信,而從機之間的通信則必須經過主機。為了保障通信的穩定性,主機根據信息發送的地址判斷信息來源,同時從機接受到的信息如果和自身地址相一致,則進行處理,否則則不做任何操作,這樣通過引入尋址方式完成了多級多串口通信。
4 小結
MCS-51單片機由于其高度穩定性、較強的數據處理能力以及非常優異的性價比,使其在工業控制領域有著極其廣泛的應用,在應用MCS-51單片機進行編程時,其串口僅有一個,這就給在進行一些特殊控制過程提供了一定的需求,即進行單片機多串口數據通信,本文以MCS-51單片機的概念入手,簡單介紹了51單片機的基本情況,并以此給出了多串口數據通信的實現思路,可以通過多級協同處理、軟件模擬,多路模擬等方式來實現,最后文章有介紹了最為常用的多級協同處理方式進行數據采集的過程。希望能夠通過本文,為MCS-51單片機的多串口通信應用提供一定的參考。
參考文獻
[1]郭勇,何軍.STM32單片機多串口通信仿真測試技術研究[J].無線電工程,2015(08):6-9+42.
[2]周岑,周振興.MCS-51單片機多串口通訊技術應用分析[J].中國高新技術企業,2015(27):65-66.
[3]鄒益民.S7-200 PLC與單片機間ModBus主從通信方式[J].工業儀表與自動化裝置,2015(03):19-21+85.
[4]詹平紅,丁函,李文娟.單片機多串口通信擴展的設計及其應用[J].自動化與儀器儀表,2015(02):125-127.