0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅析ESP8266定时器的计算周期与内存分布

云深之无迹 来源:云深之无迹 作者:云深之无迹 2022-07-10 09:59 次阅读

我上篇文章说了,我要写写ESP8266定时器。我们这里要加一个微秒:百万分之一秒,10(-6)次方。就使用到计算周期。

扯点关于时间的碎碎念。

老子说了,如果大道为零天道就是无穷小,人道就是无穷大:天道×人道=一,也就是“有” 所以才有的:“无中生有”。庄子强调的真的是无限分割么,你也太小看自己的老祖先了 老子的无从来也不是无,本来就是在强调无穷小的概念 而且早就有了无穷小的定义 天之道,损有余而补不足,天道指的就是无穷小 实质指的就是小到极限 无论是什么,小到极限仍然不是无,至少都有对大道(或者说0)的敬畏的存在。人之道,损不足以奉有余,看起来像是在强调无限,其实正好相反,人道强调的正是有界 或者说“度”。

首先ESP8266芯片内部有两个区:

IROM:internal rom 内部ROM,指的是集成到SoC内部的ROM

IRAM:internal ram 内部RAM,指的是集成到SoC内部的RAM

pYYBAGLKMqqAF9GrAABvEPlAL8U251.jpg

dram是动态内存,需要周期性的充电

poYBAGLKMrCAfx8YAAFiI4A4lms217.jpg

轮询就是CPU挨个问这些外设,你需要我服务吗?然后没人用的话,一会儿再来问一圈,但是这个处理的速度是很快的,所以这个实时性倒是还行。

对于需要轮询的应用这里建议使用定时器来计算,另外,定时器不要频繁的调用。微秒定时器如果是不精确的话,需要使用硬件的定时器,最重要的是ISR一定要短。

反正就是精确延时的话,就要使用硬件的定时器。

另外:毫秒是一种较为微小的时间单位,符号为ms,1秒 = 10分秒;1分秒 = 10厘秒;1厘秒 = 10 毫秒 ;1 毫秒 = 1000微秒;1微秒 = 1000纳秒;1纳秒 = 1000皮秒。典型照相机的最短曝光时间为一毫秒。

pYYBAGLKMriARwzUAADiwqmPjn8864.jpg

定时器的使能,但是ESP8266没有更多的技术资料,所以这个定时器到底是什么样的,其实这里我也不是很清楚。

poYBAGLKMr-AL80rAADVLwCIdNg972.jpg

这里是定时器回调函数的定义

pYYBAGLKMvCAPEz5AADIBNB-DLE476.jpg

这个是微秒级别的延时,最高的精度为500us

pYYBAGLKMviAJLIFAADQ_KNJiss482.jpg

硬件的ISR定时器的初始化的写法,最后的参数是要不要自动的装填。

poYBAGLKMv6ATMJ1AACqQicVNNI774.jpg

硬件中断定时器的写法

poYBAGLKMwSADpmlAACspCSmaaw686.jpg

定时器的回调函数一定不能写到Flash内部。

poYBAGLKMyKAV6yxAAD1l7hIJxw402.jpg
pYYBAGLKMyyAZymvAABpVOGkiv0055.jpg

硬件的定时器这样使用

poYBAGLKM0KAPvbaAACV3UYl0Nk203.jpg

这里我找到一个ESP32内存分布情况

ESP32 内部存储器(SRAM)的布局。SRAM 分为 3 个存储块 SRAM0、SRAM1 和SRAM2(以及 RTC 快速和慢速存储器 2 个小块).


SRAM 以两种方式使用:一种用于指令存储,称为 IRAM(用于执行代码,text 段),另一种用于数据存储,称为 DRAM(用作 BSS 段,Data 段和堆)。SRAM0 和 SRAM1 可以用作连续的 IRAM,而 SRAM1 和 SRAM2 可以用作连续的 DRAM 地址空间。

一般Non-SDK,是基于事件驱动的编程模型:

事件就是两个物体之间产生了交互行为,就可以成为一个事件。而事件驱动就是两个之间产生了交互行为,驱使两个物体的一方,做出了相应的行为或动作。

本来还能写,但是马上就12点了,下篇文章继续了。


审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • sram
    +关注

    关注

    6

    文章

    742

    浏览量

    113905
  • 定时器
    +关注

    关注

    23

    文章

    3148

    浏览量

    112041
  • ESP8266
    +关注

    关注

    50

    文章

    947

    浏览量

    43948

原文标题:ESP8266定时器.上

