新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 多任務TDCS車站分機通信協議的設計

        多任務TDCS車站分機通信協議的設計

        作者: 時間:2011-07-06 來源:網絡 收藏

        摘要:為了處理從鐵路局調度中心、車務終端和計算機聯鎖設備接收的各種信息,在此基于Windows操作系統了實時多程序。在多程序中,使用消息機制和消息緩沖區實現多線程之間的,使用信號量和互斥量實現多線程之間的同步;針對以太網和串口任務,建立了相應的數據結構,并了一個數據包分析算法來解析自定義。實踐證明,該具有響應速度快、適應性強的特點。
        關鍵詞:;;多任務;通信

        列車調度指揮系統()是實現鐵路各級運輸調度對列車進行透明指揮、實時調整、集中控制的現代化信息系統,它由鐵道部、鐵路局中心局域網及基層網組成。TDCS車站是車站基層網的設備,起到信息的采集、上傳及下發的作用,在整個系統中占有非常重要的地位。

        1 功能分析
        在車站分機系統中,車站分機軟件主要實現兩個方面的功能:
        (1)接收鐵路局調度中心和車務終端的調度命令,經過命令解析處理后,經無線調度命令設備發送至列車執行;
        (2)接收計算機聯鎖設備、無線車次號設備、無線調度命令設備發送的狀態信息,經過解析和重新封裝后,將狀態信息發送到鐵路局調度中心和車務終端。
        由以上分析可知,系統主要有以下3個功能模塊:接收狀態模塊、接收命令模塊和數據處理模塊。其中,接收狀態模塊由RS 422串口通信方式實現;接收命令模塊由以太網通信方式實現;數據處理模塊主要負責數據的處理和發送。

        2 多任務模型的創建
        基于Windows操作系統,針對上述3個模塊,本文分別建立了3個任務:串口通信任務、以太網通信任務、數據處理任務。其中數據處理任務作為主線程,包含數據的接收與上傳,其處理過程如下:
        (1)接收線程收到數據,放入緩沖區,并用PostMessage()向主線程發送消息,通知主線程有數據存入緩沖區;
        (2)主線程使用ReadFile()函數讀取緩沖區數據;
        (3)主線程判斷收到的數據是否有變化:若有變化,調用WriteFile()函數或SendData()函數發送消息,并將定時器清除;否則,繼續等待。數據處理任務的具體流程如圖1所示。

        本文引用地址:http://www.104case.com/article/156093.htm

        a.JPG


        在該系統中,使用AfxBeginThread()函數創建以太網通信任務、串口通信任務和數據處理任務之后,用消息機制實現了多任務之間的通信,而用信號量、互斥等方式實現了線程之間全局變量和函數的同步。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 延吉市| 宽城| 建始县| 安乡县| 五河县| 四平市| 久治县| 英吉沙县| 上犹县| 周至县| 三江| 利津县| 舒城县| 志丹县| 东乡县| 安仁县| 嘉祥县| 民权县| 洪湖市| 准格尔旗| 通化市| 股票| 宁河县| 镇康县| 东台市| 潞城市| 康定县| 勃利县| 毕节市| 枞阳县| 景泰县| 崇阳县| 新营市| 淮滨县| 红河县| 乌兰浩特市| 彩票| 陵川县| 汾西县| 乐清市| 分宜县|