首页 > 编程知识 正文

点阵数码管,8*8led点阵电路原理图

时间:2023-05-03 13:40:47 阅读:111189 作者:1195

为了更新而更新,为了维持更新状态而更新。

向学生讲解用gpiozero库控制八段管和8x8共阳极LED光栅。 已经对各个LED的控制、RGB彩色灯珠的控制进行了说明。 对8段管进行说明很容易理解。 关于多个8级管进行说明有点麻烦。 而且,为了便于理解,LED点编制了演示程序,用于演示线扫描模式的变化过程,以及设定阳极高低管脚模式的变化。 8短数码管很简单,LED点有点复杂。

模拟阴极八级数码管

image.png

from turtle import *

速度(0) )。

sega=Turtle ()

sega.pu () )。

sega.goto (0,300 ) )。

w=150

h=20

defrect(t,flag=True,fill=False ) :

forIinrange(2) :

if fill:

t.begin_fill ()

if flag:

t.FD(w ) )。

叔叔(90 )。

t.FD(h ) )。

叔叔(90 )。

else:

t.FD(h ) )。

叔叔(90 )。

t.FD(w ) )。

叔叔(90 )。

if fill:

t.end_fill ()

sega.pd ()。

是rect(sega )

segg=Turtle ()

segg.pu () )。

segg.goto (0,120 ) )。

segg.pd () )。

是重置(segg )

segd=Turtle ()

segd.pu (

SEGD.goto(0,-65 ) )。

segd.pd ()

是RECT(segd )

segb=Turtle ()

segb.pu (

segb.goto (130,275 ) )。

segb.pd ()

rect(segb,False ) )。

segc=Turtle ()

segc.pu ()。

segc.goto (130,90 ) )。

segc.pd ()。

rect(segc,False ) ) )。

sege=Turtle ()

sege.pu () )。

sege.goto (0,90 ) )。

sege.pd () )。

rect(sege,False ) ) ) )。

segf=Turtle ()

segf.pu (

segf.goto (0,275 ) )。

segf.pd ()

rect(segf,False ) ) ) ) ) ) )。

segh=Turtle ()

segh.pu ()。

segh.goto (180,30 ) )。

segh.pd ()。

rect(segh,False ) ) )。

zero=[ 1,1,1,1,1,1,1,0,0 ]

one=[ 0,1,1,0,0,0,0,0 ]

two=[ 1,1,0,1,1,0,1,0 ]

three=[ 1,1,1,1,0,0,1,0 ]

our=[ 0,1,1,0,0,1,1,0 ]

five=[ 1,0,1,1,0,1,1,0 ]

segs=[sega,segb,segc,segd,sege,segf,segg,segh]

dirt=[True,False,False,True,False,False,True,False]

segs :

seg.speed(0) )。

forIinrange(8) :

if five[i]==1:

rect(segs[I],flag=dirt[i],fill=True ) )

else:

rect(segs[I],flag=dirt[i],fill=False ) )

image.png

模拟阳极8x8led点

image.png

from turtle import *

跟踪(40,2 ) )。

类led () :

def __init__(self,x,y,r=15 ) :

self.r=r

self.neg=0

self.pos=0

self.t=Turtle ()

self.t.pu (

self.t.goto(x,y ) )。

self.t.speed(0) )。

self.t.ht (

self.Setneg(self.neg ) )。

self.display (

defsetneg(self,value ) :

self.neg=value

self.display (

efdisplay(self ) :

if self.neg==1:

self.t.color () 0.4、0.4、0.4 )、)、0、0 ) )

else:

self.t.color ()、0.4、0.4、0.4 )、' white ' ) )。

self.t.begin_fill ()

self.t.pd ()

self.t.circle(self.r ) )。

self.t.pu (

self.t.end_fill ()

offx=-200

offy=200

leds=[]

gap=50

color () )、0.4、0.4 ) )

pu () )

GOTO(offx-gap/2,offy 3*gap/4 ) ) ) ) ) ) ) ) ) ) goto ) ) ) ) ) ) ) )。

pd () )

begin_fill ()

forIinrange(4) :

软盘(8* gap )

是rt(90 )

end_fill ()

#forrowinrange(8) :

## led_row=[]

#forcolinrange(8) :

#led=led(offxgap*col,offy - gap * row ) ) ) ) ) ) ) ) ) ) ) led=led ) ) ) ) ) ) 65 )

## # led.display (

#led_row.append(led(offx20*col,offy - 20 * row ) )

#leds.append(led_row ) )。

forjinrange(8) :

forIinrange(8) :

led=led(offxgap*I,offy - gap * j ) ) )。

leds.append(row )

from time import sleep

[ 0,0,0,0,0,0,0,0 ],

[ 0,1,1,0,0,1,1,0 ],

[ 1,1,1,1,1,1,1 ],

[ 1,1,1,1,1,1,1 ],

[ 0,1,1,1,1,1,1,0 ],

[ 0,0,1,1,1,1,0,0 ],

[ 0,0,0,1,1,0,0,0 ],

[ 0,0,0,0,0,0,0,0 ],

[ 0,0,0,0,0,0,0,0 ],

[ 0,0,0,0,0,0,0,0 ],

[ 0,1,1,0,0,1,1,0 ],

[ 1,1,1,1,1,1,1 ],

[ 1,1,1,1,1,1,1 ],

[ 0,1,1,1,1,1,1,0 ],

[ 0,0,1,1,1,1,0,0 ],

[ 0,0,0,1,1,0,0,0 ],

while True:

forrowinrange(8) :

forcolinrange(8) :

LEDs [ row ] [ col ].setneg [ heart [ row ] [ col ] ]

leds[row][col].display (

forrowinrange(8) :

forcolinrange(8) :

LEDs [ row ] [ col ].setneg [ heart _ sm [ row ] [ col ] ]

leds[row][col].display (

image.png

image.png

image.png

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。