伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ESP8266的管腳的控制和軟件定時器的使用

單片機愛好者 ? 來源:LONG ? 2019-07-29 14:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

這一節主要有兩部分內容:1、管腳的控制;2、軟件定時器的使用。

先說定時器,ESP8266內部的定時器分為軟件定時器和硬件定時器。手冊中指出硬件定時器其實就跟單片機里的timer一樣,而軟件定時器純粹由軟件實現,咱們可以理解為單片機里面類似for循環之類的循環延時函數。

定時器理解了,管腳控制就簡單了,先上一下我這里的模塊原理圖:

ESP8266的管腳的控制和軟件定時器的使用

原理很簡單,板上有一個三色的LED,所以這里實現一個定時實現LED開關的程序。先說GPIO的用法,分倆步。使用之前包含“user_interface.h”文件:

1、設置管腳為普通的GPIO模式

PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDI_U,FUNC_GPIO12);

函數PIN_FUNC_SELECT的功能是選擇管腳功能,第一個參數是管腳的名字,第二個參數看起來像管腳編號,但其實是管腳對應的功能。

在編譯器中選中FUNC_GPIO12,按F3,會打開eagle_soc.h文件,在這個文件里你會發現,無論是FUNC_GPIO12,FUNC_GPIO13,還是多少,對應的宏定義都是3:

#define FUNC_GPIO12 3

2、設置管腳方向和電平

gpio_output_set(BIT12, BIT13, BIT12|BIT13, 0):

該函數的功能是設置GPIO屬性,共有四個參數,沒有用到的填0即可。

第一個參數,設置輸出為高的位;

第二個參數,設置輸出為低的位;

第三個參數,設置使能輸出的管腳;

第四個參數,設置使能輸入的管腳。

所以上面一行代碼的意思是:設置GPIO12和GPIO13為輸出,12輸出高,13輸出低。同理,下面一行代碼的意思是:設置GPIO12為輸入。

gpio_output_set(0, 0, 0, BIT12):

注:參考手冊2c-esp8266_sdk_api_guide_cn_v1.5.4的152頁。

然后是軟件定時器的使用,使用之前包含如下兩個頭文件:

#include "ets_sys.h" //內有timer結構體的定義

#include "osapi.h"

使用方法也很簡單,共分四步:

1、定義一個軟件定時器的結構體

os_timer_t LED_timer; //定義一個軟件定時器的結構體,用于實現周期操作

2、關掉該定時器的定時功能

os_timer_disarm(&LED_timer); //配置之前,先關閉

3、設置該定時器的回調函數。使用定時器,必須設置回調函數

os_timer_setfn(&LED_timer, (os_timer_func_t *)LED_TURN, NULL);

該函數共有三個參數:

第一個,你要設置哪個定時器?LED_timer

第二個,定時器定時時間到了之后,要執行哪個函數:LED_TURN

第三個,回調函數的參數,沒有的話寫NULL即可。

完了,也很簡單。等等!定時的時長是多少?別急。

4、使能定時器,并設置時長,是否循環執行

os_timer_arm(&LED_timer, 3000, 1);

該函數共有三個參數:

第一個,你要使能哪個定時器? LED_timer

第二個,時長多長? 3000,單位是毫秒。另有微秒的函數,可自行研究。

第三個,這三秒定時的功能只運行一次,還是循環執行?1,循環;0,一次。

第三步里,提到了一個函數LED_TURN,這個函數就是開啟或關閉LED的函數:

void LED_TURN()

{

static state_flag = 0;

if(state_flag == 0)

{

//GPIO12拉高,GPIO13拉低

gpio_output_set(BIT12, BIT13, BIT12|BIT13, 0);

state_flag = 1;

}

else

{

gpio_output_set(BIT13, BIT12, BIT12|BIT13, 0);

state_flag = 0;

}

}

到此,軟件定時器的用法說完了。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6078

    文章

    45543

    瀏覽量

    672612
  • 定時器
    +關注

    關注

    23

    文章

    3369

    瀏覽量

    124257
  • 管腳
    +關注

    關注

    1

    文章

    230

    瀏覽量

    33799

原文標題:ESP8266_04管腳控制與軟件定時器

