ESP32學習筆記(三)之運行多任務


經過前兩個帖子的折騰,基本的開發環境已經搭建完畢!我們現在終於可以快樂的寫代碼、調傳感器了!!
因為小弟使用的是官方樂鑫原廠的SDK,我在官網也只能找到帶freertos的SDK包,因此下面就基於這個原廠SDK來給大家分享一下esp32運行多任務的過程(LED閃爍+串口打印)


首先我們把      esp/esp-idf/examples   里面的LED燈閃爍的例程序復制出來。
          這里有個小細節,因為官方的blink程序,是通過menuconfig這個SDK設置工具來選擇引腳的,因此你可以使用SDK配置工具直接選擇你需要控制的引腳,也可以用程序來選擇引腳,  下面我將使用SDK配置工具,也就是menuconfig來配置引腳。

進入esp目錄,把程序復制出來
   cd  esp
   cp  -r /esp/esp-idf/examples/get-started/blink .    (注意不要漏掉 . 這是復制到本目錄的意思)

使用vim觀看代碼寫法

   sudo vim main.c            (先進入blink/main這個目錄,再運行此語句)



代碼大概意思就是設置GPIO電平,來達到LED閃爍的效果,然后主函數創建一個任務。

然后我先測試一下程序的效果。

執行
make menuconfig     

上下鍵選擇到第5個選項





這個選項是例程那個引腳選擇工具,我們回車進去。





這里是選擇io引腳,我選擇5號引腳,也就是板子上面的GPIO5,保存退出

編譯並且下載程序
su
make flash

然后等待板子燒寫完成,並且使用杜邦線連接LED到GPIO5,你就能看到LED閃爍了。

LED閃爍測試完畢,我們繼續增加一個任務。我直接參考官方的例子程序創建一個串口輸出任務。





然后在主函數里面創建一個新任務




注意,一定要把優先級修改一下,不然會卡死在一個任務里面,因為我們用的是阻塞延時,因此需要把優先級修改。我修改為5。
(這里不理解的請查閱freertos的相關資料,與esp32無關)

然后編譯下載

su 
make flash

等待下載完畢,打開串口助手

sudo cutecom

眼睛盯着led以及串口軟件








OK,LED閃爍和串口輸出無誤。

enjoy  youself!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM