feixue 发表于 2008-4-21 14:53:34

动手搭建1632LED点阵屏

http://www.89s51diy.com/upload/1189128958/thumb/Mon_0804/18_426_baa57848dcdf44d.jpg


第一次用洞洞板做这么大的东西,感觉还不错,整个制作过程比较顺利,得到了老沈的大力支持,在此表示感谢
先传一部分图片过来看看,大家也可以欣赏一下FLASH   
地址:www.yq0511.cn/2.swf 各位新手可以加我的群共同学习49984245
http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_257982.jpg
(原文件名:DSCF1077_缩小大小.jpg)

http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_257983.jpg
(原文件名:DSCF1078_缩小大小.jpg)

http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_257984.jpg
(原文件名:DSCF1083_缩小大小.jpg)

http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_257985.jpg
(原文件名:DSCF1084_缩小大小.jpg)

http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_257986.jpg
(原文件名:DSCF1085_缩小大小.jpg)

monlika 发表于 2008-4-21 16:08:29

很好很强大~

feixue 发表于 2008-4-21 16:15:04

原理图

点击此处下载 ourdev_258042.pdf(文件大小:71K) (原文件名:1632.pdf)
点击此处下载 ourdev_258043.pdf(文件大小:58K) (原文件名:1664CPU电路.pdf)

feixue 发表于 2008-4-21 16:16:19

在网上找的测试程序



#include <AT89x52.H>//2月1日改变过移动方向
//#include <regx52.h>
#define uchar unsigned char
#define uint unsigned int
#define SPEED 1                     //定义速度
#define light 3                        //定义亮度
uchar col,disrow;                      //col为位移变量,disrow为行变量
uint word;
uchar code tab[];
uchar BUFF;
void loadoneline(void);
void sendoneline(void);
/*******根据列指针,由双字节合并为单字节的子程序模块12MHZ************/
uchar two_onebyte(uchar h1,uchar h2)
{
uchar temp,tempcol;
if(col<8) tempcol=col;
else tempcol=col-8;
//temp=(h1<<tempcol)|(h2>>(8-tempcol));
temp=(h1>>tempcol)|(h2<<(8-tempcol));
temp=255-temp;
return temp;
}
/****************************主函数***************************/
void main(void)
{
uchar i;
col=0;word=0;
while(1)
{
        while(col<16)// 循环16次,点亮并移动一个汉字
        {
                for(i=0;i<SPEED;i++)//汉字在屏幕上的停留时间(即移动速度快慢)
                {
                        for(disrow=0;disrow<16;disrow++)//扫描16行                       
                        {
                        loadoneline();//装载一线点阵数据
                        sendoneline();//发送一线点阵数据                     
                        P2=(0x10+disrow)^0x60;// 点亮屏幕
                        P2=(0x20+disrow)^0x60;
                              
                       
                         P2_7= 1;   // 点亮屏幕                        
                                             
                       P3_1=1;      //(CLK=P3_1)上升沿595输出

                     
                        }
                }
        col++;        //列指针递增
        }
col=0;word=word+32;// 一个汉字移动后,指向下一个汉字
if(word>=1024)word=0;// 移动28个汉字后,重新开始
}
}

