广泛使用的日立HD44780控制器的树莓PI LCD库。

RPLCD的Python项目详细描述


Join the chat at https://gitter.im/RPLCD/LobbyBuild StatusPyPI VersionPyPI WheelPyPI Python VersionsDependenciesLicense

日立HD44780的Python3/2覆盆子PI字符LCD库 控制器。它既支持GPIO(并行)模式,也支持I?C板 端口扩展器(例如PCF8574或MCP23008)。

这个图书馆的灵感来源于Adafruit Industries的CharLCD图书馆以及 Arduino的LiquidCrystal库。

对于gpio模式,没有外部依赖项(除了RPi.GPIO库 需要预先安装在raspbian上才能使用此库。如果你想的话 通过i~c控制lcd,那么您还需要python-smbussmbus2库。如果你 要使用pigpio控制LCD,必须安装pigpio库。

如果你想开始使用rplcd,你应该read the docs:)

Photo of 20x4 LCD in action

设置

可以使用pip从PyPI直接安装rplcd:

$ sudo pip install RPLCD

如果您想使用iC,还需要smbus或smbus2库:

$ sudo apt install python-smbus
or
$ sudo pip install smbus2

rplcd将首先尝试使用smbus(如果可用),如果不可用,则返回smbus2。

也可以在不使用pip的情况下手动安装库。要么直接复制 脚本到工作目录并导入它们,或者下载存储库 运行python setup.py install将其安装到python包中 目录。

功能

实施

  • 简单易用的API
  • 支持4位和8位模式
  • 支持并行(GPIO)和I?C连接
  • 支持自定义字符
  • 支持背光控制电路
  • 内置支持a00a02字符表
  • python 2/3兼容
  • 缓存:仅当字符更改时才写入字符
  • 没有外部依赖关系(除了rpi.gpiopython smbussmbus2之外,如果需要的话 空调支架)

愿望列表

这些事情可能会在未来实现,这取决于我的空闲时间和 动机:

  • micropython端口

支持的I?C端口扩展器

  • PCF8574(供Ali Express上的许多I?C LCD适配器使用)
  • MCP23008(用于Adafruit i?c LCD背包)
  • MCP23017

文档

测试

交互式测试脚本

要测试LCD,请使用^{tt7}运行rplcd-tests脚本$ 目标。

单元测试

也有单元测试。首先,安装依赖项:

pip install -U -r requirements-dev.txt

然后运行测试:

py.test -v

编码指南

PEP8通过flake8并将max-line-width设置为99和 E126-E128,C901忽略:

flake8 --max-line-length=99 --ignore=E126,E127,E128,C901 RPLCD/lcd.py

许可证

此代码是在mit许可下授权的,有关详细信息,请参见LICENSE filetldrlegal

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java变量始终存储0值。为什么?   如何使用Java/REST将Azure blob从一个存储容器移动到另一个存储容器?   java将commons DBCP从1.2升级到1.4,我应该害怕吗?   java如何使用分隔符拆分字符串?   java使用数组读取json对象   java在groovy中切片字符串   交换数组java的两个邻域元素   java移动用于确定字符串是否为回文的逻辑   java Android应用程序在一个活动中崩溃   java Sparkjava将webapp文件夹设置为静态资源/模板的文件夹   java复杂条件表达式,用户易用。   java如何仅在表存在时从表中选择值   java I无法将数据从Recyclerview传递到其他活动   java数据结构最佳设计(大数据)   java Android从DatePickerDialogFragment中删除日历视图   java将数据从Firebase获取到片段   数组。sort()在java中运行不正常