搜索
bottom↓
回复: 182

LED点阵屏调试手记。过于相信经验,导致浪费了2个多小时的时间。惨~~~~

[复制链接]

出0入0汤圆

发表于 2009-11-15 03:08:46 | 显示全部楼层 |阅读模式
今天在柳州的旧货市场淘到一块80X16的点阵屏。老板开价25块,但是点阵屏的板子很脏,而且PCB上的印制线也有被刮断的线,需要维修才能使用。经过一番讨价还价,以18块钱成交。从外观上看,这是一块双色屏,接口也是主流接口,信号线分别有ABCD四根行选择线,DR、DG两条点阵数据线,分别是红点阵数据和绿点阵数据。三根控制线,分别是CLK,STB,OE。和常见的屏是一样的。回来之后就对这块屏进行清洗,晾干。吃完饭之后就开始进行调试和驱动程序的编写。因为上个星期买到一个小LED点阵已经调试成功,所以受前一次经验的影响,让我走了一个大弯路。实在是不应该,足足浪费我2-3个小时。

        首先说说原来的小点阵芯片情况:小点阵使用2片138做行选择译码,595做控制输出,当然前面还有74HC245做信号的缓冲。小点阵屏只要接上电源,并将OE拉低,点阵即可点亮。随后就可以依次进行ABCD\SDA\SCK\STB的信号调试了。小屏的调试过程中还是很顺利的。在后来的驱动程序编写中虽然有些困难,但是依然较为顺利的完成了。

        再看看这次的大点阵屏:采用的芯片基本一致,也是138+595+245,但是这块屏上多了一块74HC04,经过观察,发现该74HC04是与译码芯片138相连的。因此猜测是用于信号整形,应该没有太多的不同。

        首先是修复受损的PCB导线。用砂纸轻轻打磨阻焊层,然后用剪下的电阻管脚连接断裂处,再用万用表检测连通情况确认修复成功后给打过补丁的地方封上硅胶保护。修复完成后按原方法给屏接上电源后,拉低OE,屏不亮。不管OE接高电平还是低电平,屏始终不亮。晕倒了。于是怀疑是不是还有线没有补好,就又回头花了10分钟寻找,无果。于是怀疑该屏是不是被雷击过,遂拆下信号缓冲芯片74HC245进行测试,结果没有问题,又将74HC04拆下测试,也没有问题。再将其焊回电路板。这一拆一试就花了我一个小时的时间,因为我没有热风枪,用电烙铁堆焊拆贴片的芯片是比较麻烦的。再次怀疑PCB板有霉断的地方,又用万用表检测,花去20分钟。无果。于是进入盲试阶段,将信号线全部接到轻触开关上,随意的按动开关。起初按动的速度比较慢,屏没有反应,后来有一次不经意的快速按动了一下按钮,屏闪了一下。黑黑,这让我很兴奋。仔细一看,原来按动的是D信号线,但再次按动D,屏也不闪。结果快速的按动D信号线(即快速的给D发送0,1电平),屏跟着闪烁起来了。倒塌了,难道这个屏对于慢速的扫描信号不认同的,之后行扫描频率达到一定值时才允许通过吗?马上写一个程序测试。

void main()
  {
  speed=25;
  while(1)
    {
P0--;
delay(speed);
if(KEY==0)
   {speed++;}
if(KEY2==0)
   {speed--;}
}
  }

        果然不出所料,当ABCD扫描频率低时,屏不工作,随着扫描频率的增加,LED屏开始隔行点亮,当频率在20多HZ以上时,LED逐行点亮了。

        此时再回头看看74HC04的外围电路不像我们常用的都是接数字逻辑元件,而是接了两颗贴片的1N4148,电阻,电容等元件。原来这个74HC04跟外围元件构成了触发器,当频率不足时就会关闭138的输出,屏自然不亮了。

        接下来开始测试CLK\SDA\STB\RED信号,都很顺利,最后测试GREEN信号时发现不起作用,这是为什么呢?原来虽然点阵用的是双色的点阵,但是电路板上的另一串控制绿色点的595并没有焊接,所以就没有绿色了。于是想用镊子手动给8X8点阵加电压点亮绿色的点,却怎么也点不亮,仔细观察8X8的点阵发现虽然每颗LED里面都有3个电极,但是实际上只安装了一颗LED管芯,倒塌了。看来这块屏没有什么神秘之处了。紧接着就开始程序的移植,把原来驱动小点阵的程序修改修改,就成功的驱动了这块点阵。在程序上倒是没有费太多的周折。

        由于这次过于相信自己的经验而导致浪费了大量的时间,这确实不应该,希望有玩LED点阵的朋友不要犯同样的错误了。

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

        附:程序

#include <reg52.h>

