CN / EN
文档反馈
感谢关注汇顶文档,期待您的宝贵建议!
感谢您的反馈,祝您愉快!
无匹配项 共计114个匹配页面

如何使用DUAL TIMER驱动

DUAL TIMER HAL驱动的使用方法如下:
  1. 声明一个dual_timer_handle_t句柄结构,例如:dual_timer_handle_t dtim_handle。
  2. 重写hal_dual_timer_base_msp_init()以初始化DUAL TIMER底层资源。如要使用中断方式的API函数hal_dual_timer_base_start_it()计数,则需通过调用相关的NVIC接口来配置:
    • 调用hal_nvic_set_priority()配置DUAL TIMER中断优先级。
    • 调用hal_nvic_enable_irq()使能DUAL TIMER中断处理。
  3. 配置dtim_handle句柄init结构中的计数初值、计数模式、分频系数。
  4. 调用hal_dual_timer_base_init() API初始化DUAL TIMER外设。
  5. 如果要使用轮询方式的API函数hal_dual_timer_base_start()计数,开发者需调用hal_dual_timer_get_state()获取当前的驱动运行状态,以判断当前计数是否完成。
  6. 如果要使用中断方式的API函数hal_dual_timer_base_start_it()计数,开发者需重写hal_dual_timer_period_elapsed_callback()中断回调函数,DUAL TIMER计数完成中断触发时,该回调函数会被自动调用。
  7. 如果配置的计数模式为单次计数,则计数完成后计数器停止,开发者需要重新初始化DUAL TIMER以启动下次计数;如果配置的计数模式为循环计数,则计数完成后计数器重新加载计数初值,自动开始下次计数。

扫描关注

打开微信,使用“扫一扫”即可关注。