Arduino+2片74hc595 驱动8x8(共阳)点阵(1008BS)

如题所述

第1个回答  2022-07-20

74HC595芯片是一个串行输入,并行输出设备。其内部包括一个8位移位寄存器、一个存储器以及三态输出门电路,其中移位寄存器和存储器都有相互独立的时钟。

74HC595 说明文档

74HC595 原理说明文档

[图片上传失败...(image-142778-1561090164624)]
[图片上传失败...(image-de6f67-1561090164624)]

8X8点阵共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上
点阵一共有两种类型 共阴(AS) 和 共阳(BS) ,这里我推

8x8点阵参考文档

[图片上传失败...(image-821b84-1561090164624)]

既然8x8点阵是有64个led二极管组成,那是不是就意味我们可以根据用8组正负极电源就可以控制LED的显示,这样看来就比较简单,示例如下

[图片上传失败...(image-bab39-1561090164624)]

[图片上传失败...(image-e17732-1561090164624)]

这样看来一切都显得合情合理,那这样理解8x8点阵就很简单了呀,很容易就可以自己自定义图案了呀,但是我当我们需要显示三个点的时候问题就来了

[图片上传失败...(image-456903-1561090164624)]

你会发现,当我们需要显示三个点的时候,会显示四个点!所以说我们上述的原理是错误的,因为我们有64个led,所以就需要64组才能单独控制!但是会不会有什么其他的方法呢?其实是有的,接着往下看!

由于我们人眼能看的刷新频率是很低的,所以只要相应足够快,而且保持连贯我们看到的就是一个完整的画面,就像电影一样,都是一帧一帧的,点整其实也是这样子的,是一种逐行扫描的显示方式
[图片上传失败...(image-7e5051-1561090164624)]

就是在短时间内,先显示第0行,再显示第2行,一次类推,然后保持循环,这样就能正常显示我们需要的内容

参考文档1-这个比较详细

参考文档1-这个比较侧重介绍74hc595

这个是官方的文档写得挺好的,不过是英文的

不想焊接或者使用面包板的同学可以淘宝直接购买套件,动手能力比较强的同学可以自己动手尝试一下,但是这个74HC595容易烧坏,建议多买几块,以防止意外

[图片上传失败...(image-78d750-1561090164624)]

[图片上传失败...(image-438549-1561090164624)]

写到最后,我个人是不推荐用74hc595 来驱动8x8点阵的,由于点阵是扫描显示,所以在一定程度上来说它只能让我们只显示一个图案,如果说你需要显示动图,或者滚动显示,这个实现起来就会比较麻烦,但是学习使用还是很好的,适合我们这样的初学者入门学习,而且淘宝上有74hc595的线程的模块买,不想焊接的同学可以买现成的套装,最后如果你真的像驱动显示8x8的点阵,我推荐使用max7219芯片,后期我也会出一个关于max7219驱动8x8点阵的帖子的,目前还在学习中...

文章我使用了很多来自其他平台的文章,在这里我表示感谢,也表示歉意,没有一个一个署名的著名他们的文章和姓名,也没有事先取得用户的意见就将文章链接写到我这个帖子里面,实属不对,在这里你发现有你的文章链接,欢迎跟我联系,我会一一署名鸣谢

欢迎添加QQ1286396784(单纯学习交友,无其他不良目的)共同学习进步

相似回答