今天在ble_app_blinky例程中移植定时器驱动,在编译过程中报出了两个错误,在此记录一下。

1. 在nRF_Dreivers中添加nrfx_timer.c文件

选中“nRF_Dreivers ” -> 右键选择“Add Existing Files to Group....” -> 选择nrf_timer.c文件

注:添加完成nrf_timer.c后,发现文件图标上面没有和其他文件图标上面的雪花形状的标记,原因是:

该文件没有被单独设置过option。

方法是:右击该文件打开它的option,随便改个属性然后点确定,它就会被标上雪花。

    

2. 参考examples\peripheral\timer timer定时器中的逻辑,调用相关接口。

#include "nrf_drv_timer.h"

const nrf_drv_timer_t TIMER_LED = NRF_DRV_TIMER_INSTANCE(0); ---编译报错

int main()

{

uint32_t time_ms = 500;
uint32_t time_ticks;
uint32_t err_code = NRF_SUCCESS;
nrf_drv_timer_config_t timer_cfg = NRF_DRV_TIMER_DEFAULT_CONFIG;
err_code = nrf_drv_timer_init(&TIMER_LED, &timer_cfg, timer_led_event_handler);
APP_ERROR_CHECK(err_code);

time_ticks = nrf_drv_timer_ms_to_ticks(&TIMER_LED, time_ms);

nrf_drv_timer_extended_compare(
&TIMER_LED, NRF_TIMER_CC_CHANNEL0, time_ticks, NRF_TIMER_SHORT_COMPARE0_CLEAR_MASK, true);

nrf_drv_timer_enable(&TIMER_LED);

}

nrfx_timer.c中:

#if !(NRFX_CHECK(NRFX_TIMER0_ENABLED) || NRFX_CHECK(NRFX_TIMER1_ENABLED) || \
NRFX_CHECK(NRFX_TIMER2_ENABLED) || NRFX_CHECK(NRFX_TIMER3_ENABLED) || \
NRFX_CHECK(NRFX_TIMER4_ENABLED))

#error "No enabled TIMER instances. Check <nrfx_config.h>."          ----------编译报错
#endif

3. 编译

编译程序,发现两处地方报错,最后发现问题原因:

sdk_config.h中,需要将

#ifndef TIMER0_ENABLED
#define TIMER0_ENABLED 1
#endif

#ifndef TIMER_ENABLED
#define TIMER_ENABLED 1 
#endif

最新文章

  1. Dependency management
  2. IDEA +maven+ ContextLoaderListener not find
  3. Android 自定义View实现多行RadioGroup (MultiLineRadioGroup)
  4. Centos 7 安装LAMP环境
  5. mount part中位置的作用
  6. python利用or在列表解析中调用多个函数.py
  7. mysql学习之-逻辑架构
  8. NYOJ-36 最长公共子序列 AC 分类: NYOJ 2014-01-03 20:54 155人阅读 评论(0) 收藏
  9. IE9以下版本浏览器对HTML5新增标签不识别,导致CSS不起作用的问题
  10. AsyncTask 与 对话框显示 view.WindowManager$BadTokenException: Unable to add window…is not valid; is your a
  11. 【phpcms-v9】如何实现在含有子栏目的栏目下添加内容?
  12. 在View中使用CGridCtrl时出现系统异常
  13. HDU4869:Turn the pokers(费马小定理+高速幂)
  14. CF 508D Tanya and Password(无向图+输出欧拉路)
  15. 201521123011《Java程序设计》第14周学习总结
  16. 常用到的html页面布局和组件: 自己用
  17. 测试adb功能(后续学习会不断添加)
  18. mongoDB基本使用(二)
  19. Jmeter——HTTP协议的接口压力测试环境搭建
  20. HDU 2174 Bridged Marble Rings

热门文章

  1. ElasticSearch(二)Kibana、版本控制
  2. 离线安装paramiko
  3. python3 httpConnection——post请求
  4. Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform!
  5. Seaborn基础2
  6. PHP date_isodate_set() 函数
  7. luogu P3279 [SCOI2013]密码
  8. SparkSQL JDBC和JDBCServer区别
  9. Android布局的一些属性和开关、创建log图片
  10. 久等了,你要的 Python 书籍推荐,来了