初级会员
主题
回帖0
积分103
阅读权限10
注册时间2012-6-17
最后登录1970-1-1
在线时间 小时
|
本人最近入手一块点阵屏,是245+595+4514驱动的,死活点不亮,求教啊!!!4514两片并联行驱 A,B,C,D E1 E2 ,245+595列驱,下面附上程序 :
#include<reg52.h>
#include<intrins.h>
sbit R1=P2^0;
sbit CLK=P2^1;
sbit STB=P2^2;
sbit R2=P2^3;
sbit E1=P3^0;
sbit E2=P3^1;
char code table[]={
0xFF,0xFB,0xFB,0x01,0x81,0x7B,0xBB,0x7B,0xBB,0x7B,0xBB,0x03,0x83,0x7B,0xBB,0x7B,
0xBB,0x7B,0xBB,0x03,0x83,0x7B,0xBB,0x7B,0xFE,0xFB,0xFE,0xFB,0xFD,0xEB,0xFB,0xF7
};
void delay(int z)
{
int x,y;
for(x=0;x<z;x++)
for(y=0;y<110;y++);
}
void writebyte(char dat)
{
char i;
for(i=0;i<8;i++)
{
dat=dat<<1;
R1=CY;
CLK=0;
// _nop_();
// _nop_();
CLK=1;
}
}
void outbyte(void)
{
STB=0;
_nop_();
_nop_();
STB=1;
_nop_();
_nop_();
_nop_();
STB=0;
}
void main()
{ int num;
E1=0;
E2=0;
while(1)
{
for(num=0;num<16;num++)
{
writebyte(table[2*num]);
writebyte(table[2*num+1]);
P1=num;
outbyte();
delay(2);
}
}
} |
|