利用74HC138和74HC595驱动16*16点阵完成上下左右滚动的功能的51单片机程序 100
2个回答
推荐于2017-05-17
展开全部
这是16X16的,自己一改就好了
//74HC595练习程序
//串入并出实现16流水灯效果
//2009.12.28
#includereg52.h
sbit shcp=P2^0; //数据在上升沿进入移位寄存正拿晌器
sbit date1=P2^1; //串行数据输敏中入端
sbit clock=P2^2; //上升沿举锋时将数据输出到并行端口
unsigned char tab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
unsigned char tab1[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
void delay(unsigned int delay)
{
unsigned char i;
for(;delay0;delay--)
for(i=0;i125;i++);
}
void send_data(unsigned char date) //发送数据
{
unsigned char i;
for(i=0;i8;i++) //把每一位数据移入寄存器
{
shcp=0;
date=date1;
date1=CY;
shcp=1;
delay(20);
}
}
void main()
{
unsigned char k;
for(k=0;k16;k++)
{
send_data(tab[k]);
send_data(tab1[k]);
{clock=0;clock=1;};
}
}
//74HC595练习程序
//串入并出实现16流水灯效果
//2009.12.28
#includereg52.h
sbit shcp=P2^0; //数据在上升沿进入移位寄存正拿晌器
sbit date1=P2^1; //串行数据输敏中入端
sbit clock=P2^2; //上升沿举锋时将数据输出到并行端口
unsigned char tab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
unsigned char tab1[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
void delay(unsigned int delay)
{
unsigned char i;
for(;delay0;delay--)
for(i=0;i125;i++);
}
void send_data(unsigned char date) //发送数据
{
unsigned char i;
for(i=0;i8;i++) //把每一位数据移入寄存器
{
shcp=0;
date=date1;
date1=CY;
shcp=1;
delay(20);
}
}
void main()
{
unsigned char k;
for(k=0;k16;k++)
{
send_data(tab[k]);
send_data(tab1[k]);
{clock=0;clock=1;};
}
}
更多追问追答
追问
好像不是我要的
追答
我再查查
广州晶晟电子
2023-10-12 广告
2023-10-12 广告
OSC有源晶振是一种电子元件,它需要接电源才能工作,一般有四个引脚,其中有两个是电源输入引脚,有正负极之分。它是石英晶体震荡器的简称,英文名为Crystal。石英晶体震荡器的应用范围非常广,包括通讯系统、时钟电路、显卡、网卡、主板等配件的各...
点击进入详情页
本回答由广州晶晟电子提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询