esp8266自带软件延时功能这里我们用软件延时方式实现led的亮灭
我们首先看乐鑫的NONOS API文档
ESP8266 NONOS SDK人门——软件延时所以若需要时间的精确定时,建议使用硬件定时器
软件延时的设置步骤
1.先定义一个定时器结构体和LED状态标志变量
ESP8266 NONOS SDK人门——软件延时2.写好回调函数,其内容为定时器溢出时所需要实现的功能
ESP8266 NONOS SDK人门——软件延时3.软件定时器初始化
ESP8266 NONOS SDK人门——软件延时
ESP8266 NONOS SDK人门——软件延时这个是软件定时器的设置API

os_timer_setfn 必须在 timer 未使能的情况下调⽤用,在 os_timer_arm 或 os_timer_arm_us 之前或者 os_timer_disarm 之后
所以先 os_timer_disarm 关闭定时器
设置os_timer_setfn 后就可以使能软件定时器
ESP8266 NONOS SDK人门——软件延时ESP8266 NONOS SDK人门——软件延时对于同⼀一个 timer,os_timer_arm 或 os_timer_arm_us 不不能重复调⽤用,必须先 os_timer_disarm。
这样软件定时器的init函数就写好了
使用us的定时器时在初始化软件定时器前一定先调用system_timer_reinit()重新初始化定时器
ESP8266 NONOS SDK人门——软件延时下面为我的代码部分

ESP8266 NONOS SDK人门——软件延时ESP8266 NONOS SDK人门——软件延时这里使用ms延时每2s led变化一次

注意:软件定时器除了system_timer_reinit API外
其他API均需要定时器结构体作为目标参数传入

相关文章:

  • 2022-12-23
  • 2021-04-11
  • 2021-06-03
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
  • 2021-08-04
  • 2022-12-23
猜你喜欢
  • 2021-06-13
  • 2021-09-01
  • 2021-07-09
  • 2022-01-01
  • 2021-09-15
  • 2021-07-28
  • 2022-12-23
相关资源
相似解决方案