跳动的数码管代码_创客实战 | 我要做一颗跳动的心,拿起它,向心爱的女生表白!...

7446f2c5880d646bdea440b12efa068b.png

前言

今天,我要做一个跳动的心来自我救赎,我要拿起它,向心爱的女生表白!

e77351eba62f91183d7f953fbbadca4a.png

这个爱心作品使用8×8点阵LED,没有用到驱动模块,直接用Ardunio的IO口控制,差不多用完所有IO口来控制8x8=64个LED,整个制作过程非常简单,初学者很容易上手。

7446f2c5880d646bdea440b12efa068b.png

材料

Arduino Uno *1共阳8x8点阵LED 16脚 *1面包板 *2杜邦线若干

7446f2c5880d646bdea440b12efa068b.png

步骤

点阵LED

一般数码管有出厂信息:比如型号为LG5011AH,LG5011BH这里面的AH、BH中的A代表共阴极、B代表共阳极,H代表高亮。

另外,关于8*8点阵共阳和共阴的解释:1. 有的朋友认为:共阳就是LED正极全部接在一起,而负极则不是,共阴相反但也是类似。这种说法是错误的哦!(数码管的共阳和共阴是这样的),但点阵8*8点阵共阴 和共阳都是接在一起的。

2. 所谓共阳和共阴只是管脚排列名称相同(也就是说无论共阳还是共阴管脚编号一 致),但行和列的极性则相反。既然这样,那么我反过方向接共阳不就是变成了共阴吗?理论上是的,但要注意行和列相交的位置发生了变化。

3. 注意8*8点阵的管脚不是有顺序的排列。

引脚说明

c593412b463b6a6452be582ac7ad6ea7.png

接线图

a2ac4fd63a15b059b847a656ab8433b2.png 492b47293863d4a82bbced3c625c18c5.png

代码

int R[] = {2,7,A5,5,13,A4,12,A2}; //行int C[] = {6,11,10,3,A3,4,8,9};   //列 unsigned char biglove[8][8] =       //大“心型”的数据{  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,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,}; unsigned char smalllove[8][8] =      //小“心型”的数据{  0,0,0,0,0,0,0,0,  0,0,0,0,0,0,0,0,  0,0,1,0,0,1,0,0,  0,1,1,1,1,1,1,0,  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,}; void setup(){   //循环定义行列PIN 为输出模式  for(int i = 0;i<8;i++)  {    pinMode(R[i],OUTPUT);    pinMode(C[i],OUTPUT);  }} void loop(){  for(int i = 0 ; i < 100 ; i++)        //循环显示100次  {    Display(biglove);                   //显示大”心形“  }  for(int i = 0 ; i < 50 ; i++)         //循环显示50次  {       Display(smalllove);                 //显示小“心形”  }} void Display(unsigned char dat[8][8])   //显示函数{  for(int c = 0; c<8;c++)  {    digitalWrite(C,LOW);//选通第c列     //循环    for(int r = 0;r<8;r++)    {      digitalWrite(R[r],dat[r]);    }    delay(1);    Clear();  //清空显示去除余晖  }} void Clear()                          //清空显示{  for(int i = 0;i<8;i++)  {    digitalWrite(R[i],LOW);    digitalWrite(C[i],HIGH);  }}

414544c94ff067d8ecebcd1435db0c49.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值