nRF52832无协议栈下软件定时器的使用

编译器及例程说明

1. nRF支持包 : NordicSemiconductor.nRF_DeviceFamilyPack.8.17.0.pack
2. ARM支持包 : ARM.CMSIS.4.5.0.pack
3. Toolchain : MDK-ARM Community  Version: 5.33.0.0

4. 将调试信息从J-Link RTT打印出来
5. 创建两个定时器,通过J-Link RTT将其运行次数打印出来

sdk_config.h配置说明

//使能定时器模块
APP_TIMER_ENABLED = 1

//定时器RTC频率为32768HZ
APP_TIMER_CONFIG_RTC_FREQUENCY = 0

//定时器队列大小,决定创建定时器数量
APP_TIMER_CONFIG_OP_QUEUE_SIZE = 10

//定时器优先级
APP_TIMER_CONFIG_IRQ_PRIORITY = 6



// 使能日志
NRF_LOG_ENABLED = 1

// 使能J-Link RTT作为日志输出
NRF_LOG_BACKEND_RTT_ENABLED = 1
    
//日志默认级别,4最高,高级别兼容低级别
0-Off	1-Error		2-Warning 
3-Info 	4-Debug 
NRF_LOG_DEFAULT_LEVE = 4

一、日志初始化

/****************************************************************************************************
 * 函数名 : log_init
 * 描  述 : 日志初始化
*****************************************************************************************************/
static void log_init(void)
{
   
   
	ret_code_t errCode = NRF_LOG_INIT(NULL);//Init logs modules
	APP_ERROR_CHECK(errCode);
	NRF_LOG_DEFAULT_BACKENDS_INIT();//Init UART or RTT output log
}

二、空闲状态处理

/****************************************************************************************************
 * 函数名 : idle_state_handle
 * 描  述 : 空闲状态处理
 * 说  明 : 1. 在空闲状态时处理挂起的日志,若没有挂起日志则进行电源管理
*****************************************************************************************************/
static void idle_state_handle(void)
{
   
   
	//Processing deferred logs
	if(NRF_LOG_PROCESS() == false)
	{
   
   
		//Running power management
		nrf_pwr_mgmt_run();
	}
}

三、LED GPIO配置

/****************************************************************************************************
 * 函数名 : led_gpio_config
 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值