使用SSD1306、SSD1309、SSD1322、SSD1325、SSD1327、SSD1331、SSD1351或SH1106芯片组驱动OLED设备的小型库

luma.oled的Python项目详细描述


luma.coreluma.docsluma.emulatorluma.examplesluma.lcdluma.led_matrix luma.oled

发光二极管

SSD1306/SSD1309/SSD1322/SSD1325/SSD1327/SSD1331/SSD1351/SH1106的显示驱动程序

https://travis-ci.org/rm-hull/luma.oled.svg?branch=masterhttps://coveralls.io/repos/github/rm-hull/luma.oled/badge.svg?branch=masterhttps://readthedocs.org/projects/luma-oled/badge/?version=latesthttps://img.shields.io/pypi/pyversions/luma.oled.svghttps://img.shields.io/pypi/v/luma.oled.svghttps://img.shields.io/maintenance/yes/2019.svg?maxAge=2592000

与OLED矩阵显示器接口的Python库,SSD1306、SSD1309, 使用I2C/SPI ON的SSD1322、SSD1325、SSD1327、SSD1331、SSD1351或SH1106驱动程序 覆盆子pi和其他基于linux的单板计算机-它提供了 与枕头兼容的绘图画布和其他支持功能:

  • 滚动/平移功能,
  • 终端式打印,
  • 国家管理,
  • 颜色/灰度(如果支持),
  • 抖动为单色

文档

有关安装说明和示例的完整文档,请参见 https://luma-oled.readthedocs.io

测试设备的列表可以在 wiki

下图显示的是SSD1306(128 x 64像素),电路板很小 在RPI箱子里。

mountedssd1322

除了各种物理oled设备的显示驱动程序外,还有 实时运行的模拟器(使用pygame)和其他可以 截图,或者组装动画gif,如下面的例子所示(源代码 因为这些可以在luma.examples中找到 Git存储库:

clockinvaderscrawl

中断更改

版本2.0.0于2017年1月11日发布:该版本对 github项目从ssd1306luma.oled以反映不断变化的性质 代码库的。

一些核心功能已经转移到另一个git存储库, luma.core:这已启用 另一个进行整容的项目:pcd8544现在已经重生为 luma.lcd:相同的api现在可以是 用于两个项目。同样,max7219已重命名为 luma.led_matrix所以 它还可以利用公共api。

结果是使用旧^ {STR 1 } $ SSD1306 包的任何现有代码 需要更新。变化应限于改变进口 仅限语句,并在 upgrade documentation

许可证

麻省理工学院许可证(MIT)

版权所有(c)2014-2019 Richard Hull和撰稿人

兹免费准许任何人取得副本 本软件和相关文档文件(“软件”)的 在软件中不受限制,包括但不限于 使用、复制、修改、合并、发布、分发、再授权和/或出售 软件的副本,并允许软件的用户 在满足以下条件的情况下,可以这样做:

上述版权公告及本许可公告须包括在 软件的拷贝或大部分。

本软件按“原样”提供,无任何形式的保证,明示或 默示的,包括但不限于适销性保证, 适合特定目的和不侵权。在任何情况下 作者或版权所有者应对任何索赔、损害或其他 责任,无论是在合同诉讼、侵权诉讼或其他诉讼中, 不属于或与本软件有关,或使用或与本软件的其他交易有关。 软件。

贡献

拉取请求(代码更改/文档/输入错误/功能请求/设置) 被欣然接受。如果你打算引进一些大规模的 更改,请先联系以确保我们在同一页上:尝试 包括任何新方法或类的docstring,并保持方法体小, 可读且符合PEP8。添加测试并努力保持代码覆盖率E类 水平高。

Github

源代码可在以下位置克隆:https://github.com/rm-hull/luma.oled

贡献者

  • thijs triemstra(@thijstriemstra)
  • 克里斯托夫·汉德尔(@fragfutter)
  • 波尔布(@boeerb)
  • Xes(@Xes)
  • 罗杰·达尔(@roger dahl)
  • 瓦克拉夫什米拉乌尔(@eudoxos)
  • 克劳斯·比耶尔(@bjerrep)
  • VX显示器有限责任公司(@vxgeeks)
  • 克里斯托弗·阿恩特(@spotlightkid)
  • 萨沙·沃尔特(@leragequit)
  • 马库斯·凯勒曼(@sharkusk)
  • 菲尔·霍华德(@gadgetoid)
  • @wjgeorge
  • 道格·伯瑞尔(@doug burrell)

更改日志

VersionDescriptionDate
3.3.0
  • Namespace fix
2019/06/19
3.2.1
  • Fix bug where SSD1325 ^{tt1}$ didn’t set column address properly, resulting in garbled output
2019/04/30
3.2.0
  • Add support for 128x64 OLED (Newhaven SSD1322_NHD))
