zoukankan      html  css  js  c++  java
  • UCOSII软件定时器

    API函数

    //创建
    OS_TMR *OSTmrCreate (INT32U dly,
                         INT32U period,
                         INT8U opt,
                         OS_TMR_CALLBACK callback,
                         void *callback_arg,
                         INT8U *pname,
                         INT8U *perr);
    
    //删除
    BOOLEAN OSTmrDel (OS_TMR *ptmr,
                      INT8U *perr);
    
    //定时器名字
    INT8U OSTmrNameGet (OS_TMR *ptmr,
                        INT8U **pdest,
                        INT8U *perr);
    
    //溢出时间
    INT32U OSTmrRemainGet (OS_TMR *ptmr,
                           INT8U *perr);
    
    //定时器状态
    INT8U OSTmrStateGet (OS_TMR *ptmr,
                         INT8U *perr);
    
    //启动
    BOOLEAN OSTmrStart (OS_TMR *ptmr,
                        INT8U *perr);
    
    //关闭
    BOOLEAN OSTmrStop (OS_TMR *ptmr,
                       INT8U opt,
                       void *callback_arg,
                       INT8U *perr);
    
    //发送信号
    INT8U OSTmrSignal (void);

    应用举例

    OS_TMR *tmr;
    
    void start_task(void *pdata)
    {
        OS_ENTER_CRITICAL();
    
        tmr = OSTmrCreate ((INT32U )0,
                            (INT32U  )50, //50*100ms
                            (INT8U   )OS_TMR_OPT_PERIODIC,
                            (OS_TMR_CALLBACK)tmr_callback,
                            (void   *)0,
                            (INT8U  *)"tmr",
                            (INT8U  *)&err);
    
        OS_EXIT_CRITICAL();
    
        OSTmrStart(msg->tmr, &err);
    }
    
    void tmr_callback(void *ptmr, void *parg)
    {
        INT32U remain;
    
        remain = OSTmrRemainGet(ptmr, &err);
        if(remain <= 5)
        {
            printf("tmr_callback OSTmrRemainGet remain err: %d
    ", remain);
            return;
        }
    }
  • 相关阅读:
    LeetCode-Longest Substring Without Repeating Characters
    LeetCode-Add Two Numbers
    LeetCode-Two Sum
    品格的塑造
    闰年的来历
    float在内存中的存取方法
    矩阵顺时针旋转90度
    研究生毕业论文查重
    PAT1009
    PAT1008
  • 原文地址:https://www.cnblogs.com/zhangxuechao/p/11709490.html
Copyright © 2011-2022 走看看