本站改版新增arduino频道
ESP32(MicroPython) OLED随机显示
MicroPython固件内置驱动对IIC OLED提供了丰富的支持,除显示字符外还可以绘制图形,本程序有多个版本,分别用于随机绘制点、矩形、填充矩形和线条。
绘制点
'''
接线:OLED(IIC)
SCL-->(18)
SDA-->(23)
'''
#导入Pin模块
from machine import Pin
import time
from machine import SoftI2C
from ssd1306 import SSD1306_I2C #I2C的oled选该方法
import random
#创建硬件I2C对象
#i2c=I2C(0,sda=Pin(19), scl=Pin(18), freq=400000)
#创建软件I2C对象
i2c = SoftI2C(sda=Pin(23), scl=Pin(18))
#创建OLED对象,OLED分辨率、I2C接口
oled = SSD1306_I2C(128, 64, i2c)
a=0
b=0
e=0
#程序入口
if __name__=="__main__":
while True:
a=random.randint(0,127)
b=random.randint(0,63)
e=random.randint(0,1)
oled.pixel(a,b,1) #显示一个像素点
oled.show() #执行显示
绘制矩形
'''
接线:OLED(IIC)
SCL-->(18)
SDA-->(23)
'''
#导入Pin模块
from machine import Pin
import time
from machine import SoftI2C
from ssd1306 import SSD1306_I2C #I2C的oled选该方法
import random
#创建硬件I2C对象
#i2c=I2C(0,sda=Pin(19), scl=Pin(18), freq=400000)
#创建软件I2C对象
i2c = SoftI2C(sda=Pin(23), scl=Pin(18))
#创建OLED对象,OLED分辨率、I2C接口
oled = SSD1306_I2C(128, 64, i2c)
a=0
b=0
c=0
d=0
e=0
#程序入口
if __name__=="__main__":
while True:
a=random.randint(0,127)
b=random.randint(0,63)
c=random.randint(0,32)
d=random.randint(0,32)
e=random.randint(0,1)
oled.rect(a,b,c,d,e) #画矩形
oled.show() #执行显示
time.sleep_ms(20)
绘制填充矩形
'''
接线:OLED(IIC)
SCL-->(18)
SDA-->(23)
'''
#导入Pin模块
from machine import Pin
import time
from machine import SoftI2C
from ssd1306 import SSD1306_I2C #I2C的oled选该方法
import random
#创建硬件I2C对象
#i2c=I2C(0,sda=Pin(19), scl=Pin(18), freq=400000)
#创建软件I2C对象
i2c = SoftI2C(sda=Pin(23), scl=Pin(18))
#创建OLED对象,OLED分辨率、I2C接口
oled = SSD1306_I2C(128, 64, i2c)
a=0
b=0
c=0
d=0
e=0
#程序入口
if __name__=="__main__":
while True:
a=random.randint(0,127)
b=random.randint(0,63)
c=random.randint(0,32)
d=random.randint(0,32)
e=random.randint(0,1)
oled.fill_rect(a,b,c,d,e) #画填充矩形
oled.show() #执行显示
time.sleep_ms(20)
绘制线条
'''
接线:OLED(IIC)
SCL-->(18)
SDA-->(23)
'''
#导入Pin模块
from machine import Pin
import time
from machine import SoftI2C
from ssd1306 import SSD1306_I2C #I2C的oled选该方法
import random
#创建硬件I2C对象
#i2c=I2C(0,sda=Pin(19), scl=Pin(18), freq=400000)
#创建软件I2C对象
i2c = SoftI2C(sda=Pin(23), scl=Pin(18))
#创建OLED对象,OLED分辨率、I2C接口
oled = SSD1306_I2C(128, 64, i2c)
a=0
b=0
c=0
d=0
e=0
#程序入口
if __name__=="__main__":
while True:
a=random.randint(0,127)
b=random.randint(0,63)
c=random.randint(1,32)
d=random.randint(1,32)
e=random.randint(0,1)
oled.line(a,b,c,d,e) #画指定坐标直线
oled.show() #执行显示
time.sleep_ms(20)
————————————————
版权声明:本文为CSDN博主「路易斯720」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_74155302/article/details/131015326
Copyright © 2014 ESP56.com All Rights Reserved
晋ICP备14006235号-22 晋公网安备14108102001165号
执行时间: 0.0093789100646973 seconds