sbit UPD = P1^4;//更新允许.上跳变更新输出
sbit CLK = P1^5;//移位时钟,上升沿移动数据
sbit SDA = P1^6;//数据线,低电平点亮LED
sbit OEN = P1^7;//输出允许控制,低电平允许显示
sbit SPEEDUP=P2^0;//滚屏速度增加
sbit SPEEDDOWN=P2^1;//滚屏速度减慢
sbit pause=P2^2;//暂停滚屏
sbit turnleft=P2^3;//左转
sbit turnright=P2^4;//右转
sbit slow_down=P2^5;//刹车
bit gunping;//是否滚屏
bit disp_on;//是否显示
bit disp_flash;//是否闪烁显示
unsigned int zhou_ping,speed;//走屏计数变量,速度控制变量
unsigned int pian_yi_liang;//刷新显示偏移量
unsigned char hang;//当前扫描行
unsigned char san_shuo;//闪烁计数变量
unsigned char *disp;//显示指针
unsigned char code linescan[]={15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0};
unsigned char code right[]={
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE3,
0xFF,0xFF,0xFF,0xFF,0xFF,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0xF8,0xFF,0xFF,0xFF,
0xFF,0x0F,0xE0,0xFF,0xFF,0xFF,0xFF,0x1F,0x00,0xFF,0x03,0x00,0x00,0x00,0x00,0xF8,
0x03,0x00,0x00,0x00,0x00,0xF0,0xFF,0xFF,0xFF,0x1F,0x00,0xFF,0xFF,0xFF,0xFF,0x0F,
0xE0,0xFF,0xFF,0xFF,0xFF,0x0F,0xFC,0xFF,0xFF,0xFF,0xFF,0x07,0xFF,0xFF,0xFF,0xFF,
0xFF,0xE3,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
};
unsigned char code left[]={
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC7,0xFF,
0xFF,0xFF,0xFF,0xFF,0xE0,0xFF,0xFF,0xFF,0xFF,0x1F,0xF0,0xFF,0xFF,0xFF,0xFF,0x07,
0xF0,0xFF,0xFF,0xFF,0xFF,0x00,0xF8,0xFF,0xFF,0xFF,0x1F,0x00,0x00,0x00,0x00,0xC0,
0x0F,0x00,0x00,0x00,0x00,0xC0,0xFF,0x00,0xF8,0xFF,0xFF,0xFF,0xFF,0x07,0xF0,0xFF,
0xFF,0xFF,0xFF,0x3F,0xF0,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0xFF,0xFF,0xFF,0xFF,0xFF,
0xC7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
};
unsigned char code STOP[]={
0xEF,0x7D,0xFF,0xFE,0xFF,0xFF,0xDF,0x7E,0xFF,0xFE,0xFF,0xFF,0x3F,0x6F,0x07,0x00,
0xFF,0xFF,0x9F,0x6E,0x7F,0xFF,0xDF,0xDF,0xCF,0x69,0x7F,0xFB,0xDF,0xDF,0x77,0x6D,
0xBF,0xFB,0xDF,0xDF,0x7F,0x6F,0xDF,0xFB,0xDF,0xDF,0x07,0x68,0x0F,0x00,0xDF,0xDF,
0x7F,0x6F,0xFF,0xFB,0xDF,0xDF,0x6F,0x6E,0xFF,0xFB,0xDF,0xDF,0x4F,0x6D,0x03,0x00,
0xFE,0xFF,0x67,0x6B,0xFF,0xFB,0xFF,0xFF,0x7B,0x7B,0xFF,0xFB,0x9F,0x9F,0x5F,0x7F,
0xFF,0xFB,0x9F,0x9F,0xBF,0x5F,0xFF,0xFB,0xFF,0xFF,0xFF,0xBF,0xFF,0xFB,0xFF,0xFF,
};
unsigned char code LEDDOT[]={
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0x8F,0xFF,0x29,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,
0xFF,0x6D,0xFF,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xFF,0x6D,0xFF,0xEF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xEF,0xFF,0x6D,0xC3,0x83,0xFF,0xC3,0x01,0xC3,0xE3,0xEF,0xC3,0x6D,
0xBD,0xEF,0xFF,0xBD,0xB6,0xBD,0xDD,0xEF,0xBD,0x55,0xBD,0xEF,0xFF,0x81,0xB6,0xBD,
0xBF,0xEF,0x81,0x55,0xBD,0xEF,0xFF,0xBF,0xB6,0xBD,0xBF,0xEF,0xBF,0x93,0xBD,0xEF,
0xFF,0xBF,0xB6,0xBD,0xBF,0xEF,0xBF,0xBB,0xBD,0xEF,0xFF,0xBD,0xB6,0xBD,0xDD,0xEF,
0xBD,0xBB,0xC3,0xF3,0xFF,0xC3,0x12,0xC3,0xE3,0x83,0xC3,0xBB,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,
0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xEF,0xEF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,0x18,0x23,0xC3,0x27,0x01,0xC3,0xE3,
0xFF,0xEF,0xEF,0xBD,0x9D,0xBD,0x9B,0xB6,0xBD,0xDD,0xFF,0xEF,0xEF,0xDB,0xBD,0xE1,
0xBD,0xB6,0xBD,0xBF,0xFF,0xFF,0xFF,0xDB,0xBD,0xDD,0xBD,0xB6,0xBD,0xBF,0xFF,0xFF,
0xFF,0xD7,0xBD,0xBD,0xBD,0xB6,0xBD,0xBF,0xFF,0xE7,0xE7,0xE7,0xBD,0xBD,0xBB,0xB6,
0xBD,0xDD,0xFF,0xE7,0xE7,0xEF,0x18,0xC0,0x87,0x12,0xC3,0xE3,0xFF,0xFF,0xFF,0xEF,
0xFF,0xFF,0xBF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x1F,0xFF,0xFF,0x1F,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xCF,0x3F,0xC1,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xCF,
0xBF,0xBD,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xBF,0xBD,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xBF,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xC3,0x23,0x8F,0xA3,0x7F,
0xFF,0xFF,0xFF,0xFF,0xFF,0xBD,0x9D,0xEF,0x9D,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xE1,
0xBD,0xEF,0xBD,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xDD,0xBD,0xEF,0xBD,0x7F,0xFF,0xFF,
0xFF,0xFF,0xFF,0xBD,0xBD,0xEF,0xBD,0xBD,0xFF,0xFF,0xFF,0xFF,0xFF,0xBD,0xBD,0xEF,
0xBD,0xBB,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0x18,0x83,0x18,0xC7,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xF0,0xFF,0xFF,0xFF,0xC7,0xFF,0xFF,0xFF,0xFF,0xFF,0xEE,0xFF,0xFF,
0xFF,0xBB,0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,0xFF,0xFF,0xFF,0x7D,0xFF,0xFF,0xFF,0xFF,
0xEF,0xEF,0xFF,0xFF,0xFF,0x7D,0xFF,0xFF,0xFF,0xFF,0x83,0x81,0xC3,0xC1,0xFF,0x7D,
0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,0xBD,0xBD,0xFF,0x7D,0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,
0xBD,0xBF,0xFF,0x7D,0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,0xBD,0xC3,0xFF,0x7D,0xFF,0xFF,
0xFF,0xFF,0xEF,0xEF,0xBD,0xFD,0xFF,0x7D,0xFF,0xFF,0xFF,0xFF,0xEF,0xEF,0xBD,0xBD,
0xFF,0xBB,0xFF,0xFF,0xFF,0xFF,0xF3,0x83,0xC3,0x83,0xFF,0xC7,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xF9,0xFF,0x1F,0xFF,0xFF,0xC1,0xFF,0xFF,0xFF,0xFF,0xFD,0xFF,0xBF,0xFF,
0xFF,0xBD,0xFF,0xFF,0xFF,0xFF,0xFD,0xEF,0xBF,0xFF,0xFF,0xBD,0xFF,0xFF,0xFF,0xFF,
0xFD,0xEF,0xBF,0xFF,0xFF,0x7F,0xFF,0xFF,0xFF,0xFF,0xE1,0x83,0xBF,0xFF,0xC3,0x7F,
0xFF,0xFF,0xFF,0xFF,0xDD,0xEF,0xBF,0xFF,0xBD,0x7F,0xFF,0xFF,0xFF,0xFF,0xBD,0xEF,
0xBF,0xFF,0xBD,0x7F,0xFF,0xFF,0xFF,0xFF,0xBD,0xEF,0xBF,0xFF,0xBD,0x7F,0xFF,0xFF,
0xFF,0xFF,0xBD,0xEF,0xBF,0xFF,0xBD,0xBD,0xFF,0xFF,0xFF,0x9F,0xD9,0xEF,0xBD,0x9F,
0xBD,0xBB,0xFF,0xFF,0xFF,0x9F,0xE4,0xF3,0x01,0x9F,0xC3,0xC7,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFD,0xFF,0xFF,0xFF,0xFF,0x01,0x02,0x01,0x00,0x7F,0xFE,
0x03,0xC0,0xBF,0xFB,0x77,0xEF,0xBF,0xFB,0xFF,0xFE,0xFB,0xFF,0xBF,0xF9,0x77,0xEF,
0x07,0xC0,0xF7,0xFF,0xFB,0xFF,0xBF,0xFB,0x77,0xDF,0xB7,0xDB,0x03,0xC0,0x1B,0x80,
0xDF,0xF7,0x77,0xDF,0xB7,0xDB,0xFF,0xFE,0xFB,0xFF,0xEF,0xF7,0x01,0x84,0x07,0xC0,
0xFF,0xFE,0xFB,0xFF,0xE7,0xEF,0x77,0x97,0xF7,0xDB,0xF7,0xFE,0x3B,0xC0,0xF1,0xDD,
0x77,0x57,0xFF,0xFB,0x03,0xC0,0xBB,0xDF,0xFB,0xBC,0x77,0xD7,0x01,0x00,0xFF,0xFE,
0xBB,0xDF,0xFF,0xFD,0x77,0xD7,0xEF,0xF7,0xFF,0xFE,0x3B,0xC0,0xDF,0xFB,0xF7,0xD6,
0xDF,0xF1,0xFF,0xFE,0xBB,0xDF,0xEF,0xF7,0xF7,0xC6,0x3F,0xFE,0xFB,0xFE,0xFB,0xDF,
0x07,0xEE,0xF7,0xDD,0xCF,0xF9,0x01,0x80,0xEB,0xFF,0xE7,0xC0,0xF7,0xFB,0xF3,0xE7,
0xFF,0xFF,0xF7,0xFF,0xEF,0xEF,0xF7,0xF7,0xF7,0x9F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xDE,0xFF,0xFF,0xDF,0xF7,0xFF,0xFF,0xFF,0xFD,0x0F,0xDE,0x03,0xC0,0xDF,0xF7,
0xFF,0xFF,0xBF,0xDD,0xDF,0xDD,0xFF,0xFE,0x03,0x80,0xFF,0xFF,0xCF,0xDD,0x07,0x00,
0xFF,0xFE,0xDF,0xF7,0xFF,0xFF,0xEF,0xDD,0xB7,0xDD,0xFF,0xFE,0x1F,0xF0,0xFF,0xFF,
0x01,0x80,0xB7,0x8D,0xFF,0xFE,0xDF,0xF7,0xFF,0xFF,0xFF,0xDB,0x07,0x94,0x01,0x00,
0x1F,0xF0,0xFF,0xFF,0xFF,0xFB,0x7F,0x57,0xFF,0xFE,0xDF,0xF7,0xFF,0xFF,0x1F,0xF8,
0x33,0x5E,0xFF,0xFE,0x01,0x00,0xFF,0xFF,0xDF,0xF3,0x0F,0xD9,0xFF,0xFE,0xDF,0xF7,
0xFF,0xCF,0xDF,0xF5,0x8F,0xDE,0xFF,0xFE,0xE7,0xEE,0xFF,0xCF,0xDF,0xF5,0x97,0xD9,
0xFF,0xFE,0x11,0xC0,0xFF,0xFF,0xBF,0xEE,0x59,0xDE,0xFF,0xFE,0xFB,0x3E,0xFF,0xCF,
0x7F,0xDF,0xDB,0xD1,0xFF,0xF6,0xFF,0xFE,0xFF,0xCF,0x9F,0xBE,0x5F,0xDF,0xFF,0xFA,
0x03,0x80,0xFF,0xFF,0xE3,0x79,0xBF,0xDF,0xFF,0xFD,0xFF,0xFF,0xFF,0xFF,0xF7,0xE7,
0xF7,0xFD,0xFF,0xFF,0x7F,0xEF,0xBF,0xEF,0x7F,0xFF,0xF3,0x06,0x0F,0xE0,0x7F,0xEF,
0x81,0xE0,0x7F,0xFF,0x6F,0xF7,0xEF,0xEF,0x7F,0xDF,0x5F,0xD7,0x03,0xC0,0x03,0xF4,
0x0F,0xE0,0x03,0x83,0xEF,0xBA,0x7B,0xDF,0xBB,0x85,0xFB,0xEF,0xFB,0xBA,0xBF,0x7B,
0x77,0xDF,0x03,0xBC,0xFB,0xEF,0xFB,0xBA,0xBF,0xC1,0x7F,0xDF,0xBB,0xBD,0x03,0xF0,
0xFB,0xB9,0x03,0xDC,0x0F,0xD0,0xBB,0xBD,0xDF,0xFF,0x7B,0x83,0xBB,0xDD,0xEF,0xDB,
0x03,0x04,0xDF,0xFF,0xBB,0xBB,0xBB,0xC1,0xDF,0xDD,0xBB,0xB5,0x01,0x00,0x9B,0xBB,
0xBB,0xDD,0xDF,0xDD,0xBF,0xF7,0xDF,0xF7,0xDB,0xBB,0xBB,0xDD,0xBF,0xDE,0x01,0xF0,
0xDF,0xFB,0xFB,0xBB,0xBB,0xC1,0x7F,0xDF,0xBF,0xF7,0xDF,0xF9,0xFB,0x83,0xBB,0xDD,
0xBF,0xDE,0xBF,0xF7,0xDF,0xFB,0xD7,0xBB,0x7B,0xBD,0xCF,0xBD,0xBF,0xAF,0x5F,0xFF,
0xEF,0xBF,0x57,0xB5,0xF1,0xBB,0xBF,0xDF,0xBF,0xFF,0xFF,0xFF,0xEF,0x7A,0xFB,0x67,
0xFF,0xFF,0xBF,0xEF,0x83,0xFF,0xF7,0xF7,0xFF,0xFD,0xFF,0xFF,0xDF,0xEF,0x7F,0xC0,
0xF7,0xEF,0xBF,0xDD,0xFF,0xFF,0x01,0xDC,0xDF,0xFD,0xF7,0xC0,0xCF,0xDD,0xFF,0xFF,
0xBF,0xDF,0xDF,0xFB,0xF7,0xDE,0xEF,0xDD,0xFF,0xFF,0xBF,0xBB,0xBF,0xF7,0x01,0xC0,
0x01,0x80,0xFF,0xFF,0x77,0x07,0x7F,0xE0,0xF7,0xDE,0xFF,0xDB,0xFF,0xFF,0xFB,0xF6,
0xDF,0xFC,0xF7,0xC0,0xFF,0xFB,0xFF,0xFF,0x01,0xEC,0xEF,0xF3,0xB7,0xDE,0x1F,0xF8,
0xFF,0xFF,0x6B,0xDF,0x07,0xC0,0xD7,0xDE,0xDF,0xF3,0xFF,0xFF,0x6F,0x83,0x73,0xEF,
0xD7,0x80,0xDF,0xF5,0xFF,0xFF,0x6F,0xFF,0x5F,0xFB,0xD7,0xFA,0xDF,0xF5,0xFF,0xCF,
0x6F,0xFF,0x6F,0xF7,0xF7,0xF6,0xBF,0xEE,0xFF,0xCF,0xED,0xE2,0x77,0xEF,0xF7,0xEE,
0x7F,0xDF,0xFF,0xEF,0xED,0x1E,0x7B,0xDF,0xF7,0xDE,0x9F,0xBE,0xFF,0xDF,0xF1,0xFD,
0x7B,0xBD,0xD7,0xBA,0xE3,0x79,0xFF,0xFF,0xFF,0xFB,0xFF,0xFE,0xEF,0xFD,0xF7,0xE7,
0xFF,0xDF,0xBF,0xFB,0xDF,0xEF,0xFF,0xFF,0xDF,0xF7,0x07,0xCE,0xBF,0xFB,0xBF,0xEF,
0x03,0xC0,0xDF,0xF7,0xF7,0xDE,0x01,0x00,0x03,0xEE,0xFF,0xFE,0x03,0x80,0xF7,0xBE,
0xBF,0xFB,0xFB,0x02,0xFF,0xFE,0xDF,0xF7,0x07,0xB6,0xFF,0xF7,0x03,0xEE,0xFF,0xFE,
0x1F,0xF0,0xBF,0x07,0x7F,0xF3,0xFB,0xC6,0xFF,0xFE,0xDF,0xF7,0x03,0xEC,0x6F,0xF7,
0x03,0xCA,0x01,0x00,0x1F,0xF0,0xBB,0xDD,0x67,0xE7,0xDF,0xAF,0xFF,0xFE,0xDF,0xF7,
0x03,0xBC,0x5F,0xD7,0x01,0xAC,0xFF,0xFE,0x01,0x00,0xBB,0x05,0x3F,0xB7,0xDD,0x6D,
0xFF,0xFE,0xDF,0xF7,0x03,0xFC,0x7F,0xF6,0xDD,0xED,0xFF,0xFE,0xE7,0xEE,0xBF,0xFF,
0x7B,0xF5,0xDD,0xED,0xFF,0xFE,0x11,0xC0,0xBD,0xE7,0x7B,0xF7,0xDD,0xED,0xFF,0xFE,
0xFB,0x3E,0xBD,0x1F,0x79,0xF7,0xD9,0xED,0xFF,0xF6,0xFF,0xFE,0xC1,0xFF,0x83,0xF7,
0xDF,0xEF,0xFF,0xFA,0x03,0x80,0xFF,0xFF,0xFF,0xF7,0xDF,0xEF,0xFF,0xFD,0xFF,0xFF,
0xFD,0xBF,0xBF,0xEF,0xFF,0xEF,0xFF,0xF3,0x7F,0xEF,0x3D,0xD8,0xBF,0xEF,0x07,0xE4,
0xFF,0xF9,0x7F,0xEF,0xBD,0xDB,0x5F,0xEF,0xF7,0xEF,0xFF,0xFD,0x7F,0xDF,0xAD,0x7B,
0xEF,0x02,0x07,0xDC,0xFF,0xFE,0x03,0x83,0xAD,0xBA,0xF1,0xED,0xF7,0xDF,0xFF,0xFC,
0xFB,0xBA,0xAD,0xAA,0xFF,0xC7,0x07,0x8C,0x7F,0xFD,0xFB,0xBA,0xAD,0xEA,0x07,0xCA,
0xFF,0x5F,0x7F,0xFD,0xFB,0xB9,0xAD,0xDA,0xFF,0xAF,0x01,0xD8,0xBF,0xFB,0x7B,0x83,
0xAD,0xDA,0x77,0xAF,0xFD,0xD7,0xDF,0xFB,0xBB,0xBB,0xAD,0xDA,0xB3,0x6D,0x0B,0xD4,
0xDF,0xF7,0x9B,0xBB,0xAD,0x3A,0xB7,0xEE,0xEF,0xDE,0xEF,0xF7,0xDB,0xBB,0xFD,0xBE,
0xAF,0xEE,0xDF,0xDE,0xF7,0xEF,0xFB,0xBB,0x7D,0xBD,0xDF,0xEF,0x3F,0xDF,0xF1,0xDF,
0xFB,0x83,0xBD,0xBD,0x01,0xE8,0x4F,0xDE,0xFB,0xBF,0xD7,0xBB,0xB5,0xBB,0xFF,0xEF,
0xF1,0xD1,0xFF,0x7F,0xEF,0xBF,0xFB,0xB7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xDF,0xF7,0xFF,0xFF,0xBF,0xEF,0x83,0xFF,0x03,0xC0,0xDF,0xF7,0xFF,0xFF,
0xDF,0xEF,0x7F,0xC0,0xFF,0xFE,0x03,0x80,0xFF,0xFF,0x01,0xDC,0xDF,0xFD,0xFF,0xFE,
0xDF,0xF7,0xFF,0xFF,0xBF,0xDF,0xDF,0xFB,0xFF,0xFE,0x1F,0xF0,0xFF,0xFF,0xBF,0xBB,
0xBF,0xF7,0xFF,0xFE,0xDF,0xF7,0xFF,0xFF,0x77,0x07,0x7F,0xE0,0x01,0x00,0x1F,0xF0,
0xFF,0xFF,0xFB,0xF6,0xDF,0xFC,0xFF,0xFE,0xDF,0xF7,0xFF,0xFF,0x01,0xEC,0xEF,0xF3,
0xFF,0xFE,0x01,0x00,0xFF,0xFF,0x6B,0xDF,0x07,0xC0,0xFF,0xFE,0xDF,0xF7,0xFF,0xFF,
0x6F,0x83,0x73,0xEF,0xFF,0xFE,0xE7,0xEE,0xFF,0xFF,0x6F,0xFF,0x5F,0xFB,0xFF,0xFE,
0x11,0xC0,0xFF,0xCF,0x6F,0xFF,0x6F,0xF7,0xFF,0xFE,0xFB,0x3E,0xFF,0xCF,0xED,0xE2,
0x77,0xEF,0xFF,0xF6,0xFF,0xFE,0xFF,0xEF,0xED,0x1E,0x7B,0xDF,0xFF,0xFA,0x03,0x80,
0xFF,0xDF,0xF1,0xFD,0x7B,0xBD,0xFF,0xFD,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xFF,0xFE,
0x7F,0xFF,0x7F,0xEF,0xFF,0xFE,0xFF,0xEF,0xDF,0xDF,0xBF,0x83,0x7F,0xEF,0xFF,0xFE,
0xFF,0xEE,0xDF,0xEF,0xBF,0xB7,0x7F,0xDF,0xF7,0xFE,0xC1,0xEE,0x01,0x00,0x01,0xAC,
0x03,0x83,0xEF,0xFE,0x1B,0xEE,0xDF,0xFF,0x7F,0xAF,0xFB,0xBA,0xDF,0x82,0xDB,0x02,
0xDF,0xBB,0x7F,0x9F,0xFB,0xBA,0x3F,0xFA,0xDB,0xEE,0x03,0xD6,0x7F,0xAF,0xFB,0xB9,
0xBF,0xFA,0x1B,0xC4,0xDB,0x02,0x07,0xB7,0x7B,0x83,0xDF,0xF6,0xD7,0xCA,0xDB,0xEE,
0xF7,0xB6,0xBB,0xBB,0xDF,0xF6,0xD7,0xAE,0x03,0xEE,0xF7,0xB6,0x9B,0xBB,0xEF,0xEE,
0x67,0xAA,0x9F,0x03,0xF7,0x96,0xDB,0xBB,0xE7,0xEE,0xAF,0x6A,0x4F,0xEF,0xF7,0xAD,
0xFB,0xBB,0xF1,0xDE,0xE7,0xE6,0x57,0xEF,0xF7,0xBD,0xFB,0x83,0xFB,0x3E,0xDB,0xEE,
0xD1,0xDE,0xF7,0xBB,0xD7,0xBB,0xFF,0xFE,0xB9,0xEE,0xDB,0xDD,0xD7,0xB7,0xEF,0xBF,
0xFF,0xFA,0x7D,0xEA,0xDF,0xBB,0xEF,0xBF,0xFF,0xFF,0xFF,0xFD,0xFF,0xED,0xDF,0x7F,
0xDF,0xBF,0xFF,0xBF,0xFF,0xFF,0xF7,0xEF,0xFF,0xFD,0xDF,0xDF,0x0F,0xDE,0xEF,0xEF,
0xE3,0xEF,0xFF,0xFB,0xDF,0xCF,0xEF,0xCE,0xEF,0xEF,0x1F,0x02,0x0F,0xF0,0xDF,0xDF,
0xEF,0xDE,0xEF,0xEF,0xDF,0xEF,0xEF,0xF7,0xDF,0xFF,0xEF,0xFE,0x01,0x02,0xC3,0x83,
0x0F,0xF0,0x01,0x0C,0xEF,0xFE,0xEF,0xEF,0x1F,0xEE,0xEB,0xF7,0xDF,0xEF,0xF1,0x1D,
0xCF,0xC7,0xDF,0xEF,0x09,0xF0,0xDF,0xEF,0x07,0xDA,0xCF,0xCB,0xDF,0x01,0xEB,0xF7,
0xDF,0xEF,0xF7,0xDE,0xAF,0xCB,0xC1,0xEF,0xE7,0xF7,0xDF,0xEF,0xF7,0xDE,0xAF,0xAF,
0x1F,0xC4,0x01,0x80,0xDF,0xEF,0x6F,0xDF,0x6F,0xAF,0xDF,0xCB,0x8F,0xFF,0xDF,0xED,
0x6F,0xDF,0xEF,0x6E,0xDF,0xA9,0x6F,0xFE,0xDF,0xEB,0x9F,0xD7,0xEF,0xED,0xDD,0xAB,
0xEF,0xF9,0xDF,0xE7,0x6F,0xCF,0xEF,0xEF,0xDD,0x6F,0xEF,0xE7,0xDF,0xEF,0xF1,0xDC,
0xAF,0xEF,0xE1,0xEF,0xAF,0x9F,0xDF,0xFF,0xFB,0xF3,0xDF,0xEF,0xFF,0xEF,0xDF,0xFF,
0xFF,0xBF,0x7F,0xFF,0xFF,0xFF,0xFF,0xFD,0xFF,0xFF,0x7F,0xDE,0x7F,0xFF,0xFF,0xFF,
0xBF,0xDD,0x01,0x80,0x83,0xC9,0x7F,0x03,0xFF,0xFF,0xCF,0xDD,0xDF,0xFB,0xBB,0xDB,
0x01,0xFA,0xFF,0xFF,0xEF,0xDD,0xDF,0xFB,0xBB,0xFB,0xFB,0x7A,0xFF,0xFF,0x01,0x80,
0xDF,0xFB,0xBB,0xFB,0xB7,0xB5,0xFF,0xFF,0xFF,0xDB,0xDF,0xFB,0xBB,0x1B,0xBF,0xD7,
0xFF,0xFF,0xFF,0xFB,0x01,0x00,0xBB,0xDB,0xBF,0xEF,0xFF,0xFF,0x1F,0xF8,0xDF,0xFB,
0xBB,0xDA,0xBF,0xE7,0xFF,0xFF,0xDF,0xF3,0xDF,0xFB,0xAB,0xD9,0x9F,0xE7,0xFF,0xFF,
0xDF,0xF5,0xDF,0xFB,0xB7,0xDB,0x5F,0xDB,0xFF,0xFF,0xDF,0xF5,0xDF,0xF7,0xBF,0xDF,
0x6F,0xDB,0xFF,0xCF,0xBF,0xEE,0xDF,0xF7,0xBF,0xDF,0xE7,0xBE,0xFF,0xCF,0x7F,0xDF,
0xDF,0xEF,0xFF,0xAF,0xF1,0x79,0xFF,0xEF,0x9F,0xBE,0xDF,0xDF,0x01,0x70,0xFB,0xC7,
0xFF,0xDF,0xE3,0x79,0xDF,0xBF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF7,0xE7,0xFF,0xFF,
0xBF,0xFB,0xFF,0xFE,0x7F,0xBF,0xFF,0xFE,0xFF,0xFE,0xBF,0xFB,0xFF,0xBE,0x7F,0xDF,
0xFF,0xFE,0xFF,0xFE,0xBF,0xFB,0x03,0xCE,0xBF,0xDE,0xFF,0xFE,0x03,0xC0,0xBB,0xFB,
0xFB,0xDD,0xDF,0xFE,0x07,0xC0,0xFF,0xFE,0xB9,0xBB,0xFB,0xFB,0xE7,0x7D,0xF7,0xDE,
0xCF,0xF6,0xB3,0xDB,0x1B,0xFC,0xF9,0xAB,0xF7,0xDE,0xDF,0xFA,0xB7,0xDB,0xDB,0x1D,
0x0F,0xA4,0x07,0xC0,0xBF,0xFC,0xAF,0xEB,0xDB,0xDD,0xFF,0xEF,0xF7,0xDE,0x01,0x80,
0xAF,0xE3,0x1B,0xDC,0xFF,0xDF,0xF7,0xDE,0x7F,0xFE,0x9F,0xEB,0xDB,0xDD,0x07,0xD8,
0xF7,0xDE,0xBF,0xFC,0xBF,0xFB,0xDB,0xDD,0xF7,0x3B,0x07,0xC0,0xDF,0xFA,0xBF,0xFB,
0x1B,0xDC,0xF7,0xBB,0xF7,0xDE,0xE7,0xF6,0xBB,0xFB,0xDB,0xD5,0xF7,0xBB,0xFD,0xFE,
0xF1,0xCE,0x01,0x00,0xFB,0xCF,0xF7,0xBB,0xFD,0xFE,0xFB,0x3E,0xFF,0xFF,0xEB,0xDF,
0x07,0xB8,0x01,0xFF,0xFF,0xFE,0xFF,0xFF,0xF7,0xFF,0xF7,0xBB,0xFF,0xFF,0xFF,0xFE,
0xFF,0xFF,0xFF,0xBF,0xFF,0xFE,0xFF,0xFF,0xFF,0xFB,0xFF,0xFF,0xE3,0xDF,0xFF,0xFE,
0xFF,0xFF,0x0F,0xF8,0xFF,0xFF,0x1F,0xCC,0xFF,0xFE,0xFF,0xFF,0xEF,0xF3,0xFF,0xFF,
0xDF,0xDF,0x07,0xC0,0xFF,0xFF,0xDF,0xEB,0xFF,0xFF,0xDF,0xFF,0xF7,0xDE,0xFF,0xFF,
0xBF,0x9D,0xFF,0xFF,0x01,0xF8,0xF7,0xDE,0xFF,0xFF,0x7F,0x7E,0xFF,0xFF,0xDF,0x0F,
0x07,0xC0,0xFF,0xFF,0x9F,0xF9,0xFF,0xFF,0xDF,0xEF,0xF7,0xDE,0xFF,0xFF,0xE1,0xE6,
0xFF,0xFF,0xDF,0xEF,0xF7,0xDE,0xFF,0xFF,0xFB,0x9E,0xFF,0xCF,0x03,0xEE,0xF7,0xDE,
0xFF,0xFF,0x0F,0xE0,0xFF,0xCF,0xFB,0xEE,0x07,0xC0,0xFF,0xCF,0xEF,0xFD,0xFF,0xFF,
0xFB,0xEE,0xF7,0xDE,0xFF,0xB7,0xEF,0xFD,0xFF,0xCF,0xFB,0xEA,0xFD,0xFE,0xFF,0xB7,
0xEF,0xFB,0xFF,0xCF,0x03,0xE6,0xFD,0xFE,0xFF,0xCF,0xEF,0xF7,0xFF,0xFF,0xFB,0xEE,
0x01,0xFF,0xFF,0xFF,0xAF,0xCF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0x3F,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x81,0xEF,
0xE7,0xC3,0x81,0x81,0xE7,0xC3,0xC3,0xEF,0xBF,0x8F,0xDB,0xBD,0xBB,0xBB,0xDB,0xBD,
0xBD,0x8F,0xBF,0xEF,0xBD,0xBD,0xBB,0xBB,0xBD,0xBD,0xBD,0xEF,0xBF,0xEF,0xBD,0xBD,
0xF7,0xF7,0xBD,0xFB,0xFB,0xEF,0xA7,0xEF,0xBD,0xFB,0xF7,0xF7,0xBD,0xE7,0xE7,0xEF,
0x9B,0xEF,0xBD,0xFB,0xEF,0xEF,0xD9,0xFB,0xFB,0xEF,0xFD,0xEF,0xBD,0xF7,0xEF,0xEF,
0xE5,0xFD,0xFD,0xEF,0xFD,0xEF,0xBD,0xEF,0xEF,0xEF,0xFD,0xFD,0xFD,0xEF,0xBD,0xEF,
0xBD,0xDF,0xEF,0xEF,0xFD,0xBD,0xBD,0xEF,0xBB,0xEF,0xDB,0xBD,0xEF,0xEF,0xDB,0xBB,
0xBB,0xEF,0xC7,0x83,0xE7,0x81,0xEF,0xEF,0xC7,0xC7,0xC7,0x83,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0x7F,0xFF,0xFF,0xFE,0xBF,0xFF,0xFF,0xFF,0xFF,0xFF,0x3F,0xEF,0xFF,0xEE,
0xBF,0x80,0xFF,0xFF,0xFF,0xFF,0x7F,0xEF,0xFF,0xEE,0xBF,0xBF,0xFF,0xFF,0xFF,0xFF,
0x77,0xEF,0x07,0xE0,0x81,0x9D,0xFF,0xE3,0xFF,0xFF,0x03,0xE0,0xFF,0xEE,0x7B,0xAD,
0xFF,0xDB,0xFF,0xFF,0x7F,0xDF,0xFF,0xDE,0xD7,0xAA,0xFF,0xBF,0xFF,0xFF,0x7F,0xDF,
0xFF,0xDE,0xDF,0xB3,0xFF,0xBF,0xFF,0xFF,0x77,0xBF,0x03,0x80,0xDF,0xB7,0xFF,0xA7,
0xFF,0xFF,0x03,0x60,0xBF,0xFB,0xDF,0xB3,0xFF,0x9B,0xFF,0xFF,0x7F,0xFF,0xBF,0xFB,
0xDF,0xAD,0xFF,0xBD,0xFF,0xCF,0x7F,0xFF,0xBF,0xFB,0x9F,0xAD,0xFF,0xBD,0xFF,0xB7,
0x7F,0xFF,0xBF,0xF7,0xAF,0x9F,0xFF,0xBD,0xFF,0xB7,0x7F,0xFF,0xBD,0xF7,0x77,0x81,
0x9F,0xDB,0xFF,0xCF,0x7B,0xFF,0xBD,0xEF,0xF1,0xFC,0x9F,0xE7,0xFF,0xFF,0x01,0x80,
};

