单片机控制LED点阵显示心形图形并滚动

题目要求:

显示心形图形,并不断滚动

仿真电路图:
单片机控制LED点阵显示心形图形并滚动_第1张图片
仿真效果:
单片机控制LED点阵显示心形图形并滚动_第2张图片
C语言程序代码:

#include
#include
unsigned char  ldis[8] = {0xFF,0xF3,0xE1,0xC1,0x83,0xC1,0xE1,0xF3};
unsigned char  hdis[8] = {0x0,0x66,0x99,0x81,0x42,0x24,0x18,0x0};

void delay(unsigned char i)	// 
{
	unsigned char j,k;
	for(j=i;j>0;j--)
		for(k=110;k>0;k--);	
}    

void main()	//???
{ 
    unsigned char i,j,k,temp;
	while(1)
	{ 
		for(j=0;j<8;j++) 
		{
			for(k=0;k<50;k++)//控制滚动速度,数字越小,滚动越快
			{	temp=0x01;
	    		for (i = 0; i < 8; i++)
				{
					P2 =temp;
					P3 =~ hdis[(i+j)%8];//滚动实现的关键
					temp=_crol_(temp,1);//左移动函数
		    		delay(2);
	  			} 						
			}
		}
	}
}

你可能感兴趣的:(单片机控制LED点阵显示心形图形并滚动)