【K210+micropython】驱动HS420561k

您所在的位置:网站首页 四位数码管共阳引脚图 【K210+micropython】驱动HS420561k

【K210+micropython】驱动HS420561k

2024-07-07 15:51| 来源: 网络整理| 查看: 265

【K210+micropython】使用HS420561k-32四位数码管显示数字

文章目录 【K210+micropython】使用HS420561k-32四位数码管显示数字相关知识准备一、四位数码管二、代码1.驱动库 遇到的问题和总结

相关知识准备 一、四位数码管

   四位数码管可分为:共阳和共阴两种。共阳极数码管是指数码管八段发光二极管的阳极(正极)都连在一起,而阴极对应的各段可分别控制;共阴极数码管是指数码管的八段发光二极管的阴极(负极)都连在一起,而阳极对应的各段分别控制。共阴级输入高电平有效,共阳级输入低电平有效。    四位数码管引脚定义如下图:

             在这里插入图片描述

二、代码 1.驱动库

hs420561k32.py

import utime from Maix import GPIO from fpioa_manager import fm number={ '0': [0,0,0,0,0,0,1,1],#0 '1': [1,1,1,1,0,0,1,1],#1 '2': [0,0,1,0,0,1,0,1],#2 '3': [0,0,0,0,1,1,0,1],#3 '4': [1,0,0,1,1,0,0,1],#4 '5': [0,1,0,0,1,0,0,1],#5 '6': [0,1,0,0,0,0,0,1],#6 '7': [0,0,0,1,1,1,1,1],#7 '8': [0,0,0,0,0,0,0,1],#8 '9': [0,0,0,0,1,0,0,1],#9 } class HS420561K32: def __init__(self,pins): # 注册引脚 fm.register(pins[0],fm.fpioa.GPIOHS0) # a fm.register(pins[1],fm.fpioa.GPIOHS1) # b fm.register(pins[2],fm.fpioa.GPIOHS2) # c fm.register(pins[3],fm.fpioa.GPIOHS3) # d fm.register(pins[4],fm.fpioa.GPIOHS4) # e fm.register(pins[5],fm.fpioa.GPIOHS5) # f fm.register(pins[6],fm.fpioa.GPIOHS6) # g fm.register(pins[7],fm.fpioa.GPIOHS7) # dp fm.register(pins[8],fm.fpioa.GPIOHS8) # 1 fm.register(pins[9],fm.fpioa.GPIOHS9) # 2 fm.register(pins[10],fm.fpioa.GPIOHS10) # 3 fm.register(pins[11],fm.fpioa.GPIOHS11) # 4 d1 = GPIO(GPIO.GPIOHS0,GPIO.OUT) d2 = GPIO(GPIO.GPIOHS1,GPIO.OUT) d3 = GPIO(GPIO.GPIOHS2,GPIO.OUT) d4 = GPIO(GPIO.GPIOHS3,GPIO.OUT) d5 = GPIO(GPIO.GPIOHS4,GPIO.OUT) d6 = GPIO(GPIO.GPIOHS5,GPIO.OUT) d7 = GPIO(GPIO.GPIOHS6,GPIO.OUT) d8 = GPIO(GPIO.GPIOHS7,GPIO.OUT) d9 = GPIO(GPIO.GPIOHS8,GPIO.OUT) d10= GPIO(GPIO.GPIOHS9,GPIO.OUT) d11 = GPIO(GPIO.GPIOHS10,GPIO.OUT) d12 = GPIO(GPIO.GPIOHS11,GPIO.OUT) #数码管a~g dp对应的开发板引脚 self.d_Pins=[d1,d2,d3,d4,d5,d6,d7,d8] #数码管位段1 2 3 4对应的引脚 self.w_Pins=[d9,d10,d11,d12] def display(self, num,dp): global number count=0 for pin in self.d_Pins:#显示num的值 pin.value(number[num][count]) count+=1 if dp==1: self.d_Pins[7].value(0) def clear(self): for i in self.w_Pins: i.value(0) for i in self.d_Pins: i.value(1) def showData(self, num): #分割出数值的百位、千位、个位和小数位的值 d_num=num location=d_num.find('.') if location>0: d_num=d_num.replace('.','') while len(d_num)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3