文章出處:【微信號:gh_dae0718828df,微信公眾號:gh_dae0718828df】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    ESP32/ESP8266開發板單向一對多ESP-NOW無線通信

    通過ESP-NOW無線通信協議實現ESP32開發板向多個ESP32/ESP 8266開發板發送數據。
    的頭像 發表于 03-13 09:23 ?209次閱讀
    <b class='flag-5'>ESP</b>32/<b class='flag-5'>ESP8266</b>開發板單向一對多<b class='flag-5'>ESP</b>-NOW無線通信

    ESP8266系列】WT8266-S3模組規格書

    核心處理ESP8266在較小尺寸封裝中集成了業界領先的TensilicaL106超低功耗32位微型MCU,帶有16位精簡模式,主頻支持80MHz和160MHz,支
    的頭像 發表于 02-05 18:04 ?201次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S3模組規格書

    ESP8266系列】WT8266-S5模組規格書

    處理ESP8266在較小尺寸封裝中集成了業界領先的TensilicaL106超低功耗32位微型MCU,帶有16位精簡模式,主頻支持80MHz和160MHz,支持
    的頭像 發表于 02-05 18:03 ?273次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S5模組規格書

    ESP8266系列】WT8266-S6模組規格書

    處理ESP8266在較小尺寸封裝中集成了業界領先的TensilicaL106超低功耗32位微型MCU,帶有16位精簡模式,主頻支持80MHz和160MHz,支持R
    的頭像 發表于 02-05 18:03 ?288次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S6模組規格書

    ESP8266系列】WT8266-S1模組產品介紹

    WT8266-S1WiFi模塊是由啟明云端科技開發的、低功耗高性價比的嵌入式無線網絡控制模塊。可滿足智能電網、樓宇自動化、安防、智能家居、遠程醫療等物聯網應用的需求。該模塊核心處理ESP82
    的頭像 發表于 01-29 18:22 ?590次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S1模組產品介紹

    ESP8266系列】WT8266-S6模組產品介紹

    處理ESP8266在較小尺寸封裝中集成了業界領先的TensilicaL106超低功耗32位微型MCU,帶有16位精簡模式,主頻支持80MHz和160MHz,支持R
    的頭像 發表于 01-29 18:22 ?389次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S6模組產品介紹

    無需安裝!在瀏覽里就能玩轉ESP32/ESP8266,這個神器絕了!

    無需安裝!在瀏覽里就能玩轉ESP32/ESP8266,這個神器絕了!【往期精選】十年嵌入式最深的痛,不是Bug,而是抓不到日志!vivo宣布原生支持HomeAssistant生態設備接入(含
    的頭像 發表于 01-10 10:01 ?1195次閱讀
    無需安裝!在瀏覽<b class='flag-5'>器</b>里就能玩轉<b class='flag-5'>ESP</b>32/<b class='flag-5'>ESP8266</b>,這個神器絕了!

    【瑞薩RA6E2地奇星開發板試用】基于RA6E2+ESP8266在STA模式下數據透傳到Python服務整體系統演示總結

    基于RA6E2+ESP8266在STA模式下數據透傳到Python服務整體系統演示總結 1. 需求描述 1.1. 系統實現概述 使用RA6E2驅動 esp8266 WiFi模塊, 用串口調試助手
    發表于 12-28 20:16

    晶科鑫 | 國產26MHz晶振匹配Espressif(樂鑫) ESP8285/ESP8266芯片案例

    【應用】國產26MHz頻率晶振應用于物聯網WIFI物聯網模塊(串口轉WiFi模塊),Espressif(樂鑫)ESP8285/ESP8266芯片匹配測試OKESP8285其實是ESP8266的升級版
    的頭像 發表于 11-21 15:37 ?4847次閱讀
    晶科鑫 | 國產26MHz晶振匹配Espressif(樂鑫) <b class='flag-5'>ESP</b>8285/<b class='flag-5'>ESP8266</b>芯片案例

    ESP8266ESP32開發板常見的2種下載方式

    ESP32和ESP8266是性價比很高而且使用較為廣泛的的Wi-Fi模塊,在物聯網(IoT)領域的DIY項目中可以首先考慮這2款產品。 兩款芯片都屬于32位處理ESP32是低功耗
    的頭像 發表于 11-10 20:30 ?1248次閱讀
    <b class='flag-5'>ESP8266</b>和<b class='flag-5'>ESP</b>32開發板常見的2種下載方式

    ESP8266ESP32開發板常見的2種下載方式

    協議,完整的 TCP/IP 協議棧以及藍牙協議棧。用戶可以使用這兩款模塊為現有的設備添加WIFI聯網功能或藍牙(ESP32),輕松的構建獨立的網絡控制器和遠程控制監控設備。 ESP8266
    發表于 10-24 18:04

    請問一下我想用ESP8685直接替換ESP8266而不用寫程序,可以讓ESP8685直接通過之前ESP8266的外掛的flash運行程序嗎

    請問一下我想用ESP8685直接替換ESP8266而不用寫程序,可以讓ESP8685直接通過之前ESP8266的外掛的flash運行程序嗎
    發表于 09-17 12:06

    STM32+esp8266連接機智云,上傳溫濕度數據并控制繼電器開關(平臺配置、代碼生成、代碼移植)

    本教程將詳細介紹如何將STM32微控制器ESP8266Wi-Fi模塊連接到機智云平臺,實現溫濕度數據的上傳與繼電器的遠程控制。通過此過程,您將學會如何配置機智云平臺,燒錄ESP8266
    的頭像 發表于 07-15 18:54 ?1291次閱讀
    STM32+<b class='flag-5'>esp8266</b>連接機智云,上傳溫濕度數據并<b class='flag-5'>控制</b>繼電器開關(平臺配置、代碼生成、代碼移植)

    ESP8266燒錄與機智云一鍵配網教程

    網。器件:ESP8266+燒錄千萬不要插反了噶,剛插進去,會有藍色閃一下,木問題的哦。需要下載的文件固件及燒寫工具:(代碼來源于B站:配網與實驗演示_嗶哩嗶哩_
    的頭像 發表于 05-24 11:04 ?2255次閱讀
    <b class='flag-5'>ESP8266</b>燒錄與機智云一鍵配網教程

    MCU定時器/計數

    RISC-V核低功耗MCU通過靈活的定時器架構、低功耗模式適配及硬件級中斷優化,在工業控制、智能家居等場景中實現高精度計時與能耗控制的協同設計,滿足復雜任務調度與實時響應的雙重需求?。 一、?硬件
    的頭像 發表于 04-27 13:54 ?870次閱讀