大地资源网视频在线观看新浪,日本春药精油按摩系列,成人av骚妻潮喷,国产xxxx搡xxxxx搡麻豆

您現在的位置:智能制造網>技術中心>RS 232串口多方控制的實現

直播推薦

更多>

企業動態

更多>

推薦展會

更多>

RS 232串口多方控制的實現

2009年03月11日 17:57:25人氣:1530來源:浙江啟揚智能科技有限公司

RS 232串行通訊是各類工程應用中經常使用的通訊方式之一,但其點對點的通訊方式經常會在使用中帶來不便。

       一般的RS 232通訊應用,經常由一個控制方控制一臺設備,或采用菊花鏈方式連接,根據通訊地址的不同,由一個控制方控制多臺設備。但在工程應用中卻經常會遇到2臺或2臺以上的PC機需要控制同一臺設備,即由多個控制方控制一臺設備的情況,而為受控設備僅具備1個RS 232串口,這時需要有一臺能夠實現RS 232串口多方控制的設備,本文針對這種設備的其中一種比較*的設計方法進行說明。該設備不僅成本低,實現方法簡單,而且功能可擴展,在工程中具有較強的適用性,能滿足多種復雜控制的需要。

       l硬件設計

       在控制系統中,控制方和被控設備的通訊協議和控制程序是固定的,在設計中不能改變,只能通過一臺中間設備,即串口擴展設備,對控制方的命令進行一定的解析處理,從而實現控制方和被控方之間的協調應答。本文選用AT89S52單片機作為串口擴展設備的核心控制器,系統的硬件原理圖如圖1所示。

 

       系統中的AT89S52單片機全兼容In公司MCS51系列單片機的結構和指令,片上具有8 kB的可擦除在線可編程存儲器[1]。串口擴展部分采用TI公司的TL16C554[2],可擴展4個串口;該芯片直接與單片機連接,根據設定可自動接收來自4個串口的數據并將其存儲在內置的FIFO中,并給出中斷信號,可使單片機通過外部中斷進行處理;同時,可將單片機寫入的數據通過的串口發送。注:通過對其寄存器的設置可實現更多的功能。使用MAX202進行TTL電平到RS 232電平的轉換。若考慮設備間不共地的問題,可在MAX202與TL16C554之間,以及MAX202與單片機之間加光隔進行保護。

       系統中把單片機本身的串口作為主串口,用于連接被控設備,另外4個擴展串口,用于連接4個控制方。當多個控制方同時連續發送較多的命令數據時,為了保證對所有數據的完整接收,需要將沒有來得及處理的數據做暫時的存儲。AT89S52單片機本身帶有256 B內置的RAM,在很多情況下并不能滿足使用需要。DALLAS公司的DSl225含8 k×8 b非易失性SRAM,可作為外置的擴展存儲器件。該器件的讀寫速度達到70 ns,完夠滿足對數據的即時讀寫[3]。

       2程序設計

       2.1數據存儲空間的分配

       程序設計時,首先應對數據空間進行規劃。在該系統中,根據需要,從AT89S52內部8 k的數據存儲器中劃分出5塊區域,做5個FIFO數據隊列,每個FIFO隊列l 536 B空間,分別用于存儲來自5個端口的數據。剩下的512 B作數據存儲的備用空間。

       2.2 程序模塊

       程序采用模塊化的設計思想,以方便修改、移植和檢錯。整個控制程序由主程序、中斷、命令處理模塊、回送處理模塊4部分組成,實現原理如下:

      (1)中斷

       串行口中斷和外部中斷,用于接收來自5個端口的數據,分端口將接收到的數據存入對應的FIFO,這里對數據不做其他的判斷或處理,盡量用zui少的指令完成,減少中斷時間。以避免多個串口同時受到大量數據時,發生數據丟失。

       (2)命令處理模塊

       針對控制方端口FIFO,若控制方FIFO中存在數據,根據協議對數據進行判斷,直接清除不符合協議的數據;對符合協議的命令數據,判斷完整條命令后,通過受控方端口向受控設備轉發整條命令,然后清掉FIFO中此條命令,如此逐步清空FIFO。

        (3)回送處理模塊

       針對受控方端口FIFO,若受控方FIFO中存在數據,與"命令處理模塊"類似,根據協議對數據進行判斷,清除不符合協議的數據,對符合協議的回送數據,判斷完整后,同時通過4個控制方端口向控制設備回送數據,然后清掉FIFO中此條命令,如此逐步清空FIFO。

        (4)主程序模塊

        在主程序中,循環判斷5個FIFO中是否有數據。若控制方FIFO存在數據,進入命令處理模塊,清空FIFO后返回主程序,繼續循環;若受控方FIFO存在數據,進入回送處理模塊,清空FIFO后返回主程序,繼續循環。這樣,每個控制方發送的命令,都會在FIFO中有短暫的緩沖,在多控制方同時發送命令時,本設備可分先后將所有收到的命令逐個發送到受控設備,不會因發生沖突而造成數據丟失。對于受控設備回送的數據,一般包含了工作狀態及配置等信息,需要同時回送到各個控制設備,使各個控制設備能夠及時做相應的調整。

        3功能擴展

        按照上述方法設計的該系統不僅適用于多控制方控制一個串口情況,還可根據工程中遇到的各種需求進行功能擴展。

        (1)一個控制設備和多個受控設備

        雖然,若被控的受控設備提供的通訊協議包含地址,可通過菊花鏈方式分別控制,但在工程應用中有相當多的設備協議中并不包含地址。如果要實現分別控制,可使用本設備,對每個下位端口分別分配一個虛擬地址,在命令處理模塊中加入地址判斷,使收到的命令僅向對應地址的下位端口發送。

        (2)多個控制設備和多個受控設備

       在這種情況下,普通的連接方法不能滿足多設備之間協調通訊的需要。若使用本設備,只需在命令處理模塊和回送處理模塊中,修改相應的端口數目即可。控制方和受控方的功能不變。

        (3)在控制設備和受控設備中存在著多種不同的通訊協議。此時,可利用本設備,添加協議轉換模塊,使之具備多種協議的解析功能,在收和發之間進行對應的協議轉換,這種方法,比工程中通常采用更改控制設備的控制程序的方法更簡單、方便。

       (4)上述幾種情況并存。尤其是控制設備與受控設備協議不同,而多個受控設備協議沒有地址,且需要分別控制時。本設備也可對每個受控方端口分別分配一個虛擬地址來實現分控,并在收發中間進行通訊協議的轉換。

       4 結 語

       本文設計的串口擴展設備,不但成本低、設計簡單,而且可滿足工程上串口應用的多種不同需要,具有較高的使用價值,對工程技術人員具有一定的參考意義。
 