/**************装载一线点阵数据****************/
void loadoneline(void)
{
uchar s;
        for(s=0;s<5;s++)            //s为要显示的数字+1
        {
        //BUFF=HZ;//~
        //BUFF=HZ;//~
      BUFF=tab;//~
      BUFF=tab;//~
        }
}
/***************发送一线点阵数据*******************/
void sendoneline(void)
{
char s;uchar inc;
if(col<8)inc=0;else inc=1;
          for(s=0+inc;s<=7+inc;s++)
        //for(s=8+inc;s>=0+inc;s--)
        {
        SBUF=two_onebyte(BUFF,BUFF);
        while(!TI);TI=0;
        }
}
/***********************汉字点阵码*************************/
uchar code tab[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

//=============================================================================
//*同济物业质量方针:**/
/*--同--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x00,0x3F,0xFE,0x20,0x02,0x20,0x02,0x2F,0xFA,0x20,0x02,0x20,0x02,0x27,0xF2,
0x24,0x12,0x24,0x12,0x24,0x12,0x27,0xF2,0x24,0x12,0x20,0x02,0x28,0x02,0x10,0x02,
/*--济--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x01,0x02,0x02,0x04,0x7F,0xE4,0x08,0x80,0x05,0x11,0x02,0x12,0x0D,0x8A,0x70,0x68,
0x08,0x88,0x08,0x84,0x08,0x87,0x08,0x84,0x08,0x44,0x08,0x44,0x08,0x24,0x08,0x14,
/*--物--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x01,0x08,0x01,0x08,0x01,0x0A,0x3F,0x8A,0x2A,0xBE,0x2A,0x4A,0x29,0x29,0x29,0x28,
0x24,0x98,0x24,0x4C,0x22,0x2B,0x21,0x08,0x20,0x88,0x20,0x48,0x14,0x28,0x08,0x00,
/*--业--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x02,0x20,0x02,0x20,0x02,0x20,0x22,0x20,0x62,0x22,0x32,0x24,0x12,0x24,0x0A,0x28,
0x0A,0x38,0x06,0x28,0x02,0x20,0x02,0x20,0x22,0x20,0x7F,0xFF,0x00,0x00,0x00,0x00,
/*--质--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x3E,0x00,0x01,0xFC,0x01,0x04,0x1F,0xF4,0x01,0x04,0x00,0x84,0x0F,0xE4,0x08,0x24,
0x09,0x24,0x09,0x24,0x09,0x24,0x09,0x24,0x02,0x84,0x0C,0x42,0x18,0x22,0x08,0x11,
/*--量--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x0F,0xF8,0x08,0x08,0x0F,0xF8,0x08,0x08,0x0F,0xF8,0x00,0x00,0x7F,0xFF,0x08,0x88,
0x0F,0xF8,0x08,0x88,0x0F,0xF8,0x00,0x80,0x1F,0xF8,0x00,0x80,0x7F,0xFF,0x00,0x00,
/*--方--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x40,0x00,0x80,0x01,0x00,0x7F,0xFF,0x00,0x40,0x00,0x40,0x0F,0xC0,0x08,0x40,
0x08,0x20,0x08,0x20,0x08,0x10,0x08,0x10,0x08,0x08,0x09,0x04,0x06,0x03,0x00,0x00,
/*--针--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x04,0x08,0x04,0x08,0x04,0x04,0x04,0x7C,0x04,0x02,0x04,0x3E,0x7F,0x89,0x04,0x08,
0x04,0x7F,0x04,0x08,0x04,0x08,0x04,0x48,0x04,0x28,0x04,0x18,0x04,0x08,0x04,0x00,
/*--:--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x0C,0x00,0x0C,0x00,0x00,0x00,0x00,


//*规范服务**/
/*--规--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x08,0x3F,0x88,0x20,0x88,0x24,0xBE,0x24,0x88,0x24,0x88,0x24,0x88,0x24,0xFF,
0x24,0x88,0x0A,0x14,0x0A,0x24,0x49,0x64,0x49,0x22,0x48,0x82,0x70,0x41,0x00,0x20,
/*--范--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x04,0x20,0x04,0x20,0x7F,0xFF,0x06,0x20,0x00,0x02,0x1F,0x8C,0x10,0x89,0x10,0x86,
0x10,0x92,0x1C,0x90,0x08,0x88,0x00,0x87,0x20,0x84,0x20,0x84,0x3F,0x04,0x00,0x04,
/*--服--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x3F,0x3C,0x21,0x24,0x21,0x24,0x29,0x24,0x11,0x3C,0x01,0x24,0x3F,0x24,0x23,0x3C,
0x23,0x24,0x15,0x24,0x15,0x24,0x09,0x24,0x15,0x22,0x73,0x2A,0x21,0x11,0x00,0x00,
/*--务--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x20,0x0F,0xE0,0x08,0x30,0x04,0x28,0x02,0x46,0x01,0x81,0x06,0x60,0x78,0x98,
0x20,0x86,0x0F,0xF8,0x08,0x40,0x08,0x40,0x08,0x20,0x08,0x10,0x0A,0x0C,0x04,0x03,
/*--空格--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16**/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
//*有呼必应**/
/*--有--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x80,0x00,0x80,0x7F,0xFE,0x00,0x40,0x00,0x20,0x0F,0xF0,0x08,0x18,0x08,0x14,
0x0F,0xF2,0x08,0x11,0x08,0x10,0x0F,0xF0,0x08,0x10,0x09,0x10,0x0E,0x10,0x04,0x10,
/*--呼--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x00,0x3C,0x00,0x03,0xFF,0x12,0x11,0x32,0x51,0x12,0x91,0x0A,0x91,0x02,0x11,
0x7F,0xF1,0x02,0x1F,0x02,0x11,0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x80,0x01,0x00,
/*--必--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x20,0x08,0x40,0x19,0x80,0x08,0x80,0x04,0x30,0x04,0x10,0x0A,0x14,0x12,0x14,
0x21,0x14,0x60,0x92,0x20,0x52,0x10,0x30,0x10,0x18,0x1F,0xF4,0x00,0x03,0x00,0x00,
/*--应--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x80,0x01,0x00,0x3F,0xFC,0x00,0x04,0x00,0x44,0x10,0x84,0x31,0x0C,0x13,0x14,
0x09,0x24,0x09,0x24,0x04,0x64,0x04,0x22,0x02,0x02,0x7F,0xFA,0x00,0x01,0x00,0x00,
/*--空格--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16**/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
//*风格亲和**/
/*--风--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x00,0x1F,0xF8,0x10,0x08,0x12,0x08,0x16,0x28,0x12,0x48,0x12,0x88,0x11,0x08,
0x11,0x08,0x12,0x88,0x56,0x48,0x54,0x24,0x64,0x14,0x60,0x02,0x40,0x01,0x00,0x00,
/*--格--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x01,0x08,0x01,0x08,0x1F,0x88,0x10,0xBF,0x09,0x48,0x0A,0x2C,0x04,0x1C,0x1B,0x2A,
0x60,0xEA,0x1F,0x89,0x10,0x88,0x10,0x88,0x10,0x88,0x10,0x88,0x1F,0x88,0x10,0x88,
/*--亲--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x40,0x00,0x80,0x3F,0xFC,0x04,0x10,0x0C,0x20,0x02,0x20,0x7F,0xFE,0x00,0x80,
0x00,0x80,0x3F,0xFC,0x00,0x80,0x04,0x88,0x18,0x98,0x30,0x84,0x10,0xA2,0x00,0x40,
/*--和--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x00,0x00,0xE0,0x00,0x1E,0x3E,0x10,0x22,0x10,0x22,0xFE,0x22,0x10,0x22,0x18,
0x22,0x38,0x22,0x54,0x22,0xD4,0x22,0x52,0x3E,0x11,0x22,0x10,0x00,0x10,0x00,0x10,
/*--空格--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16**/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
//**讲究诚信**/
/*--讲--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x08,0x82,0x08,0x84,0x08,0x8C,0x08,0x84,0x3F,0xE0,0x08,0x80,0x08,0x87,0x08,0x84,
0x7F,0xF4,0x08,0x84,0x08,0x84,0x08,0x84,0x08,0x54,0x08,0x4C,0x08,0x24,0x08,0x10,
/*--究--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x00,0x40,0x00,0x80,0x7F,0xFE,0x20,0x02,0x04,0x48,0x08,0x44,0x10,0x42,0x03,0xF8,
0x02,0x40,0x02,0x40,0x02,0x20,0x42,0x20,0x42,0x10,0x42,0x08,0x7C,0x04,0x00,0x00,
/*--诚--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x04,0x02,0x14,0x0C,0x24,0x04,0x7F,0xF0,0x04,0x20,0x04,0x27,0x24,0x24,0x65,0xE4,
0x29,0x24,0x29,0x24,0x19,0x24,0x49,0x34,0x55,0x2C,0x63,0x54,0x40,0x90,0x00,0x08,
/*--信--**宋体, 12**/
/* 当前所选字体下一个汉字对应的点阵为:宽度x高度=16x16,调整后为: 16x16*/
0x01,0x10,0x06,0x30,0x02,0x18,0x7F,0xE8,0x00,0x0C,0x1F,0xCC,0x00,0x0A,0x1F,0xC9,
0x00,0x08,0x1F,0xC8,0x10,0x48,0x10,0x48,0x10,0x48,0x1F,0xC8,0x10,0x48,0x00,0x00,






//============================================================================
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,


};

wisebaby 发表于 2008-4-21 16:34:16

您的技术已经落后了。。

wkman 发表于 2008-4-21 22:26:49

to:【4楼】

只要有市场,永远不过时。


以前找工时,还看到n多个就靠这个吃饭的小公司。

flyunlimit 发表于 2008-4-21 23:16:41

程序很容易,电路很痛苦。

wfbaaa 发表于 2009-5-4 16:05:51

很清晰,谢谢分享啊

jinniuxing88 发表于 2012-12-2 16:43:07

你好,temp=(h1>>tempcol)|(h2<<(8-tempcol));
这句怎样理解谢谢,

熬松螺丝 发表于 2012-12-3 10:31:29

用来DIY还不错
页: [1]
查看完整版本: 动手搭建1632LED点阵屏