美文网首页我爱编程
树莓派3硬件I2C驱动OLED

树莓派3硬件I2C驱动OLED

作者: 追梦Y少年 | 来源:发表于2017-08-14 05:09 被阅读0次

    硬件准备:树莓派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~

    相关文章

      网友评论

        本文标题:树莓派3硬件I2C驱动OLED

        本文链接:https://www.haomeiwen.com/subject/luyyrxtx.html