打印

N32WB031 ns_timer软定时器的使用是否有例程

[复制链接]
2758|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
WXMZzhtt|  楼主 | 2024-9-19 17:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
JasonAPP| | 2025-6-18 12:09 | 只看该作者
timer_hnd_t timer_id = ns_timer_create(1000, my_timer_callback);

注意需要在协议栈初始化好后,即APP_BLE_OS_READY消息发出之后才能使用。

N32WB03x_API函数使用指南.pdf

1.15 MB

使用特权

评论回复
板凳
JasonAPP| | 2025-6-18 15:04 | 只看该作者
//在 app_ble.c 文件内,创建 c_led_test() 测试函数

#include "ns_timer.h"                                                                        //引用 ns_timer 相关函数
void GPIO_TogglePin(GPIO_Module *GPIOx, uint16_t Pin);         //声明电平翻转函数
timer_hnd_t id_timer=0;                                                                 //创建定时器的id

void c_led_test(void){
  GPIO_TogglePin(GPIOB, GPIO_PIN_0);                        //PB0 电平翻转
  GPIO_TogglePin(GPIOA, GPIO_PIN_6);                        //PA6 电平翻转
  ns_timer_cancel(id_timer);                                        //取消指定的定时器
  id_timer = ns_timer_create(500,c_led_test);        //重新创建软件定时器
}

void app_ble_msg_handler(struct ble_msg_t const *p_ble_msg){
    switch (p_ble_msg->msg_id){
        case APP_BLE_OS_READY:
            NS_LOG_INFO("APP_BLE_OS_READY\r\n");

                        //注意需要在协议栈初始化好后,即APP_BLE_OS_READY消息发出之后才能使用。
                        id_timer = ns_timer_create(500,c_led_test );                //单位为1毫秒,现在设置500ms的定时器    <--- 这是新增加的代码

                        break;
        case APP_BLE_GAP_CONNECTED:
            app_ble_connected();
                        //ke_timer_set(APP_BLE_REPORT, TASK_APP, 300);        //延迟发送消息
            break;
        case APP_BLE_GAP_DISCONNECTED:
            app_ble_disconnected();
            break;

        default:
            break;
    }

}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

3

帖子

0

粉丝