Raspberry Pi Pico配合OLED显示图片和汉字

 

OLED,即有机发光二极管(Organic Light-Emitting Diode),又称为有机电激光显示(Organic Electroluminesence Display, OELD)。因为具备轻薄、省电等特性。

01

OLED驱动SSD1315

SSDI315是一种单芯片CMOS OLEO/PLED驱动器,用于有机聚合物发光二极管dot-1natrix图形显示系统。它由128个segments和64个commons组成。这个IC是为普通阴极型OLED/PLED面板设计的

ssd1315直接显示来自其内部128×64位图形显示数据RAM(ODOR)的数据,MCU通过硬件可选的12C接口、6800-/8080-系列兼容并行接口或串行外围接口发送数据/命令。

02


图片显示

我们这次选用的一块0.96寸的OLED,某宝上有很多,大家可以自行去挑选。为了能快速显示图片,我们用PICO提供的例程中的frambuf来进行显示。

首先需要将转换的图片进行二值化并保存为pbm格式,PBM格式由Jef Poskanzer在20世纪80年代发明,为了便于通过电子邮件,用ASCII码表示单色位图,能够承受一般的文本格式的变动。

图片二值化:

def binary_image(image):
    gray = cv.cvtColor(image, cv.COLOR_RGB2GRAY)
    h, w =gray.shape[:2]
    m = np.reshape(gray, [1,w*h])
    mean = m.sum()/(w*h)
    _, binary =  cv.threshold(gray, mean, 255, cv.THRESH_BINARY)
    return binary

图片保存为pbm格式

image = cv.imread("111.bmp")
image = binary_image(image)#二值化
cv.imwrite('111.pbm',image)#保存
with open('111.pbm', 'rb') as f:  # 注意,这里的'rb'参数很重要,没有的话会读取错误
    f.readline()
    f.readline()
    data = bytearray(f.read())
print(data)
bytearray(b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07\xfe\xfc\x8d\xf8\x1c\x7f\xe0\x0f\xfe\xfc\x8d\xf8\x1c\x7f\xf0\x0c\x06\xe7\x02\x07\xdc`0\x0c\xf6f\x0f\x87\x9fo0\r\xf6\x04\r\x80\x07o\xb0\r\xf6\xc7\x00>\x1fo\xb0\r\xf6\xfb\xee\x17\xffo\xb0\r\xf6\xfb\xee\x07\xffo\xb0\x0c\x06\xe4\xf3\xf8\x1f`0\x0f\xfe\xdbm\xb6\xdb\x7f\xf0\x0f\xfe\xdbm\xb6\xdb\x7f\xf0\x00\x00\x1f\xff\xf9\xd8\x00\x00\x00F\x0f\xcf\x9e\xfc\x1e`\x00f\x07\x8f\x8e\xfc>\xf0\x00`8\x1e~\xe0g\xf0\x0eF\xc3\x0e3\x03p0\x0f\x06\xc3\x0e1\x03p0\x0f\xb9\xe0\x7f\x87\xe4\x160\x0f\xef\xdb\x987dv0\x0f\xef\xdb\x907$v0\r\xb0\x1c\xf1\xc1\xe0f\xf0\r\x8f\xf3\x00\x00x\xf1\xb0\r\x8f\xe3\x00\x009\xf1\xb0\x0cp\x03\x00\x00\xfb\x1c\xc0\x02n\x03\x00\x08\xcd\xe7\x80\x03n\x03\x0
  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值