签到天数: 866 天 [LV.10]以坛为家III
|
本帖最后由 AllBlue 于 2014-10-16 13:50 编辑
Arduino 驱动8x8x8光立方
关于光立方的焊接、制作以及相关资料,点击光立方,这里都有;文章底部也有下载链接,有需要的可以看看,这里不做介绍!
本帖主要介绍由YFRobot 编写的arduino光立方库文件,及其使用方法:
首先我们需要准备的材料:
1、光立方 -- 购买地址
2、arduino控制板+USB下载线
3、几根杜邦线
下载库文件: 下载完成后解压到你的arduino IDE 安装文件夹中的library中既可。
库文件中有以下几个文件,如图:
下面是库文件包含的一些可用函数,根据这些函数就可以简单驱动光立方了:
1、LightCube():端口初始化
语法:
LightCube lightCube(int SER0 ,int SCK0 ,int RCK0 )
参数:
SER0:Arduino引脚编号,串行数据输入
SCK0:Arduino引脚编号,输入到移位寄存器
RCK0:Arduino引脚编号,上升沿是串行输入,并行输出并锁存
2、storey():层填充函数,控制某层灯点亮方式
语法:
lightCube.storey(*a)
参数:
a:一帧,a是一帧编码起始地址
3、frame():显示函数
语法:
lightCube.frame( a,v)
参数:
a:一帧,a是一帧编码起始地址
v:表示一帧画面扫描的次数
4、clc():全局清屏
语法:
lightCube.clc()
参数:
无
以下为我们为大家提供的动画效果函数:
5、All():全局点亮
语法:
lightCube.All(v)
参数:
v:表示一帧画面扫描的次数
6、dot():依次点亮00-1,01-1,02-1,03-1....63-1
语法:
lightCube.dot(v)
参数:
v:表示一帧画面扫描的次数
7、层层点亮显示效果
语法:
lightCube.LtoR_scan(v); //侧面从左向右依次点亮
lightCube.RtoL_scan(v); //侧面从右向左依次点亮
lightCube.FtoB_scan(v); //从前排向后排依次点亮
lightCube.BtoF_scan(v); //从后排向前排依次点亮
lightCube.UtoD_scan(v); //从上向下依次点亮
lightCube.DtoU_scan(v); //从下向上依次点亮
参数:
v:表示一帧画面扫描的次数
8、层旋转显示效果
语法:
lightCube.Acw(num, v); // anticlockwise逆时针
lightCube.Cw(num,v); // clockwise顺时针
lightCube.RCw(num,v); //右侧看顺时针参数:
参数:
num:旋转周数
v:速度
9、其他动画显示效果
1)语法:
lightCube.cube(empty,kind,v);
参数:
empty = 0空,1实
kind = 0左上角,1右上角,2左下角,3右下脚
2)语法:
lightCube.rain( menu, num, v);
参数:
menu:0 -- down
1 -- up
num:循环次数
3)语法:
lightCube.up(num,v); //上移
参数:
num:数量
v:速度
4)语法:
lightCube.xuanzhuantiao(kind,cw,num,v);
参数:
kind:1实心,否则空心
cw:是否正转
5)语法:
lightCube.qumianxuanzhuan( cw, num, v); 曲面旋转效果
参数:
cw :1逆时针,否则顺时针
6)语法:
lightCube.sandglass(s8 v); 沙漏效果
参数:
v:速度
下面我们来给大家介绍LightCube中的3个例程。打开Arduino IDE,在File->Example->LightCube,其中有3个示例程序;
我们选择test示例打开;
- #include "LightCube.h"
- LightCube lightCube(8, 9, 10);
-
- void setup(){
- lightCube.clc();
- }
- void loop(){
- lightCube.All(10);
- }
复制代码 根据库文件介绍,该程序是不是很简单,将所有LED全部点亮!
从程序中我们也可以看出光立方和arduino控制板的连接方式(你也可以更改成你喜欢的引脚):
SER0 -- D8(串行数据输入)
SCK0 -- D9(输入到移位寄存器)
RCK0 -- D10(上升沿是串行输入,并行输出并锁存)
另两个例程,在这里不做介绍,大家可以烧写到arduino控制板中试试看什么效果!库中还有其他效果的函数,可以试试看他们的效果,你如果觉得不够多,还可以自行改写、增加库函数显示效果函数,这样就可以很方便的使用它了!
最后将YFRobot 光立方的arduino资料分享在这(需要的可以自行下载): |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|