zoukankan      html  css  js  c++  java
  • [RTT例程练习] 4.1 定时器基本使用

    定时器分为软件定时器和硬件定时器。

    硬件定时器,是指单片机本身提供的一种外设,能够产生定时事件,而且不占用CPU时间。优点是定时精度高,独立于CPU,还可灵活配置其他许多功能,例如PWM。

    而软件定时器是操作系统提供的一种定时接口,其精度取决于操作系统的tick时间,而RTOS的tick建立在硬件定时器之上,一旦开机就不再改变。但优点是其数量不受硬件定时器数目的限制,而且便于操作系统统一管理。RTT中,软件定时器还分单次触发和周期性触发。

    这个例子显示了一个周期性触发的软件定时器。

    程序

    #include <rtthread.h>
    
    static rt_timer_t timer1;
    static rt_uint8_t count;
    
    static void timeout1(void *parameter)
    {
        rt_kprintf("periodic timer is timeout, %d.\n", count);
        
        count++;
        
        if (count >= 8)
        {
            rt_kprintf("stop it!\n");
            
            rt_timer_stop(timer1);
            
            count = 0;
        }
    }
    
    int rt_application_init()
    {
        timer1 = rt_timer_create("timer1",
            timeout1,
            RT_NULL,
            10,
            RT_TIMER_FLAG_PERIODIC);
        if (timer1 != RT_NULL)
            rt_timer_start(timer1);
            
        return 0;
    }

    结果

    periodic timer is timeout
    periodic timer is timeout
    periodic timer is timeout
    periodic timer is timeout
    periodic timer is timeout
    periodic timer is timeout
    periodic timer is timeout
    periodic timer is timeout


  • 相关阅读:
    Luogu P6623 [省选联考 2020 A 卷] 树|Trie
    Luogu P4683【IOI2008】Type Printer 打印机|trie
    Luogu P5658 括号树|搜索+递推
    Luogu P4514 上帝造题的七分钟|二维树状数组
    Luogu P1314 【NOIP2011】聪明的质检员|前缀和+二分
    Html5表单元素
    HTML5视频音频
    HTML5语义化标签
    斗地主案例
    Collection集合
  • 原文地址:https://www.cnblogs.com/lyyyuna/p/4123916.html
Copyright © 2011-2022 走看看