文章出处:【微信号:TT1827652464,微信公众号:云深之无迹】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ESP8266之软件定时器学习

    ESP8266学习三软件定时器软件定时器不一定看可以成功得执行在CPU长期占用得情况下软件定时器不会执行;os_timer_t OS_TIMER_1; //定义
    发表于 02-28 06:30

    ESP8266系列模块选型

    ESP8266系列模块选型ESP8266 ESP-01 ESO-02
    发表于 01-05 17:34 37次下载

    使用esp8266实现STM32联网(最简单USART方法)

    上一篇 esp8266怎么配置esp8266和USB转TTL连接esp8266简单介绍esp8266连接路由器esp8266通过路由器连接在
    发表于 11-22 11:51 1.1w次阅读

    esp8266中文资料汇总(esp8266引脚图_与单片机连接_串口wifi实例)

    本文首先介绍了esp8266引脚图功能与esp8266特性,其次介绍了 单片机与ESP8266串口连接及最小系统连接与程序分享,最后介绍了esp8266串口wifi实例。
    发表于 05-24 08:36 22.1w次阅读
    <b class='flag-5'>esp8266</b>中文资料汇总(<b class='flag-5'>esp8266</b>引脚图_与单片机连接_串口wifi实例)

    如何将ESP8266连接到WiFi

    在之前的ESP8266项目中,我简要介绍了ESP8266 WiFi模块,如何开始使用ESP8266和Arduino,ESP8266 ESP-
    的头像 发表于 07-29 11:32 8.5w次阅读
    如何将<b class='flag-5'>ESP8266</b>连接到WiFi

    ESP8266的管脚的控制和软件定时器的使用

    先说定时器ESP8266内部的定时器分为软件定时器和硬件定时器。手册中指出硬件定时器其实就跟单
    的头像 发表于 07-29 14:57 9097次阅读
    <b class='flag-5'>ESP8266</b>的管脚的控制和软件<b class='flag-5'>定时器</b>的使用

    怎样使用ESP8266 Flasher和Programmer烧写ESP8266 AT固件

    选择要连接的COM端口ESP8266 Flasher和Programmer + ESP8266 Wifi串行收发器模块。将BAUDRATE设置为115200。
    的头像 发表于 11-18 17:58 2w次阅读

    Esp8266原理图分享

    Esp8266原理图免费下载。
    发表于 06-18 11:21 467次下载

    ESP8266】接入bl

    ESP8266】接入bl
    发表于 12-08 13:36 10次下载
    【<b class='flag-5'>ESP8266</b>】接入bl

    ESP8266之硬件机理

    ESP8266硬件机理1.ESP8266简介2.硬件结构3.运行机理3.1 Warning3.2 机理4.快速搭建服务器Attention4.1进入STA模式4.2复位4.3获取附近能够连接
    发表于 12-09 12:21 31次下载
    <b class='flag-5'>ESP8266</b>之硬件机理

    ESP8266使用教程之初识

    一.ESP8266介绍​ 这里将会使用正点原子的 ATK-ESP8266 为例,来说明 ESP8266 的使用。​ 该模块上面板载了安可信的公司的 ESP8266 模块,ATK-
    发表于 01-04 18:59 80次下载
    <b class='flag-5'>ESP8266</b>使用教程之初识

    ESP8266学习三

    ESP8266学习三软件定时器软件定时器不一定看可以成功得执行 在CPU长期占用得情况下软件定时器不会执行;os_timer_t OS_TIMER_1; //定义
    发表于 01-14 16:00 2次下载
    <b class='flag-5'>ESP8266</b>学习三

    ESP8266硬件

    目前市面上有关ESP8266模组有很多的种类,但是都是使用的乐鑫公司开发的ESP8266的wifi模组,而且种类也很多。
    的头像 发表于 02-10 14:25 3156次阅读
    <b class='flag-5'>ESP8266</b>硬件

    ESP8266初次如何实现无线通信(基于电脑与ESP8266)

    一.需要的软件及硬件 1.软件 2.硬件 二.ESP8266的使用 .ESP8266的介绍 2.ESP8266进行初始AT指令的配置步骤 三.所用软件安装分享 ESP8266
    发表于 05-30 09:53 14次下载
    <b class='flag-5'>ESP8266</b>初次如何实现无线通信(基于电脑与<b class='flag-5'>ESP8266</b>)

    nodemcu和esp8266是什么关系?

    nodemcu和esp8266是什么关系 nodemcu和esp8266是什么关系?通俗理解就是nodemcu是一个开发板,基于esp8266的开发板。 目前市面上搭载有ESP8266
    的头像 发表于 10-20 14:53 2298次阅读
    nodemcu和<b class='flag-5'>esp8266</b>是什么关系?