首页 > 其他分享 >nrf52832学习-app_timer模块

nrf52832学习-app_timer模块

时间:2023-06-18 16:58:09浏览次数:35  
标签:app timer uint32 id my void nrf52832

简单使用:

  1. app_timer是模块,使用时需要在sdk_config.h文件中将其使能
  2. 添加头文件app_timer.h
  3. 定义 Timer 定时器唯一识别号 _my_timer_id 和需要的定时时间常量 MY_TIMER_INTERVAL
    APP_TIMER_DEF( _my_timer_id );
    #define MY_TIMER_INTERVAL APP_TIMER_TICKS( _milliseconds ) // milliseconds 单位是毫秒
  4. 初始化定时器
    err_code = app_timer_init();
  5. 根据定时器id注册该定时器
    err_code = app_timer_create(&_my_timer_id, mode, my_timeout_handler);
    参数 mode 有两个选项值: APP_TIMER_MODE_SINGLE_SHOT (动作一次)
    APP_TIMER_MODE_REPEATED(重复动作);
    参数 my_timeout_handler: 当前定时器 time-out 时对应的处理函数;
    处理函数格式:void my_timeout_handler(void * p_context) { ... }
  6. 启动定时器
    err_code = app_timer_start(_my_timer_id, MY_TIMER_INTERVAL, NULL);
    函数 app_timer_start 第三个参数是 void * p_context, 如没有返回值,则为 NULL;

部分使用api

  • ret_code_t app_timer_stop(app_timer_id_t timer_id);
  • ret_code_t app_timer_stop_all(void);
  • void app_timer_resume(void);
  • void app_timer_pause(void);
  • uint8_t app_timer_op_queue_utilization_get(void);
  • uint32_t app_timer_cnt_diff_compute(uint32_t ticks_to,uint32_t ticks_from );
  • uint32_t app_timer_cnt_get(void);
  • uint32_t app_timer_cnt_diff_compute(uint32_t ticks_to,uint32_t ticks_from);

标签:app,timer,uint32,id,my,void,nrf52832
From: https://www.cnblogs.com/zhuizhutime/p/nrf-app_timer.html

相关文章

  • .Net6 增加AutoMapper自动映射
    概述1、什么是AutoMapper简单来说,AutoMapper就是一个用C#语言开发的一个轻量的处理一个实体对象到另外一个实体对象映射关系的组件库官网地址:AutoMapper文档地址:AutoMapper—AutoMapperdocumentation 2、为什么要用AutoMapper层与层之间的......
  • nrf52832学习-app_scheduler模块
    软件调度模块,但不是用来做任务调度的,而是为了在main函数中执行中断任务。说白了就是一个队列,中断中将数据和执行的函数放入队列中,然后main函数里一直去调用查询去执行,从而不阻塞中断app_sched_execute用来在main函数中执行,一直调用app_sched_event_put函数是在中断中调用将任务添......
  • 通用mapping实现的SSM项目:SSM 框架:是 Spring + Spring MVC + MyBatis
    1.结合通用mapping实现的SSM项目:SSM框架:是Spring+SpringMVC+MyBatis的缩写mybatisgenerator:配置插件通用mapper:tk.mybatis2.MyBatis逆向工程组件是MyBatisGenerator,简称MBG,是专为MyBatis框架制定代码自动生成解决方案,MBG可以根据数据表结构快速生成对应的实体类、......
  • SpringBoot项目报错解决:“Error starting ApplicationContext. To display the condit
    SpringBoot项目报错:ErrorstartingApplicationContext.Todisplaytheconditionsreportre-runyourapplicationwith'debug'enabled.以下方案80%可以帮助您解决这些个‘可恶的’问题目录一、编译出问题二、代码格式导致的编译出问题三、请求接口重复四、......
  • Logback SiftingAppender 使用
    1、简介SiftingAppender可根据给定的运行时属性将日志分离或筛选。例如,SiftingAppender可以根据用户会话将日志事件分开,以便不同用户生成的日志进入不同的日志文件,每个用户一个日志文件。SiftingAppender有两个属性:timeoutSiftingAppender会关闭并取消引用超时(连续多长时......
  • 关于uni-app与vue路由配置的不同,不使用uni.navigateTo接口跳转时,使用this.$router.pus
    之前用vue写router路由的时候,先配置一个路由表,然后再将配好的路由push到已有的组件里面,再通过<RouterView></RouterView>方法将每一个调用的路由的内容渲染到父组件要用的位置。今晚我在用uni-app的时候,突然不想用uni-app自己提供的路由跳转方法:uni.navigateTo我想用vue那种路由......
  • 3. @RequestMapping注解
    1.@RequestMapping注解的功能‍@RequestMapping注解的作用就是将请求和处理请求的控制器方法关联起来,建立映射关系。‍SpringMVC接收到指定的请求,就会来找到在映射关系中对应的控制器方法来处理这个请求‍2.@RequestMapping注解的位置‍@RequestMapping标识一个......
  • Models, Mappings, Request Validation Notes
    RequestValidationAPIGatewaycanperformbasicvalidation.Thisenablesyou,theAPIdeveloper,tofocusonapp-specificdeepvalidationinthebackend.YoucanoffloadbasicvalidationtoAPIGateway.Forthebasicvalidation,APIGatewayverifieseith......
  • 【SuperDisplay】Window小主机 有线投屏至 平板上,类似于apple的随行功能
    故事背景:买了台小主机零刻SER6Pro6800H小主机,配置如下:CPU:AMD6800H移动端处理器显卡:680M核显内存:DDR54800MHz16Gx2,共32G存储:1TSN550黑盘,镁光M6001TSSD电源:120W(19V6.32A)原装大块头,或拯救者135W配WITRNC2DC552520V诱骗器小主机在很小的体积上,能够做到如此的......
  • 去除IOS下默认样式-webkit-appearance
    ​html标签在不同的浏览器中会展示出不同的风格样式,这也是前端程序员所遇到的最常见的兼容问题,同时不同的浏览器对于边距的设置也不尽相同。这种情况下一般会使用reset.css进行样式重置。在不同设备上,对于标签的样式也有不同得风格,比如iPhone上input不同类型就有与Android具有......