11-ESP8266 SDK开发基础入门篇--软硬件定时器
https://www.cnblogs.com/yangfengwu/p/11094009.html
定时器有两种,软件定时器和硬件定时器
软件定时器就是靠里面的任务延时实现的,,这样的定时器其实延时不准确
硬件定时器 就是硬件中断定时器,咱都学过单片机,中断的准确
先看软件定时器


具体大家看下面
所以第一步,定义一个定时器变量
可以看这个文件,咱就是用这个头文件

os_timer_t os_timer_one;//定义一个全局的定时器结构体变量


先看带参数的

void *XXX 就是说可以接收任意的指针变量
//定义一个定时器用的回调函数
void os_timer_one_function(void *parg)
{
printf("parg:%s\n", parg);//打印一下传过来的参数
GPIO_OUTPUT_SET(, -GPIO_INPUT_GET());//GPIO5输出 反转
}

os_timer_setfn(&os_timer_one,os_timer_one_function,"yang");//配置定时器 定时器结构体变量 回调函数 传给回调函数的参数
os_timer_arm(&os_timer_one,,);//使能定时器 os_timer_one--定时器变量 500--500ms进一次 1--循环进去
下载进去
500ms亮 500ms灭

其实这个参数是
os_timer_setfn(&os_timer_one,os_timer_one_function,"yang");
这个时候传过去的,只传这一次,只不过,局部变量的值设置了是yang 后期进中断的时候都没有去设置这个参数

不带参数就不说了哈
大家自己测试,报不报错就看官方底层怎么写的了

现在看硬件中断定时器




然后...官方给了例子

咱就稍微改改回调函数里面的



程序挂了......不可以运行了,总是=重启
然后我把

程序又好了
我感觉这个定时器是us级的定时器
1000 才1ms
1ms进一次执行 printf printf还没执行完 中断又到了 所以程序崩了
u32 cnt = ;
void hw_test_timer_cb(void)
{
cnt++;
if(cnt>)
{
cnt=;
printf("1111111111111:%s\n");//打印
}
}


忘了..我后面怎么加了个%s 忘了去掉了


https://www.cnblogs.com/yangfengwu/p/11100552.html
11-ESP8266 SDK开发基础入门篇--软硬件定时器的更多相关文章
- 1-ESP8266 SDK开发基础入门篇--开发环境搭建
因为今天终于做好了自己的另一块工控板,所以我就开始写基础公开篇的内容,希望自己小小的努力能够帮到大家 自己做的另一块板子 https://www.cnblogs.com/yangfengwu/cate ...
- 25-ESP8266 SDK开发基础入门篇--控制WIFI连接路由器
https://www.cnblogs.com/yangfengwu/p/11324411.html 说个事情,现在SDK的版本已经出到3.0了,但是我还是使用2.0 如果只是为了学习研究 选择3 ...
- 16-ESP8266 SDK开发基础入门篇--TCP 服务器 非RTOS运行版,串口透传(串口回调函数处理版)
https://www.cnblogs.com/yangfengwu/p/11105466.html 其实官方给的RTOS的版本就是在原先非RTOS版本上增加的 https://www.cnblogs ...
- 10-ESP8266 SDK开发基础入门篇--上位机通过串口控制ESP8266灯亮灭
https://www.cnblogs.com/yangfengwu/p/11087618.html 其实这一节就是对上三节的综合测试 https://www.cnblogs.com/yangfeng ...
- 26-ESP8266 SDK开发基础入门篇--编写WIFI模块 SmartConfig/Airkiss 一键配网
https://www.cnblogs.com/yangfengwu/p/11427504.html SmartConfig/Airkiss 配网需要APP/微信公众号,这节大家先使用我做好的APP/ ...
- 18-ESP8266 SDK开发基础入门篇--TCP 服务器 RTOS版,串口透传,TCP客户端控制LED
https://www.cnblogs.com/yangfengwu/p/11112015.html 先规定一下协议 aa 55 02 01 F1 4C 控制LED点亮 F1 4C为CRC高位和低位 ...
- 29-ESP8266 SDK开发基础入门篇--编写TCP 客户端程序(Lwip RAW模式,非RTOS版,精简入门)
https://www.cnblogs.com/yangfengwu/p/11456667.html 由于上一节的源码长时间以后会自动断开,所以再做这一版非RTOS版的,咱直接用lua源码里面别人写的 ...
- 12-ESP8266 SDK开发基础入门篇--PWM,呼吸灯
https://www.cnblogs.com/yangfengwu/p/11094085.html PWM其实没有什么,就是看着官方给的API,,,然后就是用呗 对了,其实对于RTOS SDK版本的 ...
- 3-ESP8266 SDK开发基础入门篇--点亮一个灯
https://www.cnblogs.com/yangfengwu/p/11072834.html 所有的源码 https://gitee.com/yang456/Learn8266SDKDevel ...
随机推荐
- 【SpringBoot】SpingBoot整合AOP
https://blog.csdn.net/lmb55/article/details/82470388 [SpringBoot]SpingBoot整合AOPhttps://blog.csdn.net ...
- AutoFac的简单使用教程
Autofac可以对代码进行依赖注入,实现控制反转.以下是本菜鸟在初次入门时的代码配置,其源码,内部原理都还有待日后研究.目前也只是仅仅做到了能够使项目正常使用而已. 跟我一样刚刚入门的菜鸟朋友们可以 ...
- C#——零散学习1
C#——零散学习1 //结构体(与C语言相似) struct Position { public float x; public float y; //不一定需要把结构体成员设置为pu ...
- P1361 小M的作物 (最大流)
题目 P1361 小M的作物 解析 把\(A\)看做源点,把\(B\)看做汇点,先不考虑额外情况 显然,这是一种两者选其一的问题,我们选择一部分边割去,使这部分边的贡献最小,就是求最小割,我们求出了收 ...
- Java visualvm
简介 VisualVM是一个集成多个JDK命令行工具的可视化工具.可以作为Java应用程序性能分析和运行监控的工具.开发人员可以利用它来监控.分 析线程信息,浏览内存堆数据.系统管理员可以利用它来监测 ...
- SpringMVC+SpringBoot+MyBatis
一.在框架中有时候会发现dao层和service层是相同的代码,为什么会同时存在呢?(以下https://blog.csdn.net/fanjieshanghai/article/details/88 ...
- ar 解压一个.a文件报错: xxx.a is a fat file (use libtool(1) or lipo(1) and ar(1) on it)
Linux 使用终端指令 ar x /Users/apple/Desktop/libWC_LIB_SDKT.a解压一个文件 报错如图所示: 是因为该.a文件包含了多个cpu架构,比如armv7,ar ...
- IDEA中安装及配置SVN
1.TortoiseSvn(小乌龟下载地址): https://tortoisesvn.net/downloads.html 2.下载完SVN安装包后,在本机安装SVN(小乌龟),注意安装的时候添加上 ...
- sql 查询某个字段最长的记录
sql 查询文本字段中值的长度最长的记录 一.函数1.SQL ServerLEN() 函数返回文本字段中值的长度.SELECT LEN(column_name) FROM table_name;2. ...
- springdata jpa 关于分页@Query问题
关于springdata jpa 分页问题相信很多小伙伴都遇到过,只要表中数量到达分页条件就会报错 废话少说直接上代码: @Query(nativeQuery = true, value = &quo ...