粉丝4734获赞2.4万

如果你最近也在学习 esp 三二开发板或者互联网相关知识,那我相信这块板子或许是目前最适合新手学习使用的。 首先在主控方面使用的是一块基于 esp 三二 s 三的模组,那性能也是非常的强悍。 cpu 是 一块高达二百四十兆赫兹的双核处理器,整个模组呢是具备十六兆的存储和八兆的运行内存, 在运行一些复杂项目,比如说基于 lv g l 去驱动大尺寸屏幕的时候,不会因为出现内存不足导致的卡顿、花屏等问题。 通讯方面, wifi 蓝牙其实一直都是 esp 系列的看家本领。在模块的下方有一个扬声器,我们可以使用它来播放音乐,这里是一个用来收音的咪头,然后在旁边呢则是一块负责音频处理的芯片,同时它也支持音频的输出。 外设接口方面也是非常的丰富,可以看到下方有一排按钮,然后这边是预留的电源接口,上方呢则是引出的核心主控的 i o 口,然后在这边有一个 tf 的 卡座,在这边是一个为 atk 模块预留的接口,那简单讲就是你可以快速的将其他传感器, 比如说 gps、 蓝牙、陀螺仪等模块直接插上即用,反过来在这边有两个 usb 的 接口,然后这是一个红外发射, 这是个红外接收,这一排接口呢则是为摄像头预留的,然后在这里还有一个光环境传感器,在屏幕下方其实还有蜂鸣器,加速度传感器等等。哈,那如果说你能把这块板子玩转的话,真的能学到不少东西。说这么多,接下来我们就上店看一下, 接上电源,然后打开下面这个开关,出厂默认是有这么一个固件,然后我的这块屏幕呢是二点四英寸的,现在看到的这个 ui 界面就是基于 lvgl 来开发的,那官方呢,也开源了这个项目, 通过下方的按钮,我们可以选择不同的应用,比如说我们现在打开这个音乐,进来之后就自动播放, 然后这边还有视频,大家知道这个电影吗?可以在评论区告诉我, 可以看到整个的操作其实还是非常流畅的,我们呢也可以在这里进行文件的预览,这里显示的文件呢实际上就是来自于这个 sd 卡的下方呢,它还可以进行图片的预览。 那唯一想吐槽的可能就是这几个按钮操作起来实在太难受了。除了刚刚给大家演示的案例,那官方呢,其实还提供了海量的试例程序,对于我这种新手小白来讲是非常友好的, 后续有机会我也会和大家分享更多有意思的案例,那本期视频就到此结束,我们下期见。


哈喽啊,我是佳哥,这一节讲解一下 esp 三二的一键配网,因为最近,嗯,我应网友的一个建议吧,在做一个物联网投喂,其中我就用到了屏幕上看到的这块 esp 三二 啊,会用到这个一键配网,那么我就顺带的把这个 e s p 三二的一键配网也讲解一下来 啊,这里是我刚才嗯演示的时候啊,演练的时候把已经做好的代码我大概说一下,呃, 在这里呢,我们米思琪用到 esp 三二的一键配网,我,我是用到了巴法云,这巴法云的库是怎么来呢?我们在右上角有个库管理, 点开了之后呢,我们可以看到下面有个巴法云 esp 三二扩展库,我这里已经安装好了,就显示已安装,你还没安装的话呢,它会显示一个待安装,把它勾上,然后点一下这个云端导入 就可以了。那导入完成之后呢,你的左侧菜单就能看到巴法云其中小程序配网里面的 a p 一键配网,把它拖出来啊,放在这个初始化的地方就 ok 了。好,那么我现在先上传一下, 好,上传成功。那么呢现在我们就开始给他一键配网,这里有两种方式,第一种方式呢是可以直接扫描他的这个 这上面这模块上面的这个小程序码,另一种方式呢就是因为有时候呢我们呃换到另外一个环境的话呢,不一定都能看到这个码,是吧?啊,另外一种方式就是我们可以在手机 啊发现里面的小程序搜索一键配网啊,搜索一键配网,找到这个巴法科技的这个小程序,我们点开, 我们刚才选择的是 a p 模式的,所以我们看到这里是 a r kiss, 我们先要切换到 a p 模式。好,这里选择路由器 wifi, 指的就是我们要配哪一个网络环境啊?找到我输一下密码, 接着下一步啊,由于我要迁就这个拍摄效果啊,所以有点别扭。接着下来呢,这里就要选择啊,设备 wifi, 在这里,我们就找到咱们的 esp 三二, 你在哪里呢? 来,看到这里有个八法开头的,这里有个八法开头的,它为什么会叫这个名字呢?跟八六六不同呢,我们可以看一下代码, 来这里啊,他定义了咱们这个设备啊 buff, 然后再加一个一串 mac 地,类似于 mac 地址的开头吧。好, 我们继续走,我们选中它,然后确定这这个是不需要 me 密码的啊,然后直接下一步就行了。连接 好,最后他会显示配网成功。回到我们的界面 来,看到他现在已经,呃,连网了,连网成功了,正在连接咱们的物联网上面的 n t p 时间服务器。连上 n t p 时间服务器之后呢,这个时间就正确了。 好,时间已经啊已经连上了啊,好,就是这样子啊,这个 e s p 三二的一键配网,嗯,需要依赖一个小程序吧,呃,就跟八六六有点不同。好,那么这节课就先讲到这里。

