题目要求:
显示心形图形,并不断滚动
仿真电路图:
仿真效果:
C语言程序代码:
#include<reg51.h>
#include<intrins.h>
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);
}
}
}
}
}