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!

猜你喜欢

转载自www.cnblogs.com/SexyBoyHub/p/8946929.html