self.display.pixel(16, 4, self.se)
self.display.text(str(self.m) if len(str(self.m))==2 else '0' + str(self.m) , 17, 1)
self.se = 0 if self.se == 1 else 1
self.display.text('abAB456789', 0, 0)
"""
for i in range(10):
self.display.fill(0)
for x, y in self.number_font[i]:
self.display.pixel(x, y, 1)
self.display.show()
time.sleep(0.2)
1. 创建对象
clock = Clock()
2. 调用显示
clock.show_time()
“”"
while True:
clock.show_time()
time.sleep(1)
break
“”"
显示效果:
**四、时间代码**
import time
import max7219
from machine import Pin, SoftSPI, RTC
class Clock:
“”"
定义可以用来控制32x16的点阵屏类
“”"
def init(self):
self.dp()
self.se = 0
self.rtc = RTC()
self.number_font = {
0: [
(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (33, 0), (33, 1), (33, 2), (33, 3), (33, 4), (33, 5), (33, 6), (6, 1), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7),
(38, 0), (38, 1), (38, 2), (38, 3), (38, 4), (38, 5), (38, 6), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (34, 6), (35, 6), (36, 6), (37, 6), (38, 6),
],
1: [
(4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (4, 6), (4, 7), (36, 0), (36, 1), (36, 2), (36, 3), (36, 4), (36, 5), (36, 6),
],
2: [
(1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7), (1, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7),
(33, 0), (33, 1), (33, 2), (33, 3), (33, 4), (33, 5), (33, 6), (34, 6), (35, 6), (36, 6), (37, 6), (38, 6),
],
3: [
(1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7), (1, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7),
(38, 0), (38, 1), (38, 2), (38, 3), (38, 4), (38, 5), (38, 6), (33, 6), (34, 6), (35, 6), (36, 6), (37, 6), (38, 6),
],
4: [
(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (6, 1), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7), (1, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7),
(38, 0), (38, 1), (38, 2), (38, 3), (38, 4), (38, 5), (38, 6)
],
5: [
(1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7),
(38, 0), (38, 1), (38, 2), (38, 3), (38, 4), (38, 5), (38, 6), (33, 6), (34, 6), (35, 6), (36, 6), (37, 6), (38, 6),
],
6: [
(1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7),
(33, 0), (33, 1), (33, 2), (33, 3), (33, 4), (33, 5), (33, 6), (38, 0), (38, 1), (38, 2), (38, 3), (38, 4), (38, 5), (38, 6), (33, 6), (34, 6), (35, 6), (36, 6), (37, 6), (38, 6),
],
7: [
(1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7),
(38, 0), (38, 1), (38, 2), (38, 3), (38, 4), (38, 5), (38, 6)
],
8: [
(1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7),
(33, 0), (33, 1), (33, 2), (33, 3), (33, 4), (33, 5), (33, 6), (38, 0), (38, 1), (38, 2), (38, 3), (38, 4), (38, 5), (38, 6), (33, 6), (34, 6), (35, 6), (36, 6), (37, 6), (38, 6),
],
9: [
(1, 1), (2, 1), (3, 1), (4, 1), (5, 1), (6, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7), (2, 7), (3, 7), (4, 7), (5, 7), (6, 7),
(38, 0), (38, 1), (38, 2), (38, 3), (38, 4), (38, 5), (38, 6), (33, 6), (34, 6), (35, 6), (36, 6), (37, 6), (38, 6),
],
}
def dp(self):
spi = SoftSPI(baudrate=100000, polarity=1, phase=0, mosi=Pin(13), sck=Pin(14), miso=Pin(23))
self.display = max7219.Matrix8x8(spi, Pin(12), 8)
def show_time(self):
"""
date = self.rtc.datetime()
self.m = date[5]
self.h = date[4]
self.display.fill(0)
self.display.text(str(self.h) if len(str(self.h))==2 else '0' + str(self.h) , 0, 1)
self.display.pixel(16, 2, self.se)
self.display.pixel(16, 4, self.se)
self.display.text(str(self.m) if len(str(self.m))==2 else '0' + str(self.m) , 17, 1)
self.se = 0 if self.se == 1 else 1
self.display.text('abAB456789', 0, 0)
for i in range(10):
self.display.fill(0)