2019/04/17
3.1.1
  • Fix bug where SSD1327 ^{tt1}$ didn’t set column address properly, resulting in garbled output
  • Minor API documentation improvements
2019/03/30
3.1.0
  • Add support for 128x64 monochrome OLED (SSD1309)
2018/12/21
3.0.1
  • Fix bug where SSD1325/1327 didn’t handle ^{tt3}$ properly
2018/12/21
3.0.0
  • BREAKING Fix SSD1351 init sequence didn’t set RGB/BGR color order properly. Users of this device should verify proper color rendering and add ^{tt4}$ if blue/red color components appear to be reversed
  • Device consolidation - greyscale and colour SSD13xx devices now share common base classes.
2018/12/02
2.5.1
  • Fix bug where SSD1331/1351 didn’t render green accurately
2018/09/14
2.5.0
  • Add support form 128x128 Monochrome OLED (SH1106) (by @Gadgetoid)
  • Dependency and documentation updates
  • Minor packaging changes
2018/09/07
2.4.1
  • Fix bug where SSD1327 init sequence exceeds serial command size
2018/05/28
2.4.0
  • Support for 128x128 4-bit OLED (SSD1327)
2018/04/18
2.3.2
  • Support for 96x96 color OLED (SSD1351)
2018/03/03
2.3.1
  • Changed version number to inside ^{tt5}$
2017/11/23
2.3.0
  • Support for 128x128 color OLED (SSD1351)
2017/10/30
2.2.12
  • Explicitly state ‘UTF-8’ encoding in setup when reading files
2017/10/18
2.2.11
  • Update dependencies
  • Additional troubleshooting documentation
2017/09/19
2.2.10
  • Add support for 128x32 mode for SH1106
2017/05/01
2.2.9
  • luma.core 0.9.0 or newer is required now
  • Documentation amends
2017/04/22
2.2.8
  • SSD1331 & SSD1322 framebuffer & API docstrings
2017/04/13
2.2.7
  • Add support for 64x32 SSD1306 OLED
2017/04/12
2.2.6
  • Add support for 64x48 SSD1306 OLED
2017/03/30
2.2.5
  • Restrict exported Python symbols from ^{tt6}$
2017/03/02
2.2.4
  • Tweaked SSD1325 init settings & replaced constants
  • Update dependencies
2017/02/17
2.2.3
  • Monochrome rendering on SSD1322 & SSD1325
2017/02/14
2.2.2
  • SSD1325 performance improvements (perfloop: 25.50 –> 34.31 FPS)
  • SSD1331 performance improvements (perfloop: 34.64 –> 51.89 FPS)
2017/02/02
2.2.1
  • Support for 256x64 4-bit greyscale OLED (SSD1322)
  • Improved API documentation (shows inherited members)
2017/01/29
2.1.0
  • Simplify/optimize SSD1306 display logic
2017/01/22
2.0.1
  • Moved examples to separate git repo
  • Add notes about breaking changes
2017/01/15
2.0.0
  • Package rename to ^{tt7}$ (Note: Breaking changes)
2017/01/11
1.5.0
  • Performance improvements for SH1106 driver (2x frame rate!)
  • Support for 4-bit greyscale OLED (SSD1325)
  • Landscape/portrait orientation with rotate=N parameter