void send595(unsigned char sendata)
  {
  if(disp_on)
  {
  CLK=0;//拉低时钟线
  SDA=sendata&0x01;//提取最低位
  CLK=1;//数据移入
  CLK=0;
  SDA=sendata&0x02;//提取最低位
  CLK=1;//数据移入
  CLK=0;
  SDA=sendata&0x04;//提取最低位
  CLK=1;//数据移入
  CLK=0;
  SDA=sendata&0x08;//提取最低位
  CLK=1;//数据移入
  CLK=0;
  SDA=sendata&0x10;//提取最低位
  CLK=1;//数据移入
  CLK=0;
  SDA=sendata&0x20;//提取最低位
  CLK=1;//数据移入
  CLK=0;
  SDA=sendata&0x40;//提取最低位
  CLK=1;//数据移入
  CLK=0;
  SDA=sendata&0x80;//提取最低位
  CLK=1;//数据移入
  CLK=0;
  }
  else
  {
  SDA=1;CLK=0;
  CLK=1;CLK=0;CLK=1;CLK=0;CLK=1;CLK=0;CLK=1;CLK=0;
  CLK=1;CLK=0;CLK=1;CLK=0;CLK=1;CLK=0;CLK=1;CLK=0;
  }
  }

void ledlinesend(unsigned int line)
  {
  unsigned char sdata;//临时数据
  UPD=0;//冻结595输出
  sdata=disp[line*10];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+1];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+2];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+3];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+4];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+5];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+6];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+7];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+8];//取对应行第一字节数据
  send595(sdata);
  sdata=disp[line*10+9];//取对应行第一字节数据
  send595(sdata);
  UPD=1;//595输出
  }
