📄 lattice.c
字号:
#include <at89x52.h>
#define uchar unsigned char
#define uint unsigned int
uchar tabdisplay[]={0x81,0x42,0x24,0x18,0x18,0x24,0x42,0x81};
uchar tabscan[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
sbit LED_CLK1=P3^1; //LED时钟线1
sbit LED_DAT1=P3^0; //LED数据线1
sbit LED_CLK2=P3^2; //LED时钟线2
sbit LED_DAT2=P3^3; //LED数据线2
void delay_ms(unsigned char ms ) // 延时毫秒
{
unsigned short i;
while (ms--)
{
for(i=0;i!=125;i++);
}
}
void display_init()
{
char i,j;
for(i=0;i<8;i++)
{
for(j=0;j<8;j++)
{
LED_CLK1=0;
LED_DAT1=0;
LED_CLK1=1;
}
}
}
main()
{
char i,j,h,mask1,mask2;
display_init();//显示初始化
delay_ms(2000);
while(1)
{
for(i=0;i<8;i++)
{
mask1=0x01;
mask2=0x01;
for(j=0;j<8;j++)
{
LED_CLK1=0;
LED_DAT1=( (tabdisplay[i]) & mask1);//tabdisplay[i]<<=1;LED_DAT1=CY;
mask1<<=1;
LED_CLK1=1; //上升沿移位
}
for(h=0;h<8;h++)
{
LED_CLK2=0;
LED_DAT2=( (tabscan[i]) & mask2); //tabdisplay[i]<<=1;LED_DAT1=CY;
mask2<<=1;
LED_CLK2=1; //上升沿移位
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -