關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > VxWorks下的異步通用定時器設計

        VxWorks下的異步通用定時器設計

        作者: 時間:2009-12-15 來源:網絡 收藏

        3.2 接口
        提供類似于Windows的接口函數,的唯一索引是id號,操作均通過id完成。分為2種類型:周期性定時器和一次性定時器。周期性定時器可以周期性地觸發。一次性定時器則只觸發一次,類似于倒計時定時器,觸發后看門狗自動刪除,相應的任務自動退出。在用戶對定時器模塊進行初始化后,用戶可以在程序的任何地方調用定時器提供的接口。

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


        3.3 具體實現
        3.3.1 對看門狗的封裝
        基于程序上的考慮,將定時器的管理控制和看門狗的具體操作分開,對看門狗進行封裝,CClkGenerator類封裝了看門狗的所有操作,包括看門狗的創建、刪除、取消和啟動,保存定時器id、類型、定時周期等。值得注意的是:看門狗的回調函數并不是用戶的回調函數,而是看門狗管理控制中提供的統一回調函數,回調函數中的參數為定時器的索引號。封裝代碼如下:


        從類定義可以看出,用戶并不能直接使用CClkGen-erator。也就是說,該類對用戶而言是不可見的,屏蔽了對看門狗的直接操作,只有定時器管理控制模塊才可以對其進行操作。
        3.3.2 定時器管理與控制
        定時器管理與控制模塊負責模塊初始化、多個定時器相關參數的存儲管理、定時器任務的安全退出,以及用戶接口的實現。
        定時器的主要數據結構:定時器控制結構和存儲結構。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 锡林浩特市| 灵武市| 蚌埠市| 定西市| 富顺县| 贵港市| 微山县| 和静县| 永吉县| 平江县| 禹城市| 汉阴县| 定襄县| 大兴区| 广河县| 平陆县| 墨脱县| 镇原县| 乐昌市| 全椒县| 兴隆县| 锦屏县| 禹州市| 浦东新区| 呼和浩特市| 平泉县| 达州市| 北海市| 桦甸市| 资阳市| 乌兰察布市| 滦平县| 河南省| 东乡族自治县| 孟州市| 民和| 赞皇县| 灌南县| 英德市| 兰考县| 沙坪坝区|