void LED_shuaxin(void)
  {
  hang++;
  OEN=1;//关闭显示(黑屏)
  ledlinesend((hang&0x0f)+pian_yi_liang);
  P3=linescan[hang&0x0f];
  OEN=0;//显示
  }
void Timer0(void) interrupt 1
  {
  TH0=(65536-2000)/256;
  TL0=(65536-2000)%256;
  zhou_ping++;//走屏速度延时变量
if(zhou_ping>=speed)//判断毫秒数是否到达预定速度
   {
   zhou_ping=0;//辅助变量复位
   if(gunping)//是否允许滚屏
     {
  pian_yi_liang=pian_yi_liang+16;//换一屏数据
  }
   if(pian_yi_liang>288)//判断内容是否显示完毕
     {
  pian_yi_liang=0;//返回头头开始
  }
   if(pause==0)//判断滚屏暂停按钮是否按下
     {
  gunping=!gunping;//启动、暂停
  }
   }
  LED_shuaxin();//每毫秒刷新一次LED屏
  }
void Timer1(void) interrupt 3 using 1
  {
  TH1=(65536-50000)/256;//置初值
  TL1=(65536-50000)%256;
  san_shuo++;//闪烁辅助变量
  if(san_shuo>=3&&disp_flash)//闪烁频率控制,是否闪烁
    {
san_shuo=0;//辅助变量清零
disp_on=!disp_on;//闪烁
}
  if(SPEEDUP==0&&speed>=200)//调整内容切换频率
{
speed-=10;//增加速度
}
  if(SPEEDDOWN==0&&speed<10000)//调整内容切换频率
{
speed+=10;//降低速度
}
  }

