无线电爱好网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

无线电爱好网 首页 技术应用 单片机 查看内容

基于MCS-51单片机的点阵屏实现礼花功能(含源代码)

2012-8-10 10:15| 发布者: lfcx| 查看: 1790| 评论: 0

摘要: 大家可曾记得礼花绽放那一刻的精彩?小时候每当看礼花绽放时,总希望自己能将那最美的那一霎那永远留下。终于,今天我的梦想实现了。通过自己的板板,只要随手编程几下就搞定啦!  在给大家展示效果图之前,我们首 ...

 

 

大家可曾记得礼花绽放那一刻的精彩?小时候每当看礼花绽放时,总希望自己能将那最美的那一霎那永远留下。终于,今天我的梦想实现了。通过自己的板板,只要随手编程几下就搞定啦!

  在给大家展示效果图之前,我们首先得对LED点阵屏做一番介绍!8*8 LED点阵等效电路如图1所示。通过分析,我们不难得知:只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如:若想使左上角LED点亮,则Y0=1,X0=0,则会形成压降点亮左上角的LED。这里的水平方向由P2控制,垂直方向由P0控制。

8*8点阵LED等效电路图 
 图1 8*8 LED点阵等效电路

  本次在LED点阵屏上实现显示礼花的功能原理接口图如图2所示,效果图如图3所示。通过该LED点阵还可以显示静态或者动态的图形、文字等。大家感兴趣的可以自己试试啦~~

  
在LED点阵屏上实现显示礼花的功能原理接口图
图2 在LED点阵屏上实现显示礼花的功能原理接口图

礼花显示效果组图 
 图3 礼花显示效果组图

图 礼花动态显示图

  LED点阵屏上显示礼花C源代码

  #include
  #include
  #define uint unsigned int
  #define uchar unsigned char
  unsigned char code tabP0[6][8]={{0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00},{0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00},{0x00,0x00,0x10,0x38,0x38,0x10,0x00,0x00},{0x00,0x00,0x38,0x7C,0x7C,0x38,0x00,0x00},{0x00,0x38,0x7C,0x7C,0x7C,0x7C,0x38,0x00},{0x3C,0x7E,0xFF,0xFF,0xFF,0xFF,0x7E,0x3C}};
  unsigned char code tabP2[]={0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE};
  void delay(uint z)
  {
  uchar x,y;
  for(x=z;x>0;x--)
  for(y=110;y>0;y--);
  }
  void main()
  {
  int i,j,k;
  while(1)
  {
  for(j=0;j<6;j++)
  {
  for(k=0;k<25;k++)
  {
  for(i=0;i<8;i++)
  {
  P0=0;
  P2=tabP2[i];
  P0=tabP0[j][i];
  delay(2);
  }
  }
  }
  }
  }

 已同步至 lfcx的微博

路过

雷人

握手

鲜花

鸡蛋

QQ|关于本站|小黑屋|Archiver|手机版|无线电爱好网 ( 粤ICP备15040352号 ) 无线电爱好技术交流5 无线电爱好技术交流1无线电爱好技术交流9开关电源讨论群LED照明应用、电源无线电爱好技术交流4无线电爱好技术交流8无线电爱好技术交流10无线电爱好技术交流11

粤公网安备 44030702001224号

GMT+8, 2022-7-29 15:41 , Processed in 0.109200 second(s), 17 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

返回顶部