LED点阵扫描显示子程序
时间:10-02
整理:3721RD
点击:
void Disp(uchar k)
{
uchar row ,i,j,m;
uint j;
for(j=0;j<5;j++)
{
row=0x08;
for(i=0;i<16;i++)
{
St_cp=0; //595锁存端无效,这是什么意思?为什么要使锁存端无效?
for(m=6;m>0:m--)
{
g=2*i+2*k+m*32-32;//6组16x16数据发送循环,g为什么要这么计算?
Send(TAB[g+1]);
Send(TAB[g]);
}
P1=row;//为什么要等6组数据发送完后,才使对应的行有效?
row++;
St_cp=1;//为什么要在行号加一后锁存端变高电平?
Delay(1);
}
}
}
{
uchar row ,i,j,m;
uint j;
for(j=0;j<5;j++)
{
row=0x08;
for(i=0;i<16;i++)
{
St_cp=0; //595锁存端无效,这是什么意思?为什么要使锁存端无效?
for(m=6;m>0:m--)
{
g=2*i+2*k+m*32-32;//6组16x16数据发送循环,g为什么要这么计算?
Send(TAB[g+1]);
Send(TAB[g]);
}
P1=row;//为什么要等6组数据发送完后,才使对应的行有效?
row++;
St_cp=1;//为什么要在行号加一后锁存端变高电平?
Delay(1);
}
}
}