|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
8x8动态点阵程序
#include<reg51.h>
#include<intrins.h>
int code table[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x76,0x76,0x00,0xe7,0xe7,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff}; //按列分解,数组长度位21位
int seg[8]; //定义一个新的八位数组,用来存放变化的8位P3值
int i,j,a,b,n,k;
void delay()
{
for(i=5;i>0;i--)
for(j=110;j>0;j--);
}
void main()
{
while(1)
{
for(n=0;n<14;n++) //table最多可以取到table[20],所以a+n<21
{
for(k=0;k<10;k++) //当前状态循环点亮10次,让显示效果更稳定
{
for(a=0;a<8;a++) //填充seg[a]当前值
{
seg[a]=table[a+n];
}
//以动制静显示当前状态
P3=0x01;
P2=seg[0];
delay();
for(b=1;b<8;b++)
{
P3=_crol_(P3,1);
P2=seg;
delay();
}
}
}
}
} |
|