ESP32CAM物联网教学04
给小车配个显示屏
小智决定给小车增加一块显示屏,让小车看起来更好看一些。
- 点灯物联控制小车的行驶方向
淘宝上面可以使用的液晶显示屏种类非常多,(输入OLED搜索)经过挑选,选中了这一块:接口少(仅用四线驱动),屏幕大(1.54吋,相对于常规的0.96吋大了不少,这要和这个小车相配)
这块液晶屏使用的是CH1116芯片驱动,是IIC的驱动模式。IIC驱动模式只用了四个接口VCC、GND、SCK、SDA,分别是电源的正负极,时钟线SCK、数据线SDA。IIC是许多开发板都支持的通讯方式,而且不用使用专用的数据接口,只要有空余的输出接口,就可以配置成IIC端口了,这种被当做IIC通讯使用的端口就叫虚拟IIC端口。
OLED液晶屏接线方法:我们把ESP32Cam右侧的两个端口16号和0号配置成虚拟IIC端口,这样OLED的接线就可以都连接到右侧的相邻的四个端口上了:VCC------VCC OUT;GND------GND;SCK------16号;SDA------0号。
- 测试液晶屏程序
米思齐是自带OLED液晶屏驱动库的,我们可以在左侧的积木仓库中找到。拖动两个积木块"初始化SSD1306"和"page1"到舞台。修改液晶屏的参数,点击"SSD1306(12864)"后面的小三角号,重新选择为"SH1106(12864)",其他的默然就可以。
我们把这个程序烧写到ESP32Cam开发板中,把液晶屏用杜邦线连接起来,给开发板接上电源,无意外的话,液晶屏就能显示"1234"这几个数字了。
如果液晶屏无显示的话,请检测接线是否正确;如果接线没问题,还是不显示的话,可以按一下ESP32Cam底座上的复位按钮REST重启,应该就能显示。
分析原因:这个是因为液晶屏反应滞后的原因造成的,液晶屏从接通电源,到初始化,在到接收显示数据,并把数据显示到屏幕上,这个需要一定的时间。而ESP32Cam在接通电源的时候,就开始给液晶屏发送显示数据了,这个时候,液晶屏还没反应过来呢。等到液晶屏完成初始化反应过来的时候,ESP32Cam早已完成数据的发送,液晶屏也就错过了接收的时间,自然无法显示了。当我们给ESP32Cam重启时情况则不同,液晶屏已做好准备,ESP32Cam再一次重新发送时,液晶屏就能接受了,也就显示成功了。
- 给按键程序增加显示部分的代码
我们在原来小车的程序中,增加了液晶屏的显示积木代码,这样就能给小车增加了一块显示屏了,小车每一次接收到的控制指令,都能在液晶屏中显示出来。
怎么样,这两遥控车的颜值是不是提高了不少呢?关键还是我们亲手为他改造的呢!这样的遥控车,肯定是你以前买不到的,是唯一的、专属于自己的一辆!