经过了几个小时的接线和代码实现终于搞定了代码,贴出来大家参考下
import machine
import time# 定义4个Led的引脚
led1 = machine.Pin(5,machine.Pin.OUT)
led2 = machine.Pin(18,machine.Pin.OUT)
led3 = machine.Pin(19,machine.Pin.OUT)
led4 = machine.Pin(21,machine.Pin.OUT)# 型号是5643AS就是共阴 5643BS就是共阳
led_light_list = [led1,led2,led3,led4]# 先定义组成数字的8个引脚
a = machine.Pin(13,machine.Pin.OUT)
b = machine.Pin(12,machine.Pin.OUT)
c = machine.Pin(14,machine.Pin.OUT)
d = machine.Pin(27,machine.Pin.OUT)
e = machine.Pin(26,machine.Pin.OUT)
f = machine.Pin(25,machine.Pin.OUT)
g = machine.Pin(33,machine.Pin.OUT)
h = machine.Pin(32,machine.Pin.OUT)# 定义一个数组
led_list = [a,b,c,d,e,f,g,h]# led灯的组成顺序是abcdefg
number_dict = {0:"11111100",1:"01100000",2:"11011010",3:"11110010",4:"01100110",5:"10110110",6:"10111110",7:"11100000",8:"11111110",9:"11110110"}def show_number(number):if number_dict.get(number):# print(f"对应的数字为:{number_dict.get(number)}")i = 0for num in number_dict.get(number):# print(num)if num == "1":led_list[i].value(1)else:led_list[i].value(0)i += 1def light_on(i):for led in led_light_list:led.value(1)led_light_list[i].value(0)def show_4_number(number):if 0 <= number <= 9999:i = 0for num in "%04d" % number:print(num)show_number(int(num))light_on(i)i += 1time.sleep_ms(2)for i in range(1000,10000):for j in range(100):show_4_number(i)
上效果图