void init(void)
  {
  TMOD=0X11;//定时器方式1
  ET0=1;//打开T0中断
  ET1=1;//打开T1中断
  TR0=1;//T0运行
  TR1=1;//T1运行
  PX0=1;//T0优先
  EA=1;//总中断使能
  }
void main(void)
  {
  speed=2000;//开机设置内容更新频率
  disp=&LEDDOT;//置显示指针
  init();//初始化
  disp_on=1;//打开显示
  gunping=0;//允许切换内容
  while(1)
    {
   if(turnleft==0)//左转?
     {
  disp=&left;
  pian_yi_liang=0;
  disp_flash=1;
  gunping=0;
  while(turnleft==0);
  disp=&LEDDOT;
  disp_flash=0;
  gunping=1;
  disp_on=1;
  }
   if(turnright==0)//右转??
     {
  disp=&right;
  pian_yi_liang=0;
  disp_flash=1;
  gunping=0;
  while(turnright==0);
  disp=&LEDDOT;
  disp_flash=0;
  gunping=1;
  disp_on=1;
  }
   if(slow_down==0)//刹车??
     {
  disp=&STOP;
  pian_yi_liang=0;
  disp_flash=1;
  gunping=0;
  while(slow_down==0);
  disp=&LEDDOT;
  disp_flash=0;
  gunping=1;
  disp_on=1;
  }
}
  }