全年征稿/資訊合作 聯系郵箱:1271141964@qq.com

免責聲明

  • 凡本網注明"來源:智能制造網"的所有作品,版權均屬于智能制造網,轉載請必須注明智能制造網,http://www.xashilian.com。違反者本網將追究相關法律責任。
  • 企業發布的公司新聞、技術文章、資料下載等內容,如涉及侵權、違規遭投訴的,一律由發布企業自行承擔責任,本網有權刪除內容并追溯責任。
  • 本網轉載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品來源,并自負版權等法律責任。
  • 如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。

<
更多 >

工控網機器人儀器儀表物聯網3D打印工業軟件金屬加工機械包裝機械印刷機械農業機械食品加工設備制藥設備倉儲物流環保設備造紙機械工程機械紡織機械化工設備電子加工設備水泥設備海洋水利裝備礦冶設備新能源設備服裝機械印染機械制鞋機械玻璃機械陶瓷設備橡塑設備船舶設備電子元器件電氣設備


我要投稿
  • 投稿請發送郵件至:(郵件標題請備注“投稿”)1271141964.qq.com
  • 聯系電話0571-89719789
工業4.0時代智能制造領域“互聯網+”服務平臺
智能制造網APP

功能豐富 實時交流

智能制造網小程序

訂閱獲取更多服務

微信公眾號

關注我們

抖音

智能制造網

抖音號:gkzhan

打開抖音 搜索頁掃一掃

視頻號

智能制造網

公眾號:智能制造網

打開微信掃碼關注視頻號

快手

智能制造網

快手ID:gkzhan2006

打開快手 掃一掃關注
意見反饋
關閉
企業未開通此功能
詳詢客服 : 0571-87858618
主站蜘蛛池模板: 灵石县| 扶余县| 平舆县| 宜兰市| 新兴县| 郯城县| 来凤县| 玉龙| 永吉县| 北流市| 伊通| 康保县| 化德县| 东莞市| 炉霍县| 宁南县| 冕宁县| 衡南县| 夹江县| 怀化市| 利川市| 绍兴县| 启东市| 邵阳县| 五大连池市| 江山市| 互助| 景泰县| 临夏市| 涪陵区| 丰城市| 富裕县| 科技| 陕西省| 普宁市| 梅河口市| 隆林| 荔浦县| 新巴尔虎右旗| 青田县| 普洱|