![aeb48a33f2e374cf01575c80fe5c4a14.png](https://i-blog.csdnimg.cn/blog_migrate/22d46437ea5f8e1ce3fe74aa4e906bee.png)
TM1637模块:四位红色LED数码管显示器,8级灰度可调,且带有时钟点“:”,电源接口可接:5v或3.3v,可以通过编写程序实现数字时钟显示、倒计时、按钮交互记分牌等功能。
![c1b872546ac1eef3e0726fab84385315.png](https://i-blog.csdnimg.cn/blog_migrate/f9c8a8cba9503b4a0aa9a9de75091a34.jpeg)
- 程序01
◇效果:指定起始时间,时钟点跳动,显示24小时制的时钟
◇难度:★★★
![61dc35254ee4a61b6884d39338f1a651.png](https://i-blog.csdnimg.cn/blog_migrate/a64a4cd8adf4643dbe8058deae6e6475.png)
- 程序解答
#include
- 程序解读
☆要实现时钟显示,必须对时钟运作的“进位制”有深刻的理解。秒钟(second,简写为s)和分钟(minute,简写为m)都是六十进制,每逢60进1(0~59);小时(hour,简写为h)是24小时制,即范围为(0~23)。
☆时钟点的跳动,需要在偶数秒钟时点亮,奇数秒钟时熄灭。
☆要在四位数码管上显示出时间,需要对小时(h)和分钟(m)的两位数字进行“分离”处理——通过除以10的商,获取十位数字;除以10取余数,获取个位数字。
- 程序02
◇效果:实现(分秒)倒计时
◇难度:★★★
![ec6debbd47c3864e366b31c2741ba9cb.png](https://i-blog.csdnimg.cn/blog_migrate/844a5dd00e26f56054df5a3e0c363199.png)
- 程序解答
#include
- 程序解读
☆倒计时与时钟不同之处在于,它是倒序递减的。所以秒钟不递增,反而递减。当秒(s)到达-1时,秒(s)需要重新赋值为59,触发分钟递减;当分(m)到达-1时,分(m)和秒(s)需要同时赋值为0,方可结束倒计时。
- 程序03
◇效果:按钮交互计分牌,按钮按动,比分增加1
◇难度:★★★
![2a93b7bf522b990b2bc491c2745a3317.png](https://i-blog.csdnimg.cn/blog_migrate/3248613be10da192f3f3eacfd8a0cb6e.png)
- 程序解答
#include
- 程序解读
☆按钮1(A0)和按钮2(A1)触发冒号“:”两边的数字递增,两边的数字都是0~99循环的,通过取模(取余数)“%”运算实现。
![b71ff8d099586e5989bc9467f9d8e237.png](https://i-blog.csdnimg.cn/blog_migrate/d36ce275693fa67946ac0b1d1856a946.png)
- 欢迎订阅公众号:bit小星球
![78d9a698ba38d3065279fbc9cb526fe1.png](https://i-blog.csdnimg.cn/blog_migrate/46b07fe94ff780b119e3d2135f064c56.png)
bit小星球,天马行空的青少年编程知识分享。
Arduino单片机快速上手,获取更多干货,最新分享早知道!