大家好,我是阿云,今天跟大家分享一下怎么创建任务。这次我们要添加多一个 led, 目的是让两个 led 功能都能同时运作起来。 如果我们把呼吸灯和按键功能放到同一个外循环中运行起来,就是 led 呼吸一次才轮到按键功能触发,这显然不符合我们的正常使用体验。我们想要的是这两个功能同时运行,互不干扰。 为了达到这个效果,我们需要引入 free r t o s。 的 任务机制。首先我们打开编程指南, 在系统 api 中有 free r t o s 该数这一章,这里介绍到 free r t o s 是 实时操作系统内核和 esp idf 集成的这个内核,所以我们的程序是运行在一个实时操作系统中。 对于初学者来说,我们不知道什么是实时操作系统,但我们知道什么是操作系统,我们用的 windows 就是 操作系统。我们在电脑上可以同时听音乐、看视频、打游戏,这归功于系统中的任务调度机制。我们可以打开任务管理器看看, 我们可以看到不同的时间 cpu 在 运行不同的程序,它通过内部政策去安排各个程序的执行顺序, 因为安排得当,用户体验起来感觉他们在同时运行。实时操作系统也有任务调度机制,通过它我们写的各个功能也能同时运行。 我们回到编程指南,下面介绍了很多初学者很难看得懂的内容,我们直接略过。我们来到使用非 r t o s 这一小节,在后台任务这一段讲到项目启动的时候会创建好几个任务,而 app 没函数,属于主任务, 在我们不知道的情况下,已经体验到了多个任务同时运行的效果,那么我们只要把各功能转化为各个任务就能互不干扰的工作。 下面我们就看一下怎么创建任务。我们来到飞 r t o s id f 这一张,这里介绍到开发商把飞 r t o s 改造的能适配双核 cpu。 然后下面是一些我们触水者不太能看得懂的概念, 现在看不懂没关系,可以等我们以后积累足够多的知识和经验再回来。我们来到任务这一小节,这里会介绍任务的创建、执行、删除。 再到下面就介绍如何调度,这些理论知识看起来又多又复杂,但我们实际上要做的只有一件事,就是创建任务框架中提供了四个函数让我们创建任务。我们先用最简单的,我们点击一下跳转到他的 api 介绍, 跳转之后看上面蓝色的地方就是他的函数。声明,在我们使用这个函数之前,我们要确保我们的项目已经引入了 free r t o s task 头文件。 如果你是用 hello world 模板创建项目,那么这个头文件已经被引入了。接下来我们就直接写代码, s task create。 第一个参数是函数职称,所以我们要做的是创建一个函数,一个函数对应一个功能,返回类型必须是 void 的 类型,函数名可以自由修改。 我先写按键控制 led 的 功能,所以我起的函数名是 button led task。 然后函数的入参必须是 word, 类型指正。接着我们写任务内容,我们直接去把按键功能的 word 循环复制过来,配置相关的代码可以留在内函数中,我们直接把这一段代码剪切过去。 ok, 这样一个任务函数就写好了。我们复制一下函数名,填到 create task 的 第一个入参即可。 接下来我们填第二个参数。第二个参数是制服串类型,用来给任务起一个名字,我们直接用函数名即可。 下一个参数是给任务分配占空间大小,占空间可以简单的理解为任务专属的内存空间, 它的单位是字,一个字等于三十二位,即等于四个字节,我们该填多大才合适了?根据前年的经验,可以无老填二零四八,二零四八个字就等于八 kb, 对 于简单任务来说都是足够的。 下一个参数是要传给任务函数的入仓,我们暂时不需要用到,直接填乱即可。下一个参数是任务优先级,可以填零到三十一,数字越大优先级越高, 我们可以先随便填一个数字,例如我填十。最后一个参数是用来接收任务锯饼,任务锯饼可以用来随时暂停、恢复、删除任务等等,但我们也暂时用不上,直接填烂即可。 ok, 这样我们的第一个任务就可以被创建出来。接下来我们创建呼吸灯的任务,首先创建一个呼吸灯的任务函数, 然后我们把呼吸灯的功能代码搬过来,先把注视取消掉,然后把外循环剪切过去。 ok, 呼吸灯的任务创建完成,然后我们要修改一下呼吸灯或另一个 led 的 引角,这样才可以让两盏灯都工作。最后填一下 task create 函数的参数即可。 没什么特别需求的话,我们就只需要改前面两个参数,这样两个任务就创建成功。我们构建项目准备测试,在他构建的时候我讲讲这次接线的难点,某些人的开发版只有两个 g n d 引角, 一个给了按钮,一个给了 led, 再加一个 led 就 不够用了。我们可以把两根杜邦线的塑料壳拆出来,然后用电阻的引角穿过一个杜邦线的端口, 穿出来的引角足够长,可以插入另一根杜邦线的端口,这样杜邦线就可以跟电阻并连接入 g n d 引角。现在我们稍入程序测试一下, 烧录成功,我们测试一下, 可以看到按键功能可以及时响应,同时呼吸灯也能正常运作, 这符合我们的使用体验。到这里我们就通过任务机制实现两个功能的同时运转。这期视频就到这里,感谢各位观看。