[發明專利]圖形化編程的自動編譯方法有效
| 申請號: | 201710269436.4 | 申請日: | 2017-04-24 |
| 公開(公告)號: | CN107168698B | 公開(公告)日: | 2020-11-24 |
| 發明(設計)人: | 黃翰;秦亮;梁展寧;郝志峰;范衠 | 申請(專利權)人: | 華南理工大學 |
| 主分類號: | G06F8/34 | 分類號: | G06F8/34;G06F8/41 |
| 代理公司: | 廣州粵高專利商標代理有限公司 44102 | 代理人: | 何淑珍 |
| 地址: | 510640 廣*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 圖形 編程 自動 編譯 方法 | ||
1.一種圖形化編程的自動編譯方法,其特征在于,包括以下步驟:
(a)用戶自由組合圖形化模塊生成圖形化程序;
(b)圖形化程序內存分配,生成圖形化程序內存分配表,以實現對控制器的內存管理和操作;
(c)圖形化程序線程分配,對圖形化程序的存儲結構進行分析,得到圖形化程序線程分配表,以達到圖形化程序多線程執行,實現線程管理;
包括以下步驟:
(c-1)獲取圖形化程序的儲存結構-森林;
(c-2)深度遍歷森林中的樹結構,如果節點是根節點則創建線程,且該線程為圖形化程序的主線程,并記錄線程信息,其包括線程ID和線程起始模塊ID;
(c-3)若節點是非根節點,則判斷父節點的子節點的個數,如果該節點是父節點的第一個孩子,則不進行任何操作,繼續遍歷;如果該節點不是父節點的第一孩子,則分配新線程,記錄線程信息;
(c-4)若節點是葉子節點,則表示該節點是線程的終止節點,將該節點ID作為線程結束ID,圖形化程序包含的葉子節點等于圖形化程序包含的線程數;
(c-5)最終構造出圖形化程序的線程分配表,以滿足對圖形化程序的多線程管理和操作;
(d)圖形化程序解析模塊根據圖形化程序的存儲結構,對圖形化程序中每個圖形化模塊在圖形化程序中的位置進行分析,得到圖形化模塊需要的額外指令;
(e)圖形化程序的可執行文件生成模塊在(b)、(c)、(d)步驟的基礎上,生成圖形化程序中每個圖形化模塊對應的字節數組,然后按照圖形化程序遍歷的順序將圖形化模塊的字節數組串接一個完整的可執行文件;
(f)通過HID或者藍牙數據通信,將(e)步驟生成的可執行文件傳輸至控制器,控制器按照指令執行相應的動作,以達到圖形化程序的預期動作效果。
2.根據權利要求1所述的一種圖形化編程的自動編譯方法,其特征在于,步驟(b)包括以下步驟:
(b-1)獲取圖形化程序的儲存結構即森林結構;
(b-2)遍歷圖形化程序對應的樹結構,根據樹節點ID獲取圖形化模塊實體;
(b-3)根據圖形化模塊獲取對應的參數內存分配列表,其包含參數初始化的順序,以保證相關動作能正確執行;
(b-4)根據參數類型,分配指定大小的內存空間,然后記錄參數分配的內存基址;
(b-5)對特殊參數,包括用戶自定義參數和資源型參數,進行額外處理,以保證滿足圖形化模塊的內存要求和程序的健壯性;
(b-6)最終生成圖形化程序內存分配表,以實現對控制器內存進行管理和操作。
3.根據權利要求1所述的一種圖形化編程的自動編譯方法,其特征在于,步驟(e)包括以下步驟:
(e-1)獲取圖形化程序存儲結構-森林;
(e-2)根據不同功能需求遍歷森林,功能主要包括圖形化程序整體下傳、圖形化程序部分下傳和圖形化樹下傳,然后根據具體要求深度遍歷森林中的樹:
(e-3)根據樹節點ID獲取對應的圖形化模塊實體,根據圖形化模塊類型和模式調用其對應的XML文件,在解析圖形化模塊對應XML指令集中,需要借助指令解析XML文件來對圖形化模塊包含的指令集進行解析和替換,以生成具有具體功能的圖形化模塊字節數組;
(e-4)在解析和替換圖形化模塊XML文件時,并不能生成完整的圖形化模塊字節數組,當產生程序地址空缺,資源地址欠缺,先用零來填充程序地址,以形成半完整的圖形化模塊字節數組并記錄圖形化模塊的缺省信息,最終形成圖形化程序的程序地址缺省表即ROM地址缺省表;
(e-5)根據遍歷順序,依次分配圖形化模塊的程序地址,根據生成的圖形化模塊字節數組的大小來決定圖形化模塊占據的ROM存儲空間,最終生成圖形化程序的程序地址分配表即ROM地址分配表;
(e-6)分配完圖形化模塊的程序地址之后,對圖形化程序需要的額外資源進行分配,以滿足圖形化程序中圖形化模塊的資源需求;
(e-7)根據圖形化程序的ROM地址缺省表和圖形化程序ROM地址分配表,對生成的半完整的圖形化模塊字節數組中的空缺ROM地址進行填充,以形成完整的圖形化模塊字節數組;
(e-8)將生成的圖形化模塊字節數組和資源字節數組按照規則連接起來形成圖形化程序最終可執行的字節數組,然后通過通信模塊將數據傳至控制器運行。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華南理工大學,未經華南理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710269436.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:圖形化編程軟件的連線自動避障優化方法
- 下一篇:應用程序修復方法及終端設備





