新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > LabView開發嵌入式應用技巧介紹

        LabView開發嵌入式應用技巧介紹

        作者: 時間:2014-06-03 來源:網絡 收藏

        無論使用什么設計語言,不良的編程技術都會給一個應用的性能帶來負面影響,對一個應用尤其如此。盡管對于絕大部分應用來說,高效率的編程技術是重要的,但對于應用所工作的資源極度缺乏的環境,則要求對性能和存儲器管理給予特別的關注。

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

        本文的討論將圍繞著新的開發模塊進行,這種新工具為嵌入式應用開發人員提供了圖形化系統設計手段。該工具允許用戶直觀地設計算法并進行交互式調試。下面是一些有助于編程師更有效使用開發嵌入式應用的技巧。這些技巧中的許多也適用于其它高級工具。

         

         

        動態分配存儲器技術

        動態存儲器分配是一項編程師應盡可能避免的復雜操作。例如,如果動態分配出現在將數據存儲到數組內的一個循環內,那么它尤其有害。避免在一個循環內動態分配存儲器的常用方法是在該循環開始執行前,為每個數組預分配所需的存儲空間。

        移位寄存器與隧道技術

        的移位寄存器與隧道使數據進/出循環。工程師還利用移位寄存器在一個循環的每次執行之間傳遞數據。當數據用一個輸入隧道傳進一個循環時,LabView必須拷貝該數據并將該拷貝數據送出來進行下線修改。為了確保原始數據對該循環的下次迭代執行時保持不變,這樣做是必需的。工程師也可以通過用一個移位寄存器把數據傳進該循環的方法來避免拷貝。這樣就消除了不必要的拷貝,從而加快了運行速度。

        循環中的大常數技術

        如果在循環內部放置一個常數,會使循環的每次執行都拷貝這個數據,從而加大執行時間和存儲器使用率。工程師可以避免這個情況,做法是把該常數移出該循環,或者用本地變量把數據傳遞到循環中。

        數據類型強制轉換技術

        LabView 開發環境只要有可能就自動地處理數據類型的沖突,其做法是把較小的數據類型轉換成較大的數據類型。例如,如果在一個整數和一個浮點數之間發生一個類型沖突,那么LabView就把該整數轉換成一個浮點數,隨后再執行運算操作。這個轉換的代價是昂貴的,而且在許多情況下是不必要的。在大多數情況下,工程師可以通過為每個變量選取正確的數據類型來避免強制轉換。但是,如果該數據必須被強制轉換,則應在將其送去進行操作運算或函數計算前就完成轉換,這樣效率將會更高些。

        簇技術的應用

        當把異構數據捆綁到易管理的數據包中時,簇是有用的,比如說C語言結構(C Structs)。然而,此時除了要考慮的全部數據外,數據內容的相關信息也必須和這些數據一起傳遞。因此,有的時候,尤其是在把數據傳到subVI時,相對于一個捆綁的簇而言,未捆綁的數據元素可以增加用戶應用的運行速度。

        盡管類似LabView這樣的高級編程語言有助于工程師更快地部署其應用,但注意可提高代碼性能的細節是很重要的。通過注意這些細節,有助于工程師快速開發一個高效率的應用。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        c語言相關文章:c語言教程




        關鍵詞: LabView 嵌入式

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 南木林县| 容城县| 乳源| 调兵山市| 海盐县| 化德县| 灵山县| 安达市| 武城县| 白城市| 余干县| 湖南省| 甘谷县| 临江市| 寿阳县| 五大连池市| 石景山区| 河津市| 玉田县| 合作市| 大英县| 洛南县| 富顺县| 新昌县| 崇文区| 普安县| 襄城县| 环江| 丹巴县| 上犹县| 忻州市| 宜城市| SHOW| 桐柏县| 水城县| 富蕴县| 眉山市| 德钦县| 万山特区| 辽阳县| 嫩江县|