软件实现
软件代码见 examples/timer/timer_int
配置 TIMER 设备时钟源,见 bsp/board/bl706_iot/clock_config.h
使能 BSP_USING_TIMER0 并配置 TIMER0 设备配置,见 bsp/board/bl706_iot/peripheral_config.h
调用 timer_register 函数注册 TIMER 设备,当前注册 TIMER0
然后通过 find 函数找到设备对应的句柄,保存于 timer0 句柄中
最后使用 device_open 以中断模式来打开 timer0 设备
调用 device_set_callback 函数,注册用户指定的 TIMER0 中断服务函数。调用 device_control 函数使能中断和配置定时周期。
此函数是示例的中断服务函数,作用是判断具体是哪个 COMP 触发的中断和打印 COMP0 触发中断的次数。
device_write 则是在达到 comp2 超时时间时,修改 comp2 的超时时间为 12s。
编译和烧录
CDK 编译
打开项目中提供的工程文件:timer_int.cdkproj
参照 Windows 下使用 CDK (类 MDK Keil)开发指南 的步骤编译下载即可
命令行编译
原作者:BL_MCU_SDK 开发指南
|