TM1637 四位七段数码管 Arduino 教程:从入门到做时钟
TM1637 模块
想在 Arduino 上显示数字?TM1637 四位七段数码管模块是绝佳选择。它常用于时钟、计时器等数值显示场景。
普通四位七段管需 12 引脚、布线繁琐,而 TM1637 仅需 4 引脚:两根供电、两根控制(CLK、DIO),极大简化接线。
本文将全面讲解 TM1637 特性、接线、库安装、代码示例,并指导结合 DS3231 RTC 模块制作 24 小时数字时钟。
TM1637 是什么?
LED 数码管显示模块
TM1637 模块集成四个七段共阴/共阳数码管,驱动芯片为 TM1637 IC,可直接显示数字与部分字符。
引脚定义
模块仅四个引脚,功能如下:
TM1637 引脚图
- VCC:3.3–5.5 V 供电
- GND:地
- DIO:双向数据线
- CLK:时钟线
主要参数
- 体积小巧,易集成
- 工作电压 3.3–5.5 V
- 8 级亮度可调
- 四位字母数字显示
- 工作电流约 80 mA
- 工作温度 -10°C 至 +80°C
- 两线串行接口(兼容类 I2C 协议)
工作原理
仅通过 CLK、DIO 两线与单片机通信,采用串行协议发送显示数据。模块需 5 V 稳压供电,过压会永久损坏。将 CLK、DIO 接任意 GPIO,配合库文件即可轻松驱动。
串行通信协议较复杂,推荐使用成熟库(如 Avishay Orpaz 编写的 TM1637Display 库),引入头文件后即可直接调用显示函数,芯片内部自动完成段码扫描与刷新。
与 Arduino UNO 接线
七段数码管内部结构
七段管由 7 个 LED(段 a–g)组成“8”字形,另加小数点。每段单独控制,组合显示 0–9 及 A–F 等字符。
TM1637 模块硬件概览
模块集成低成本串行 LED 驱动,支持亮度调节、开关控制、逐段访问。四位 0.36 英寸数码管中间带冒号,极适合时钟、温度显示项目。
接线示例
仅需四根杜邦线:
- VCC → 5V
- GND → GND
- DIO → D3
- CLK → D2
引脚非固定,可在代码中修改定义。
库安装步骤
- Arduino IDE → 草图 → 包含库 → 管理库
- 等待索引更新
- 搜索 "TM1637",选择 "TM1637Display by Avishay Orpaz"
- 点击安装
基础测试代码
上传以下示例代码可跑通显示流程:
测试代码片段 1
测试代码片段 2
测试代码片段 3
测试代码片段 4
进阶项目:TM1637 + DS3231 制作 24 小时时钟
结合 DS3231 RTC 模块可实现走时精准的数字时钟。接线后上传代码(基于 Adafruit RTClib),即可 24 小时制显示时分秒。
时钟项目代码 1
时钟项目代码 2
总结
TM1637 以四线极简接线、丰富库支持、宽温耐用等优势,成为 LED 数码显示首选模块。适用于时钟、温度、计数器等多种场景。如有疑问,欢迎联系我们。
工业技术