今天的任务是使用Python通过micro:bit主控板来控制数码管模块实现字符显示。
硬件准备:
TM1637数码管模块、micro:bit主控板、micro:bit扩展板。
硬件连接
![e314ceda7d84681b0e4e14e6d50bfbb3.png](https://i-blog.csdnimg.cn/blog_migrate/51c97a4e6b85d2d3936b2568f270d06a.jpeg)
电路连接图
数码管的VCC和GND连接到扩展板的VCC和GND,数码管的DIO引脚连接至扩展板的Pin14口,数码管的CLK引脚连接至扩展板的Pin13口。
工作原理
我们首先在MU环境中需要导入TM1637的库文件,该库文件是TM1637的底层驱动文件,里面有TM1637类以及附属很多实用的方法函数,比如shownum(self, num)显示数字函数,showbit(self, num, bit = 0)显示位数的函数等等。
TM1637是一种带键盘扫描接口的LED (发光二极管显示器)驱动控制专用电路,内部集成有MCU数字接口、数据锁存器、LED高压驱动、键盘扫描等电路。本产品性能优良,质量可靠。主要应用于电磁炉、微波炉及小家电产品的显示屏驱动。
![2b78eee7309122bb55667ce198d2f080.png](https://i-blog.csdnimg.cn/blog_migrate/1acabbcfbc4822263cbe6af1f8eb2d91.jpeg)
TM1637数码管模块
程序原理
由于程序以及先将TM1637库文件导入,因此我们可以直接对其进行调用。比如我们想实现一个计数器的程序
from microbit import *
import TM1637
tm = TM1637.TM1637(dio=pin14, clk=pin13)#初始化TM1637模块
n = 0
while True:
tm.shownum(n)#显示数字
n += 1#数字累加
sleep(1000)
运行结果
数码管每秒钟进行数据更新
![9485a2b7de0601c47538ad8562189e2f.png](https://i-blog.csdnimg.cn/blog_migrate/b3c740338a13b8b888371d6b0325409c.jpeg)
![2d9363ded3b31cb5e4b0f2b9978cefe6.png](https://i-blog.csdnimg.cn/blog_migrate/6656d82f61b0f90889c4d74a766dc2f8.jpeg)