• 树莓派iic驱动OLED 显示当前日期和时间


     1 #!/usr/bin/env python  
     2   
     3 import time  
     4 import datetime as datetime  
     5 from luma.core.interface.serial import i2c, spi  
     6 from luma.core.render import canvas  
     7 from luma.oled.device import ssd1306, ssd1325, ssd1331, sh1106
     8 from PIL import ImageDraw, Image,ImageFont  
     9   
    10 device = sh1106(port=1, address=0x3C)  
    11 font = ImageFont.load_default()  
    12 fontYear = ImageFont.truetype('/usr/share/fonts/truetype/freefont/FreeMonoBold.ttf', 18)  
    13 font2 = ImageFont.truetype('/usr/share/fonts/truetype/freefont/FreeMonoBold.ttf', 16)  
    14   
    15 def Show(d,fullDt):     
    16       
    17     y =  fullDt.strftime('%Y-')  
    18     dt = fullDt.strftime('%m-%d')  
    19     tm = fullDt.strftime('%H:%M:%S')    
    20   
    21     with canvas(d) as draw:          
    22         draw.text((40, 0), "TIME", font=fontYear,fill=255)  
    23         draw.text((10, 22), y, font=font2, fill=255)  
    24         draw.text((60, 22), dt, font=font2, fill=255)  
    25         draw.text((20, 44), tm, font=font2, fill=255)
    26   
    27 def main():  
    28     nowDt = datetime.datetime.now() + datetime.timedelta(hours=8)  
    29     while True:  
    30         Show(device,nowDt)  
    31         nowDt = nowDt + datetime.timedelta(seconds=1)  
    32         time.sleep(1)  
    33   
    34 if __name__ == "__main__":  
    35     main()  

     环境配置:

    sudo apt-get install -y python-smbus  
    sudo apt-get install -y i2c-tools  

    运行一下

     sudo i2cdetect -y 1

    正常情况下默认在0x3C处有标注,这就说明接线成功了。

    sudo apt-get install libfreetype6-dev libjpeg-dev build-essential  

    安装python3相关

    sudo apt-get install python3-dev python3-pip  
    sudo -H pip3 install --upgrade luma.oled  

     

  • 相关阅读:
    Datax streamreader json测试样例
    dbeaver 连接 elasticsearch 记录
    灾害链开发记录资料汇总
    mxgraph
    drawio www.diagrams.net 画图应用程序开发过程资料汇总
    neo4j学习记录
    GraphVis 图可视化分析组件
    D3学习记录
    Kubernetes K8S之固定节点nodeName和nodeSelector调度详解
    记一次性能优化,单台4核8G机器支撑5万QPS
  • 原文地址:https://www.cnblogs.com/duanjinjie/p/9121933.html
Copyright © 2020-2023  润新知