2017/01/09
1.4.0
  • Add savepoint/restore functionality
  • Add terminal functionality
  • Canvas image dithering
  • Additional & improved examples
  • Load config settings from file (for examples)
  • Universal wheel distribution
  • Improved/simplified error reporting
  • Documentation updates
2016/12/23
1.3.1
  • Add ability to adjust brightness of screen
  • Fix for wrong value NORMALDISPLAY for SSD1331 device
2016/12/11
1.3.0
  • Support for 16-bit color OLED (SSD1331)
  • Viewport/scrolling support
  • Remove pygame as an install dependency in setup
  • Ensure SH1106 device collapses color images to monochrome
  • Fix for emulated devices: do not need cleanup
  • Fix to allow gifanim emulator to process 1-bit images
  • Establish a single threadpool for all virtual viewports
  • Fix issue preventing multiple threads from running concurrently
  • Documentation updates
2016/12/11
1.2.0
  • Add support for 128x32, 96x16 OLED screens (SSD1306 chipset only)
  • Fix boundary condition error when supplying max-frames to gifanim
  • Bit pattern calc rework when conveting color -> monochrome
  • Approx 20% performance improvement in ^{tt8}$ method
2016/12/08
1.1.0
  • Add animated-GIF emulator
  • Add color-mode flag to emulator
  • Fix regression in SPI interface
  • Rename emulator transform option ‘scale’ to ‘identity’
2016/12/05
1.0.0
  • Add HQX scaling to capture and pygame emulators
  • SPI support (NOTE: contains breaking changes)
  • Improve benchmarking examples
  • Fix resource leakage & noops on emulated devices
  • Additional tests
2016/12/03
0.3.5
  • Pygame-based device emulator & screen capture device emulator
  • Add bouncing balls demo, clock & Space Invaders examples
  • Auto cleanup on exit
  • Add ^{tt9}$ attribute to devices
  • Demote buffer & pages attributes to “internal use” only
  • Replaced SH1106 data sheet with version that is not “preliminary”
  • Add font attribution
  • Tests for SSD1306 & SSH1106 devices
  • Add code coverage & upload to coveralls.io
  • flake8 code compliance
  • Documentation updates
2016/11/30
0.3.4
  • Performance improvements - render speeds ~2x faster
  • Documentation updates
2016/11/15
0.3.3
  • Add PyPi badge
  • Use smbus2
2016/11/15
0.3.2
  • Fix bug in maze example (integer division on python 3)
  • Use latest pip
  • Add tox & travis config (+ badge)
  • Add RTFD config
  • Documentation updates
2016/11/13
0.3.1
  • Adjust requirements (remove smbus)
  • Default RTFD theme
  • Documentation updates
2016/11/13
0.3.0
  • Allow SMBus implementation to be supplied
  • Add show, hide and clear methods
  • Catch & rethrow ^{tt10}$ exceptions
  • Fix error in ‘hello world’ example
  • Cleanup imports
  • Allow setting width/height
  • Documentation updates
2016/11/13
0.2.0
  • Add Python 3 support
  • Add options to demos
  • Micro-optimizations
  • Remove unused optional arg
  • Fix bug in rendering image data
  • Added more examples
  • Add setup file
  • Support SH1106
  • Documentation updates
2016/09/06

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

推荐PyPI第三方库


热门话题
java如何在Spring Boot 2.2.0中添加弹性搜索?   jakarta ee如何在没有java认证的情况下停止直接访问网页(自定义标记)   java Hibernate:使用executeUpdate()的批删除未清除一级缓存   java如何在Hibernate中插入外键定义为Long的实体?   带参数的java Mockito单元测试计算器方法   java如何从Rally Rest API读取集合属性   java如何对基于消息的处理执行集成测试?   带插入排序的java排序字符串数组标记,双链表   java为什么在基于注释的Spring app@Value默认值中解析为null?   java Apache Commons Http客户端注册特定于客户端的协议   如何使用java反转字符串中n个部分的n个字符   java Tomcat在本地主机上运行良好,但在部署时出现内部服务器错误   使用信号量的变量的java结果   Java编译/运行时类路径问题   java哪个提供商负责AES/CTR/NOP添加?   伪错误解码器中的java响应未获取Zalando问题自定义属性