出0入0汤圆

发表于 2009-11-15 08:11:51 | 显示全部楼层
楼主是夜猫

出0入0汤圆

发表于 2009-11-15 08:52:00 | 显示全部楼层
没明白,为什么要一定频率才能亮?是为了抗低频干扰?

出0入59汤圆

发表于 2009-11-15 09:18:02 | 显示全部楼层
因为那个板是扫描电路,LED的电流比较大。如果扫描电路是工作的,那么LED是安全的;

但是单片机死机或其它原因导致扫描电路不扫描,长时间选中某一行来显示,那么这一行就有可能会烧坏

这个电路,就是保护LED用的

出0入0汤圆

发表于 2009-11-15 10:06:08 | 显示全部楼层
以前也想过怎么防止LED长时间亮在一行上,楼主这块板子很牛啊,既保护了LED,也没有增加太多成本

出0入0汤圆

发表于 2009-11-15 11:15:21 | 显示全部楼层
我亦有见过这种“伪双色”点阵屏,和有74HC04芯片的屏。谢谢 楼主的经验!

    “信号线有ABCD四根行选择线;DR、DG,分别是红点阵数据和绿点阵数据线;三根控制线,分别是CLK、STB、OE,和常见的屏是一样的”
    请问:这些“ABCD四根行选择线”、“DR、DG红点阵数据和绿点阵数据线”,和“三根控制线 CLK、STB、OE”,和51MCU的端口、具体是怎么样连接的?
    我在程序里没有“全部”看到 ——我对于编程是菜鸟,只能依葫芦画瓢!谢谢......

