我上篇文章說了,我要寫寫ESP8266的定時器。我們這里要加一個微秒:百萬分之一秒,10(-6)次方。就使用到計算周期。
扯點關于時間的碎碎念。
老子說了,如果大道為零天道就是無窮小,人道就是無窮大:天道×人道=一,也就是“有” 所以才有的:“無中生有”。莊子強調(diào)的真的是無限分割么,你也太小看自己的老祖先了 老子的無從來也不是無,本來就是在強調(diào)無窮小的概念 而且早就有了無窮小的定義 天之道,損有余而補不足,天道指的就是無窮小 實質(zhì)指的就是小到極限 無論是什么,小到極限仍然不是無,至少都有對大道(或者說0)的敬畏的存在。人之道,損不足以奉有余,看起來像是在強調(diào)無限,其實正好相反,人道強調(diào)的正是有界 或者說“度”。
首先ESP8266芯片內(nèi)部有兩個區(qū):
IROM:internal rom 內(nèi)部ROM,指的是集成到SoC內(nèi)部的ROM
IRAM:internal ram 內(nèi)部RAM,指的是集成到SoC內(nèi)部的RAM

dram是動態(tài)內(nèi)存,需要周期性的充電

輪詢就是CPU挨個問這些外設,你需要我服務嗎?然后沒人用的話,一會兒再來問一圈,但是這個處理的速度是很快的,所以這個實時性倒是還行。
對于需要輪詢的應用這里建議使用定時器來計算,另外,定時器不要頻繁的調(diào)用。微秒定時器如果是不精確的話,需要使用硬件的定時器,最重要的是ISR一定要短。
反正就是精確延時的話,就要使用硬件的定時器。
另外:毫秒是一種較為微小的時間單位,符號為ms,1秒 = 10分秒;1分秒 = 10厘秒;1厘秒 = 10 毫秒 ;1 毫秒 = 1000微秒;1微秒 = 1000納秒;1納秒 = 1000皮秒。典型照相機的最短曝光時間為一毫秒。

定時器的使能,但是ESP8266沒有更多的技術資料,所以這個定時器到底是什么樣的,其實這里我也不是很清楚。

這里是定時器回調(diào)函數(shù)的定義

這個是微秒級別的延時,最高的精度為500us

硬件的ISR定時器的初始化的寫法,最后的參數(shù)是要不要自動的裝填。

硬件中斷定時器的寫法

定時器的回調(diào)函數(shù)一定不能寫到Flash內(nèi)部。


硬件的定時器這樣使用

這里我找到一個ESP32內(nèi)存分布情況
ESP32 內(nèi)部存儲器(SRAM)的布局。SRAM 分為 3 個存儲塊 SRAM0、SRAM1 和SRAM2(以及 RTC 快速和慢速存儲器 2 個小塊).
SRAM 以兩種方式使用:一種用于指令存儲,稱為 IRAM(用于執(zhí)行代碼,text 段),另一種用于數(shù)據(jù)存儲,稱為 DRAM(用作 BSS 段,Data 段和堆)。SRAM0 和 SRAM1 可以用作連續(xù)的 IRAM,而 SRAM1 和 SRAM2 可以用作連續(xù)的 DRAM 地址空間。
事件就是兩個物體之間產(chǎn)生了交互行為,就可以成為一個事件。而事件驅(qū)動就是兩個之間產(chǎn)生了交互行為,驅(qū)使兩個物體的一方,做出了相應的行為或動作。
本來還能寫,但是馬上就12點了,下篇文章繼續(xù)了。
審核編輯:劉清
-
sram
+關注
關注
6文章
814瀏覽量
117340 -
定時器
+關注
關注
23文章
3365瀏覽量
122405 -
ESP8266
+關注
關注
51文章
967瀏覽量
49253
原文標題:ESP8266定時器.上
文章出處:【微信號:TT1827652464,微信公眾號:云深之無跡】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
ESP8266之軟件定時器學習
esp8266,tcp通信實例詳解
使用esp8266實現(xiàn)STM32聯(lián)網(wǎng)(最簡單USART方法)
esp8266 at指令集詳解
怎樣使用ESP8266 Flasher和Programmer燒寫ESP8266 AT固件
ESP8266 Nodemcu學習心得②
ESP8266 wifi模塊開發(fā)匯總
ESP8266
ESP8266學習三
淺析ESP8266定時器的計算周期與內(nèi)存分布
評論