找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2201|回复: 0
打印 上一主题 下一主题
收起左侧

Arduino 4X4直驱动光立方

[复制链接]
跳转到指定楼层
楼主
视频:https://pan.baidu.com/s/13a2mOYJxDJCnI_gJ6RS5LA

硬件: 自制4x4 LED 光立方
连线图:



软件(网络上淘来的):
//此程序为16*4方案
byte led[]= {B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,
             B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
             B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,
             B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,
             B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,
             B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,
             B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,B1111,
             B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
             B1111,B0000,B0000,B0000,B0000,B1110,B0000,B0000,B0000,B0000,B1111,B0000,B0000,B0000,B0000,B1111,
             B0000,B0000,B1111,B0000,B0000,B0000,B0001,B1110,B1111,B0000,B0000,B0000,B0000,B1111,B0000,B0000,
             B0000,B0000,B0000,B1111,B0000,B0000,B0000,B0001,B0000,B0000,B0000,B0000,B1111,B0000,B0000,B0000,
             B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
             B0000,B0000,B0000,B1111,B0000,B0000,B0000,B0001,B0000,B0000,B0000,B0000,B1111,B0000,B0000,B0000,
             B0000,B0000,B1111,B0000,B0000,B0000,B0001,B1110,B1111,B0000,B0000,B0000,B0000,B1111,B0000,B0000,
             B1111,B0000,B0000,B0000,B0000,B1110,B0000,B0000,B0000,B0000,B1111,B0000,B0000,B0000,B0000,B1111,
             B0010,B0000,B0000,B0100,B1000,B0000,B0000,B0010,B0000,B0010,B1000,B0000,B0100,B0000,B0000,B0000,
             B0001,B0000,B0000,B0010,B0100,B0000,B0000,B1001,B0000,B0001,B1100,B0000,B1010,B0000,B0000,B0000,
             B1000,B0000,B0000,B0001,B0010,B0000,B0000,B1100,B0000,B1000,B0110,B0000,B0101,B0000,B0000,B0000,
             B0100,B0000,B0000,B0000,B0001,B0000,B0000,B0110,B0000,B0100,B0011,B0000,B0010,B0000,B0000,B0000,
             B0010,B0000,B0000,B0000,B0000,B0000,B0000,B0010,B0000,B0010,B0001,B0000,B0001,B0000,B0000,B0000,
             B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0001,B0000,B0001,B0000,B0000,B0000,
              B0010,B0000,B0000,B0100,B1000,B0000,B0000,B0010,B0000,B0010,B1000,B0000,B0100,B0000,B0000,B0000,
             B0001,B0000,B0000,B0010,B0100,B0000,B0000,B1001,B0000,B0001,B1100,B0000,B1010,B0000,B0000,B0000,
             B1000,B0000,B0000,B0001,B0010,B0000,B0000,B1100,B0000,B1000,B0110,B0000,B0101,B0000,B0000,B0000,
             B0100,B0000,B0000,B0000,B0001,B0000,B0000,B0110,B0000,B0100,B0011,B0000,B0010,B0000,B0000,B0000,
             B0010,B0000,B0000,B0000,B0000,B0000,B0000,B0010,B0000,B0010,B0001,B0000,B0001,B0000,B0000,B0000,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0001,B0000,B0001,B0000,B0000,B0000,
//1-4每层一次点亮
B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
//1-4每层一次点亮(反)
B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,B0001,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,B0010,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,B0100,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,B1000,
B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,B0000,
};
int l=sizeof(led) ;
int v=4;
int i=0;
int j=16;
int k=0;
int ledi=0;
int ledj=0;
int ledk=0;
void setup() {
for(i=0;i<=20;i++)
{
  pinMode(i,OUTPUT);
}
}
void draw_layer(int i){
  for(k=16;k<=19;k++)
   {
    digitalWrite(k,HIGH);
    //delay(10);
   }
     digitalWrite(i+16,LOW);
     //delay(10);
}
void loop() {
  for(i=0;i<=3;i++)
  {
  draw_layer(i);
   for(j=0;j<=15;j++)
  {     
  ledi=ledj+j;  
   if(led[ledi] & (1<<i))
   {
     digitalWrite(j,HIGH);
     //delay(10);
   }
   else
   {
    digitalWrite(j,LOW);
    //delay(10);
   }
  }
   delay(5);
   }
   ledk++;
   if(ledk>=v)
   {
   ledj+=16;
   ledk=0;
   }
   if(ledj>=l)
   ledj=0;
}


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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