出0入0汤圆

发表于 2009-11-15 11:54:28 | 显示全部楼层
同样见到过 4148+7404的组合,  

当时写的程序刷新太慢,直接接了使能.

出0入0汤圆

 楼主| 发表于 2009-11-15 12:15:31 | 显示全部楼层
sbit STB= P1^4;//更新允许.上跳变更新输出
sbit CLK = P1^5;//移位时钟,上升沿移动数据
sbit DR= P1^6;//数据线,低电平点亮LED
sbit OE= P1^7;//输出允许控制,低电平允许显示

ABCD 接P3口低四位。

出0入168汤圆

发表于 2009-11-15 12:46:45 | 显示全部楼层
原来74HC04在这里是起这个作用呀,谁方便的话把电路画出来分析下。

出0入0汤圆

发表于 2009-11-15 12:52:40 | 显示全部楼层

(原文件名:11.jpg)

出0入0汤圆

发表于 2009-11-15 12:53:26 | 显示全部楼层
我看到的是这样子的.

出0入0汤圆

发表于 2009-11-15 22:36:46 | 显示全部楼层
十年前在LED显示屏行业作技术,当时的显示屏经常烧坏行管(行扫描信号有问题时,16个行管有一个长时间导通,导致行管烧坏)。小小的技术改进解决了这个问题,当时偶束手无策,只能经常去更换行管。

建议本帖置酷!

出0入59汤圆

发表于 2009-11-16 11:13:03 | 显示全部楼层
74hc123 也可以

出0入0汤圆

发表于 2009-11-16 22:18:54 | 显示全部楼层
对点阵不还在学习中,不知楼主讲的是什么!

出0入0汤圆

发表于 2009-11-17 08:57:32 | 显示全部楼层
先标记再说

出0入0汤圆

发表于 2009-11-17 09:13:16 | 显示全部楼层
楼主可是在玉石街附近买的?

出0入0汤圆

发表于 2009-11-17 16:24:32 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-11-17 19:44:49 | 显示全部楼层
有点像倍压电路啊

出0入9汤圆

发表于 2009-11-17 21:15:14 | 显示全部楼层
看不懂,但是先留个记号

出0入0汤圆

发表于 2009-11-18 10:09:21 | 显示全部楼层
先留个记号

出0入0汤圆

发表于 2009-11-18 21:18:10 | 显示全部楼层
学习

出0入0汤圆

发表于 2009-11-20 10:10:19 | 显示全部楼层
这种电路好,mark

出0入0汤圆

发表于 2009-11-21 12:48:00 | 显示全部楼层
楼主牛银!

出0入0汤圆

发表于 2009-11-21 17:44:01 | 显示全部楼层
记到起

出0入0汤圆

发表于 2009-11-30 20:36:53 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-1 15:40:35 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-8 15:04:41 | 显示全部楼层
记号

出0入0汤圆

发表于 2009-12-8 15:32:52 | 显示全部楼层
这个74HC04的附加电路,在05年我呆过的地方见到的板子都有加了。作用 【3楼】 polarbear 枫叶 讲得很详细。

出0入0汤圆

发表于 2009-12-9 09:43:14 | 显示全部楼层
MARK

出0入0汤圆

发表于 2009-12-9 10:39:33 | 显示全部楼层
我也看不懂,以后再来看一次~~

出0入0汤圆

发表于 2009-12-9 14:45:02 | 显示全部楼层
谢谢了,同时做个记号。

出0入0汤圆

发表于 2009-12-20 20:17:42 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-23 06:15:28 | 显示全部楼层
我有个P10的LED屏,和楼主说的差不多,不过是16*32的如果用你的程序该怎样修改呀, 谢谢了!!!   我的也是74HC245+74HC04+74HC138+74HC595     行用138列用595我用楼主的程序试了下满屏全亮并且闪烁??有高手帮帮我吗?我是程序菜鸟~~~~

出0入0汤圆

发表于 2009-12-23 08:04:26 | 显示全部楼层
LZ强~~

出0入0汤圆

发表于 2009-12-23 15:34:07 | 显示全部楼层
请问楼主CODE LEDDOT[]={ }这个编码的具体作用是什么啊?你那个编码好长,内存显示为194% 52已经吃不消了呀!!!为什么我的屏16*32的只看到满屏的闪烁看不到一个字?我的只有A、B两根行线

出0入0汤圆

发表于 2009-12-24 23:16:48 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-25 12:28:45 | 显示全部楼层
强,我佩服

出0入0汤圆

发表于 2009-12-26 20:37:23 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-27 18:34:29 | 显示全部楼层
回复【37楼】xingcai
-----------------------------------------------------------------------

mark  是什意思?

出0入0汤圆

 楼主| 发表于 2009-12-28 11:58:30 | 显示全部楼层
