从arduino到树莓派学习笔记之数码管tm1637(6)

2020-02-184579
AI 快速预览详细 收起
本文介绍了从Arduino到树莓派学习tm1637四位数码管的Python编程方法。首先通过pip3 install raspberrypi-python-tm1637安装tm1637 Python库,解决了Import Error: no module named 'tm1637'的问题。接着,通过pip3 install wiringpi安装wiringpi库,解决了Import Error: no module named 'wiringpi'的问题。最后,通过硬件连接和示例代码,实现了时钟显示功能。
Arduino到树莓派之数码管tm16376
                               -----2020.2.18
一、     arduino图形化编程之一位数码管
二、     arduino图形化编程之四位数码管
三、     arduino图形化编程之tm1637四位数码管
四、     arduino C语言编程之tm1637四位数码管
五、     树莓派图形化编程之tm1650四位数码管
六、     树莓派python语言编程之tm1637四位数码管
1、登录python库官网https://pypi.org
从arduino到树莓派学习笔记之数码管tm1637(6)图1

2、       然后search projects中搜索tm1637,会显示各种python 库。
从arduino到树莓派学习笔记之数码管tm1637(6)图2


3、       选择对应合适的库raspberrypi-python-tm1637 1.3.0,

,打开,在这里会告诉我们如何安装tm1637 python库,因为是python3,所以稍微改正一下,在树莓派终端输入pip3 installraspberrypi-python-tm1637 。

从arduino到树莓派学习笔记之数码管tm1637(6)图3

4、     显示以下信息表明安装成功。
pi@raspberrypi:~ $ pip3 install raspberrypi-python-tm1637
Collecting raspberrypi-python-tm1637
Installingcollected packages: raspberrypi-python-tm1637
Successfullyinstalled raspberrypi-python-tm1637-1.3.0

5、  如果我们想知道安装的是什么东东,可以点击homepage栏目,会显示,里面包括库tm1637,案例clock.py等,点击Clone or download可以下载这些文件。

从arduino到树莓派学习笔记之数码管tm1637(6)图4


6、      这样,我们就解决了tm1637 python库的安装,否则会出现以下错误代码:Import Error:no module named ‘tm1637’

从arduino到树莓派学习笔记之数码管tm1637(6)图5

7、  接着,在树莓派的python工具中打开tm1637.py,并run,会出现错误信息:Import Error:no module named ‘wiringpi’
提醒我们没有安装wiringpi库,wiringPi是一个很棒的树莓派IO控制库,使用C 或python语言开发,提供了丰富的接口:GPIO控制,中断,多线程,等等。

从arduino到树莓派学习笔记之数码管tm1637(6)图6

8、下面我们就用同样的方法安装wiringpi2.60.0库,pip3 install wiringpi。

从arduino到树莓派学习笔记之数码管tm1637(6)图7
9、    硬件连接CLK接端口3 ,DIO接data端口2,VCC-vcc,GRAND-grand

从arduino到树莓派学习笔记之数码管tm1637(6)图8

时钟案例代码clock.py ,上图是程序运行后的效果图
#!/usr/bin/envpython3
from tm1637 importTM1637   #导入库
from time importtime, sleep, localtime
DIO=2  #设置数据端口为2,时钟端口为3
CLK=3
defshow_clock(tm):   #定义函数
t = localtime() #获取本机时间,包括年月日时分秒星期格式如下
#time.struct_time(tm_year=2020, tm_mon=2,
#tm_mday=18, tm_hour=15, tm_min=45, tm_sec=49,tm_wday=1,
# tm_yday=49, tm_isdst=0)
    sleep(1 - time() % 1)  #time() 功能返回当前时间戳以毫秒为单位,Python3 中采用%表示取模运算,结果返回除法的余数。
    tm.numbers(t.tm_hour, t.tm_min, True) #显示时间小时和分钟,中间两点也亮
    sleep(0.5) #通过延时,实现实现中间两点闪烁
    tm.numbers(t.tm_hour, t.tm_min, False) #显示时间小时和分钟,中间两点不亮
print("\n")
print("============================")
print("Starting clock application")
print("============================")

tm = TM1637(CLK,DIO)  #实例化对象tm
tm.brightness(1) #设置亮度1-7

while True:
    show_clock(tm)  #调用函数,参数为tm


创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(2)
DFrJ5KYVQaH
DFrJ5KYVQaH
高大上,学习中
岩羊
岩羊
作者
def show_clock(tm): #定义函数
这里有一个空格漏了
- 没有更多了 -