搜索
查看: 11125|回复: 5

[分享] HUB75 LED显示驱动器

[复制链接]

该用户从未签到

185

主题

623

帖子

0

蝴蝶豆

社区小助手

最后登录
2020-7-20
发表于 2019-3-18 16:28:31 | 显示全部楼层 |阅读模式
本帖最后由 点点&木木 于 2019-4-12 12:26 编辑

介绍
这是定制的5x5cm ArduinoUNO板,可以简单连接到HUB75接口LED显示屏。如果您不熟悉此类显示器,可以从Adafruit 16X32 RGB LED MATRIXPANEL 或 Aliexpress购买
HUB75接口LED显示屏通常配有用于数据和电源线的扁平电缆。因此,焊接完PCB后,您需要做的就是将电源线连接到螺钉端子。并将扁平电缆插入PCB和LED显示屏。
Pinout与Adafruit“RGB矩阵面板”库兼容,但我想了解HUB75接口的工作原理。
五个自由引脚可用于连接传感器或其他设备。
附加了SeeedstudioFusion PCB服务的Gerber文件。生产10个PCB将花费10美元。

1.jpg



硬件组件
ATmega328与ArduinoOptiboot(Uno)   ×    1      
电阻10k欧姆     ×     1      
电容器22 pF       ×     2      
电容器100 nF     ×     5      
16 MHz晶振       ×     1      
电容470μF        ×     2      
直流电源插座/连接器      ×   1      
两个销钉螺钉接线端子3.5mm间距      ×   1      
SparkFun按钮开关12mm    ×  1      
DIP插座,28触点     ×   1      
通用跳线(0.1)      ×       2      
公头40位1排(0.1)   ×  1      
电阻330欧姆              ×  5      
RUEF250U FUSE      ×       1      
带状电缆连接器2x8    ×  1      


手动工具和制造机器
烙铁(通用)         





概要
2.jpg
概要



零件清单
你需要流动的部分:
·  ATmega328与ArduinoOptiboot(Uno)
·  电阻10k
·  电容器2pF x2
·  电容器100nF x5
·  水晶16MHz
·  电容器470uF x2
·  直流电源插座/连接器
·  两个销螺钉端子块3.5mm节距像
·  DIP插座,28触点可选
·  两个跳线
·  电阻330欧姆x5(可选)
·  RUEF250UFUSE(可选)
·  带状电缆连接器的2x8像  你也可以焊头两行。它也可以正常工作。

RUEF250U是3A保险丝。这是可选的。如果你不需要它,你可以简单地用电线短接它。电阻300欧姆也是可选的。如图所示,您可以在电阻器前焊接接头。


电路板

3.1.jpg


3.2.jpg



如您所见,它上面没有USB接口,因此您需要一些USB转串口线来上传草图。我正在使用  SparkFun FTDI Basic Breakout - 5V

4.jpg
FTDI连接器


对于具有3位行地址(A,B,C)(通常为16x32)的面板或具有4位地址(A,B,C,D)的面板(通常为32x32面板或更大),可以使用跳线板。
对于具有3位行地址的面板,您需要缩短NOD1,NOD2跳线。
对于具有4位行地址的面板,您需要从NOD1,NOD2中移除跳线并将它们放在USED1,USED2标头上。
它没有电压调节器。请使用良好的5V电源。对于16x32面板,您将需要大约2A电源。对于32x32面板,您需要大约3A电源。
仅将5V电源连接到Barrel电源连接器。 左下角的连接器用于连接外部设备,如RTC,传感器等。此连接器板上的迹线太窄,无法为LED矩阵供电2A!
HUB75接口

5.1.jpg



5.2.jpg



5.3.jpg



HUB75接口用于大量LED显示屏。如果你想了解它,下面是几个链接。面板之间的细微差别,但对于Adafruit和其他许多人使用的面板,基本上你需要的是流动操作显示器:
·  整行数据的时钟(使用R1,G1,B1,R2,G2,B2表示数据,CLK表示时钟)
·  OE很高
·  选择行地址(A,B,C,D)
·  拉特高
·  拉特低
·  OE低
重复每一行



正如我之前写的,这个主板可以与Adafruit“RGB矩阵面板”库一起使用。但写我自己很有意思。所以我做了。您可以从GitHub HUB75driver下载最新版本,  也可以下载附带的HUB75driver.zip zip文件。
该库也可以与普通的Arduino Uno一起使用。
HUB75driver库参数
刷新率125FPS
12位clolors,每种颜色4位(RGB)
3500字节的程序存储器
RAM:如果没有双缓冲则为40字节+ 768字节,如果使用双缓冲则为1536字节
使用draw_point()函数填充所有矩阵需要7ms(512次)


用法示例
以下几个例子说明了你可以用这块板和16x32面板做些什么
时钟示例是clock.zip,它使用通过I2C DS1307分线板作为RTC连接
6.jpg
时钟

滚动文本示例是scrolltext.zip
温度显示  使用Adafruit库和DS18B20传感器。
7.jpg
温度显示


参考
内联汇编程序
http://www.nongnu.org/avr-libc/user-manual/inline_asm.html
http://www.codeproject.com/Articles/15971/Using-Inline-Assembly-in-CC
http://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html
http://asm.sourceforge.net/articles/rmiyagi-inline-asm.txt
http://www.atmel.com/webdoc/AVRLibcReferenceManual/inline_asm_1io_ops.html
HUB75接口
http://learn.adafruit.com/32x16-32x32-rgb-led-matrix/how-the-matrix-works
http://github.com/hzeller/rpi-rgb-led-matrix
http://esdblog.org/how-to-drive-4096-rgb-leds-each-24bit-rgb-brightness-with-one-stm32-microcontroller-without-much-cpu-load/


定制零件和外壳
Gerber为Seeedstudio Fusion PCB服务提供文件
这是链接--- seedstudio.zip (48.44 KB, 下载次数: 95)
回复

使用道具 举报

该用户从未签到

6

主题

1029

帖子

133

蝴蝶豆

金牌会员

最后登录
2021-4-24
发表于 2019-3-19 13:13:45 | 显示全部楼层
收藏!
回复

使用道具 举报

该用户从未签到

0

主题

22

帖子

0

蝴蝶豆

中级会员

最后登录
2020-7-2
发表于 2019-5-30 00:33:49 | 显示全部楼层
你好,有STM32驱动HUB75和相关例程吗?
回复 支持 反对

使用道具 举报

该用户从未签到

185

主题

623

帖子

0

蝴蝶豆

社区小助手

最后登录
2020-7-20
 楼主| 发表于 2019-5-30 13:15:31 | 显示全部楼层
lijunlinv 发表于 2019-5-30 00:33
你好,有STM32驱动HUB75和相关例程吗?

附件有哦
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

1

帖子

0

蝴蝶豆

新手上路

最后登录
2019-12-6
发表于 2019-8-7 18:04:54 | 显示全部楼层
正在学习这一块,很有参考价值
回复 支持 反对

使用道具 举报

该用户从未签到

14

主题

256

帖子

2

蝴蝶豆

金牌会员

最后登录
2019-10-8
发表于 2019-8-8 14:36:16 | 显示全部楼层
Mark    HUB75 LED显示驱动器
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-4-26 05:37 , Processed in 0.187545 second(s), 38 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表