#led-display #led #hal #led-controller #tm1637 #low-level #tm1638

无std tmledkey-hal-drv

基于HAL的Titan Micro 7段LED控制器和键盘扫描器驱动程序

3个不稳定版本

0.1.1 2020年1月15日
0.1.0 2019年12月31日
0.0.2 2019年10月24日
0.0.1 2019年10月24日

#953 in 嵌入式开发

自定义许可证

49KB
1K SLoC

Titan Micro LED控制器驱动程序

crates.io Released API docs

Titan Micro是一家中国制造商,生产多种类型的控制器,用于带有附加键盘按键扫描功能的7段LED显示器。

市场上至少存在以下控制器型号:

  • TM1636 - 2线接口,4个显示器,16个按键
  • TM1637(流行)- 2线接口,6个显示器,16个按键
  • TM1638(流行)- 3线接口,8个显示器(10段),24个按键
  • TM1639 - 3线接口,8个显示器(12段?),8个按键
  • TM1640 - 2线接口,16个显示器,无按键

此驱动程序实现了通过2或3线接口发送/读取数据的低级功能。稍后将为流行的控制器型号实现用户友好的API。

项目状态和未来计划

可用功能

  • 支持2和3线接口,已在TM1637和TM1698上测试
  • 向MCU写入字节
  • 从MCU读取按键扫描字节
  • 提供基本实用工具和动画功能

硬件crate已在以下设备上测试

  • TM1637时钟模块
  • 带8个显示器、8个按钮和8个额外LED的TM1638模块
  • STM32 Blue Pill
  • Raspberry Pi

当前功能看起来很稳定,但实现非常低级。这主要是因为我认为在HAL及其实现稳定之前没有必要进行更友好的API。目前我的目标是保持它在HAL更新之间稳定和可用。

我真的希望API的复杂性不是一个大问题。当前的HAL状态和嵌入式编程仅适合硬核、疯狂、受虐的程序员,他们应该能够接受我的代码。

示例

这是示例代码的工作方式。

点击图片查看动画。

TM1637 example

TM1638 example

许可证

本产品受几乎MIT许可证但带有plumbus例外条款的许可。

依赖关系

~71KB