chengeiis  要看你的接口是怎么样的。

CODE LEDDOT[]={ }是点阵数据,放到程序存储器中。

出0入0汤圆

发表于 2009-12-28 13:56:02 | 显示全部楼层
mark

出0入0汤圆

发表于 2009-12-28 14:03:10 | 显示全部楼层
【9楼】 litchiate 草真多
用LA经过处理后接到138输出使能,那么EN信号可以不用到了吗?

出0入0汤圆

发表于 2009-12-29 13:20:08 | 显示全部楼层
好,支持一下.

出0入0汤圆

发表于 2009-12-29 13:30:08 | 显示全部楼层
mark!

出0入0汤圆

发表于 2010-1-4 22:04:59 | 显示全部楼层
大家谁知道那个P10板子上的74HC04起什么作用啊?和楼主这个好像不一样的接法,谁研究过这个?

出0入0汤圆

发表于 2010-1-4 23:10:27 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-1-10 11:29:55 | 显示全部楼层

出0入0汤圆

发表于 2010-1-10 11:41:31 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-1-12 00:49:02 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-1-22 02:06:36 | 显示全部楼层
mark 一下

出0入0汤圆

发表于 2010-1-22 07:41:53 | 显示全部楼层
不错,点阵还没这样玩过,标记下

出0入0汤圆

发表于 2010-1-22 10:35:04 | 显示全部楼层
留下记号。。楼主很牛。

出0入0汤圆

发表于 2010-1-26 00:07:50 | 显示全部楼层
防止行常亮

出0入0汤圆

发表于 2010-1-26 00:41:35 | 显示全部楼层
mark~

出0入0汤圆

发表于 2010-2-28 22:43:44 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-3-1 07:57:40 | 显示全部楼层
事情理解具有两面性,如果你这样想是不是觉得心理舒服许多呢
我花两个小时时间明白了一个正理——不要过于相信经验!

出0入0汤圆

发表于 2010-3-2 14:33:29 | 显示全部楼层
似乎不会闪烁?

出0入0汤圆

发表于 2010-3-3 22:42:57 | 显示全部楼层
记号

出0入4汤圆

发表于 2010-4-18 21:16:21 | 显示全部楼层
哪位把9楼的电路分析一下

出0入0汤圆

发表于 2010-4-27 09:45:54 | 显示全部楼层
回复【楼主位】oufuqiang 欧福强
-----------------------------------------------------------------------

楼主可否把你的74HC04经典参数提供一些。俺也DIY一个测试下。

出0入0汤圆

 楼主| 发表于 2010-4-27 14:53:54 | 显示全部楼层
目前出差,回去了绘制一下。

出0入0汤圆

发表于 2010-4-28 20:24:26 | 显示全部楼层
强,我佩服

出0入0汤圆

发表于 2010-4-28 21:39:17 | 显示全部楼层
回复【9楼】litchiate 草真多
-----------------------------------------------------------------------
能把电路的元件参数标出吗?能简单讲讲74HC04的外围电路的工作原理吗?
想学习下,但是没看懂

出0入22汤圆

发表于 2010-6-2 10:33:38 | 显示全部楼层
3楼正解~~注意7004外面的那几个贴片电容,关键就在那地方

出0入0汤圆

发表于 2010-6-4 18:52:06 | 显示全部楼层
楼主 点阵屏是在屏山大道 那里买的吗

出0入0汤圆

发表于 2010-6-5 11:38:49 | 显示全部楼层
不懂,先留名

出0入0汤圆

 楼主| 发表于 2010-6-7 11:11:27 | 显示全部楼层
回复【64楼】liaohe
楼主 点阵屏是在屏山大道 那里买的吗
-----------------------------------------------------------------------

在柳邕路上的旧货市场买的啊。

出0入0汤圆

发表于 2010-6-9 10:57:44 | 显示全部楼层
做个记号

出0入0汤圆

发表于 2010-6-16 13:32:14 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-6-16 16:06:42 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-6-22 17:18:37 | 显示全部楼层
下次回柳州也去找找看

出0入0汤圆

发表于 2010-7-16 10:39:28 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-7-16 21:52:15 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-7-16 23:57:24 | 显示全部楼层
学习了

出0入0汤圆

发表于 2010-7-17 09:36:59 | 显示全部楼层
好东西呀,可以用在我的LED屏上,谢谢。
mark

出0入0汤圆

发表于 2010-7-17 09:40:13 | 显示全部楼层
回复【59楼】wangqh1983
回复【楼主位】oufuqiang 欧福强
-----------------------------------------------------------------------
楼主可否把你的74hc04经典参数提供一些。俺也diy一个测试下。
-----------------------------------------------------------------------

同样期待参数中。。。

出0入0汤圆

发表于 2010-7-19 19:53:23 | 显示全部楼层
最近在学习,记下

出0入0汤圆

发表于 2010-7-23 17:18:22 | 显示全部楼层
MARK,谢谢楼主!

出0入0汤圆

发表于 2010-7-23 19:17:34 | 显示全部楼层
呵呵有意思MARK

出0入0汤圆

发表于 2010-7-26 16:59:32 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-7-29 19:47:56 | 显示全部楼层
mark

出0入4汤圆

发表于 2010-8-1 02:30:36 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-8-11 21:28:55 | 显示全部楼层
飘过

出0入0汤圆

发表于 2010-8-11 23:52:02 | 显示全部楼层
学习,mark

出0入0汤圆

发表于 2010-8-12 09:01:10 | 显示全部楼层
看不懂,但是先留个记号

出0入0汤圆

发表于 2010-8-13 15:55:21 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-8-23 10:33:57 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-8-23 11:29:14 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-8-24 11:42:33 | 显示全部楼层
好东西,收藏

出0入0汤圆

发表于 2010-9-2 02:16:05 | 显示全部楼层
MAK

出0入0汤圆

发表于 2010-9-2 05:18:33 | 显示全部楼层
好东西,收藏

出0入0汤圆

发表于 2010-9-2 16:28:48 | 显示全部楼层
串的那个电容起了隔直的作用,当大于一定频率后,有一个肪动电流流过经后面并的一个电容滤波,只要这个平均幅值大于7404的门限,输出稳定拉低

出0入0汤圆

发表于 2010-9-2 17:07:08 | 显示全部楼层
感谢楼主,.讲的真详细.

出0入0汤圆

发表于 2010-9-9 22:19:24 | 显示全部楼层
好不错  学习 了

出0入0汤圆

发表于 2010-9-15 15:51:39 | 显示全部楼层
强力学习~~

出0入0汤圆

发表于 2010-9-30 23:30:24 | 显示全部楼层
记号

出0入0汤圆

发表于 2010-10-1 23:56:07 | 显示全部楼层
有意思,变相的看门狗

出0入0汤圆

发表于 2010-10-5 16:33:07 | 显示全部楼层
回复【楼主位】oufuqiang 欧福强
-----------------------------------------------------------------------

我也有两块,看到后明白了,非常谢谢楼主

出50入0汤圆

发表于 2010-10-7 23:04:35 | 显示全部楼层
mark,备用

出0入0汤圆

发表于 2010-10-10 11:32:05 | 显示全部楼层
mark
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-29 22:00

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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