micropython(4):使用ESP8266 控制 oled 屏幕,并显示 helloworld 字符

前言


相关micropython 全部分类:
https://blog.csdn.net/freewebsys/category_9670462.html

本文的原文连接是:
https://blog.csdn.net/freewebsys/article/details/104039043

未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys

1,关于esp 8266 和 oled


oled 也是挺便宜的了,0.96OLED 也就10 块钱,但是有4 pin 还有多个接口的。
4pin 的只能使用 i2c 进行通讯。

虽然很简单,也是折腾半天,开始不敢接线呢,怕错了把设备弄坏。
而且没有找对gpio口,和标号,折腾半天。flash 接口不可以用。

2,使用lib库驱动 1306 4pin led


micropython 官方驱动,没有的再从其他地方寻找。
https://github.com/micropython/micropython/tree/master/drivers

micropython 已经有官方的驱动库了。直接引用:
https://raw.githubusercontent.com/micropython/micropython/master/drivers/display/ssd1306.py

然后使用 thony 把这个文件 ssd1306.py 保存到 micropython 当前目录下面。

在这里插入图片描述

这个参数程序:

from machine import Pin, I2C
# 这个特别注意不要接反了。
i2c = I2C(scl=Pin(4), sda=Pin(5))

from ssd1306 import SSD1306_I2C
oled = SSD1306_I2C(128, 64, i2c)

oled.fill(1)
oled.show()
oled.fill(0)
oled.show()

oled.pixel(0, 0, 1)
oled.show()
oled.pixel(127, 63, 1)
oled.show()

oled.text('Hello', 0, 0)
oled.text('World', 0, 10)
oled.show()

oled.invert(True)
oled.invert(False)

参考文章:
https://www.jianshu.com/p/30b432c69271

在这里插入图片描述

必须保证线路链接正确。
三伏和接地,和 d1 d2 。两个pin,其中 d1 d2 对应的gpio 是 05 04

在这里插入图片描述
主要是就驱动,也要拷贝到 flash 上,再有就线路别接错误就可以。

3,总结


实验还是非常容易的,找对端口和 标号,d1 d2 是板子上的端口。
真正的对应gpio得看产品的说明图,才可以。
然后就可以控制了。可以使用官方的lib库,当然代码都差不多。
1306 能驱动起来了,后续接着研究其他设备的接入。
也算是拓展知识点了。

本文的原文连接是:
https://blog.csdn.net/freewebsys/article/details/104039043

博主地址是:https://blog.csdn.net/freewebsys

发布了624 篇原创文章 · 获赞 259 · 访问量 208万+

猜你喜欢

转载自blog.csdn.net/freewebsys/article/details/104039043