[發明專利]一種結構化文本代碼處理方法和系統在審
| 申請號: | 201710052306.5 | 申請日: | 2017-01-22 |
| 公開(公告)號: | CN106844310A | 公開(公告)日: | 2017-06-13 |
| 發明(設計)人: | 陳宏君;張磊;周磊;譚良良;劉克金;文繼鋒;徐衛峰;周強;牛洪海 | 申請(專利權)人: | 南京南瑞繼保電氣有限公司;南京南瑞繼保工程技術有限公司 |
| 主分類號: | G06F17/22 | 分類號: | G06F17/22 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 211106 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 結構 文本 代碼 處理 方法 系統 | ||
1.一種結構化文本代碼處理方法,其特征在于,包括:
將結構化文本代碼按照程序組織單元轉換為C代碼文件;
在上述轉換過程中嵌入預定義的接口函數;
將各個程序組織單元轉換后的C代碼文件編譯為獨立的二進制組件庫;
裝置獲取并加載若干上述二進制組件庫,運行接口函數。
2.如權利要求1所述的一種結構化文本代碼處理方法,其特征在于,裝置的功能代碼由若干編譯后二進制組件構成,裝置在初始化時加載各個組件,獲取固定名稱的C接口函數地址,形成初始化、運行函數鏈表。
3.如權利要求1所述的一種結構化文本代碼處理方法,其特征在于,裝置運行過程中,替換更新二進制組件庫;
裝置在非實時線程中更新替換加載組件,記錄新的接口函數地址,在實時任務運行階段更新組件接口函數地址,實現組件增量更新。
4.如權利要求1所述的一種結構化文本代碼處理方法,其特征在于,單個程序組織單元轉換后的C代碼文件包括如下內容:輸入變量聲明、輸出變量聲明、功能塊實例名聲明、系統功能回調函數指針變量、組件的初始化接口函數、組件的任務接口函數、組件變量讀寫接口函數。
5.如權利要求1所述的一種結構化文本代碼處理方法,其特征在于,在代碼轉換前,預先建立IEC61131-3標準定義的變量類型、函數、功能塊、語句的轉換映射表,根據轉換映射表,將結構化文本代碼轉換為有限子集的C代碼。
6.如權利要求1所述的一種結構化文本代碼處理方法,其特征在于,所述的裝置包括嵌入式裝置和PC機虛擬裝置;
針對嵌入式Linux操作系統的裝置,組件編譯為*.so文件;
針對嵌入式Vxworks操作系統的裝置,組件編譯為*.cdf文件;
針對PC機虛擬裝置,組件編譯為*.dll文件。
7.如權利要求2所述的一種結構化文本代碼處理方法,其特征在于,裝置在加載組件時,將全局變量讀寫接口函數地址賦給組件內系統功能回調函數指針變量,組件之間的數據交互通過調用函數指針實現。
8.一種結構化文本代碼處理系統,其特征在于,所述系統包括:結構化文本編輯模塊、代碼轉換模塊、代碼編譯模塊、通信模塊和系統軟件模塊,其中:
所述的結構化文本編輯模塊,提供文本編輯界面,編寫結構化文本代碼,并以程序組織單元為單位存儲多個文本代碼;
所述的代碼轉換模塊,以程序組織單元為單位分析結構化文本代碼,轉換為對應的C代碼文件,并在C代碼中嵌入系統軟件模塊預定義的接口函數;
所述的代碼編譯模塊,自動形成Makefile文件,調用嵌入式裝置或PC機虛擬裝置對應的編譯器,將C代碼文件編譯形成二進制組件庫;
所述的通信模塊,用于將編譯后的二進制組件傳輸到裝置指定目錄;
所述的系統軟件模塊,運行在裝置中;
裝置系統軟件模塊在初始化時加載各個組件,獲取固定名稱的C接口函數地址,形成初始化、運行函數鏈表;
在實時任務中運行各個組件的任務函數;
裝置運行過程中,系統軟件模塊的非實時線程可更新替換加載組件,記錄新的接口函數地址,在實時任務運行階段更新組件接口函數地址,實現組件增量更新。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京南瑞繼保電氣有限公司;南京南瑞繼保工程技術有限公司,未經南京南瑞繼保電氣有限公司;南京南瑞繼保工程技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710052306.5/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種連桿式偏心破袋機
- 下一篇:一種含導電無紡布底膜的PET膜的撕膜設備





