import machine
import time
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)
dot = machine.Pin(32, machine.Pin.OUT)
#将对应的引脚对象存放到链表中
number_led = [a, b, c, d, e, f, g]
number_dict = {
0: "1111110",
1: "0110000",
2: "1101101",
3: "1111001",
4: "0110011",
5: "1011011",
6: "1011111",
7: "1110000",
8: "1111111",
9: "1111011",
"open": "1111111",
"close": "0000000"
}
#数码管显示函数 number为数字 switch为小数点
def show_number(number,switch):
if number_dict.get(number): #判断number是否为字典中的key
i=0
for num in number_dict.get(number): #取出value 遍历字符串
if num=='1':
number_led[i].value(1)
else:
number_led[i].value(0)
i+=1
if switch:
dot.value(1)
else:
dot.value(0)
def main():
#数码管循环显示1~9
while True:
for i in range(0,10):
show_number(i,True)
time.sleep(1)
for i in range(9,-1,-1):
show_number(i,True)
time.sleep(1)
if __name__ == "__main__":
main()
Loading
esp32-devkit-c-v4
esp32-devkit-c-v4
sevseg1:COM.1
sevseg1:COM.2
sevseg1:A
sevseg1:B
sevseg1:C
sevseg1:D
sevseg1:E
sevseg1:F
sevseg1:G
sevseg1:DP
r1:1
r1:2
r2:1
r2:2
r3:1
r3:2
r4:1
r4:2
r5:1
r5:2
r6:1
r6:2
r7:1
r7:2
r8:1
r8:2