本帖最后由 起点116 于 2022-3-25 17:33 编辑
@21小跑堂 #申请原创# @21ic小喇叭 初学者如何利用米思齐编写出一套完整的程序呢? 第一篇我们学会了通过米思齐软件编程让LED小灯亮起来,今天我们来学习交通信号的是如何工作的?交通信号灯的电路是如何搭建的呢?程序又是如何编写?我们需要注意哪些细节呢?带着这些问题我们一开始今天的学习吧。 第一步准备好硬件材料,主要用到的材料有ESP32开发板一块,三色LED灯模块一个,和杜邦线四根。
第二步进行线路路的搭建工作。电路搭建呢非常简单就是将开发板通过杜邦线连接到三色LED 灯模块上,确认好连接端口。我这里是这么选择的LED模块的负极接入开发板的接地端口,红色LED小灯接入开发板的14号端口,黄色LED小灯接入开发板的15号端口,绿色LED小灯接入开发板的16号端口。都接好后我们就可以开始下一步了。
第三步软件和硬件的测试工作,我们先来写一个测试程序,我们先让三个LED 灯同时点亮。来确认开发板端口是好用的,和硬件的工作是正常的,电路搭建是正确的以及电脑和开发板是有效连接的。
我的程序是这样编写的(编写过程中和大家分享一个米思齐编程过程中的小技巧,那就是米思齐里面的编程模块是可以复制粘贴的,省去了同一种模块反复去每个模块区去点击的麻烦,直接复制粘贴即可)。硬件和接线都正确了,开发板的程序写入也都没问题,三个LED小灯同时点亮了。
第四步确认我们先要做的实验要求:先是红灯点亮20秒,然后黄灯再点亮2秒,最后绿灯再亮20秒,依次循环重复。
第五步我们开始编程。这里需要用到的编程模块有输入输出里面的数字输出模块,选择好后去选择自己搭建电路时所使用的开发板端口,切忌不能选错哦选错了红绿灯的顺序就会改变。然后我们还会用到控制模块里面的延时模块注意下这里默认的单位是毫秒哦。程序编写成功我们写入开发板试一下。
???发现问题了,红灯亮了20 秒后没有熄灭,黄灯就亮了,而且时间 到了绿灯也点亮了,三个LED小灯同时点亮了。(如果现实中出现这种请况,那是绝对不被不允许的,那会导致交通拥堵严重的还会发生交通事故的。)出现问题我们不要怕因为这不是现实,我们只是在实验,而且我们是小白,只有发现了问题并成功地解决掉问题,我们才会在不断地在发现问题和解决问题中成长。发现了问题才是我们成长的关键。这很显然我们忽略了红绿灯是不能同时点亮的这一因素(问题发现了)。我们开始解决掉他吧。怎样才能让其中的一个LED小灯点亮时,另外两个LED小灯是灭的状态呢?对了,就是我们让其中的一个LED小灯点亮程序的同时时再加上另外两个LED小灯的状态是灭的程序,这样他们是不是就不会点亮了呢?我们开始修改程序来试一试。好了程序编写好啦,我们把它写入到开发板里再试一试。
嗯好像成功了哎,等等我好像又发现一个问题就是绿灯灭了红的马上就亮了,现实中可不是这样的吧,现实中应该是绿灯灭了后黄灯再亮几秒后红灯再点亮的吧,我们把程序再一次进行修改吧。
是不是和现实中一样了呢?这次没问题了吧。现在这个程序改好了我们再测试一下。这次真的成功啦,红绿灯状态和现实中一样了。现在恭喜我们,我们已经可以编程出一套完整的程序了哦,我们现在又往前进步了一大步了呢。是不是非常开心非常兴奋呢? 我们来总节下今天学习的主要内容: 1红绿灯硬件的搭建好后需注意编程过程中端口号不能选错; 2学会了延时模块的使用中应注意单位是毫秒; 3要根据实验要求进行编程,仔细阅读要求; 4即使有问题也不要紧我们不是天才不是伟人,都会出错,发现问题所在能够解决问题就好。 本次学习过程中错误的红绿灯程序和正确的红绿灯程序我都会放在底下仅供参考。非常希望各位大神留言或者私信我改进程序,让我们这些小白在学习的路上少走一些弯路。(这只是小白刚刚学会的新技能和大神们的技术无法相提并论,勿喷。) 小白不会一直是小白,菜鸟努力终将飞上蓝天。让我们一起努力,加油我们是最棒的。
|