树莓派i2c python_树莓派3硬件I2C驱动OLED

硬件准备:树莓派3,安装rasbian系统的内存卡(这里用rasbian举例),支持IIC协议的OLED屏幕,杜邦线

硬件连接 :

树莓派                                                           OLED

GPIO.1(3V3)           -------------------------->           VCC

GPIO.6(0V)             -------------------------->           GND

GPIO.5(SCL)            -------------------------->            SCL

GPIO.5(SDA)            -------------------------->           SDA

大家可以通过指令查询引脚

$ gpio readall

首先打开IIC接口(rasbian默认关闭)

$ sudo raspi-config   进入图形配置界面

键盘移动选择Interfacing Options------>I2C------>Yes------->OK------->finsh             搞定

把屏幕接上去测试一下是否检测到IIC设备

$ sudo i2cdetect -y -a 1

看到圆圈中的3c表示IIC打开成功,这个是它的地址

到此,硬件平台搭建成功,继续接下来的操作。

树莓派控制GPIO有很多种库可以使用,玩过单片机的可以使用wiringPi库来操作树莓派,这个库使用C语言进行开发,而且集成了IIC、SPI|单总线等驱动,编程风格类似Arduino,熟练python的可以使用python库,但是GPIO的python没有集成上述总线的驱动,因此要驱动IIC协议的OLED屏幕,需要安装第三方python库。本文使用python库

从github下载OLED的驱动代码,https://github.com/rm-hull/ssd1306  下载luma.oled.master.zip解压

$ unzip luma.oled.master.zip

$ cd luma.oled.master

这里有个小技巧,可以发现运行这个驱动代码需要什么module

我们继续进入tests

$ cd tests

然后运行一个驱动试试

$ python test_ssd1306.py

这时我的终端提示缺少mock module 然后我顺理成章的安装它

$ sudo pip install -U mock

好了安装成功后继续运行一下驱动代码

$ python test_ssd1306.py

这时我的终端又提示缺少pytest module     一样的套路,继续

$ sudo pip install -U pytest

继续运行一下驱动代码,这时运行成功了,说明你的模块已经安装好了

这个时候你就可以返回上一个目录安装setup.py了

$ sudo setup.py install

这时我开始进入examples文件夹寻找例程跑一下,发现这个里面只有一份readme文件,打开这份文件你会发现他给了你一个网址,然后我们可以选择打开这个网址,但是我直接进入https://luma-oled.readthedocs.io/en/latest/index.html这个网站,然后我们会发现一个Installation选项,我们点进去,这个是最新版驱动模块的安装方法,我们按照官方提示安装一下也无妨

$ sudo apt-get install python-dev python-pip libfreetype6-dev libjpeg-dev

$ sudo -H pip install --upgrade pip

$ sudo apt-get purge python-pip

$ sudo -H pip install --upgrade luma.oled

提示:如果执行这4条指令中的任何一条指令提示出错,重复执行这条指令,因为可能是网络问题导致安装失败,实在安装不上就放弃它!!

然后我们的目的是为了找到例程测试驱动是否能用,我们接着点击网页左上角Python usage ,拉到最下面Examples那里,然后点击底下留有的连接luma.examples,然后下载里面的压缩包,继续解压。

$ unzip luma.examples

$ cd examples

然后你会发现很多历程,随便执行一个看看效果

$ python runner.py

然后观察OLED就能看见如图效果了

此时,使用IIC协议的OLED屏幕驱动成功!

Now enjoy youself~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值