新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式時鐘管理器的設計與實現

        嵌入式時鐘管理器的設計與實現

        作者: 時間:2018-09-11 來源:網絡 收藏

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

          UINT8prior;

          UINT8next;

          }idatawdList[_MAX_WDOG_NUM_];

          UINT8headIdx;//索引首結點

          有了delta列表法的思路及其實現的數據結構,在靜態數組法具體實現的基礎上,便可得此法的具體實現。

          應用中如果目標系統ROM較小,且系統中啟用的定時器少,則用靜態數組法;若目標系統ROM較大,且系統中用到的定時器較多,則用delta列表法。

          3 應用

          針對前述的系統中的定時需求,利用定時器管理系統給出其實現代碼。

          假定“特定操作”為voidspecFunc(void),“特定時間段”長度為10分鐘。

          (1)在經歷特定的時間段后,執行特定操作。

          #include″clk.h″

          #include″wdLib.h″

          voidmain(void){

          WDOG_IDwdId;

          constructClk();constructWDOG();

          wdId=wdCreate();

          wdStart(wdId,10*ONE_MINUTE,specFunc);

          while(1);

          }

          (2)以給定周期周期性地執行特定操作。

          基于前者,只需在voidspecFunc(void)函數體的最后加入下述代碼即可:

          wdStart(wdId,10*ONE_MINUTE,specFunc);

          注:該給定周期為10分鐘。

          由于本只需一個硬件定時器的支持,所以其具有廣泛的適用性。使用時,只需進行簡單的配置,即可為裸露的目標系統加以簡單的軟件抽象層。其友好的用戶接口有效降低了系統的開發難度,提高了目標系統的可靠性。筆者已在實際項目中多次使用了該。基于該的目標系統運行穩定、可靠,從而充分說明該時鐘管理器設計的實用性和科學性。


        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 丰台区| 枣强县| 精河县| 长汀县| 文水县| 渝中区| 汝阳县| 中卫市| 枞阳县| 大丰市| 沂南县| 若羌县| 岳普湖县| 图们市| 乌兰浩特市| 六盘水市| 清涧县| 林周县| 大埔县| 蒙城县| 漳州市| 武清区| 大安市| 临夏县| 龙陵县| 松溪县| 滦南县| 开平市| 静乐县| 炉霍县| 侯马市| 遂平县| 灵武市| 罗源县| 临高县| 曲麻莱县| 杨浦区| 高安市| 神农架林区| 福贡县| 白沙|