8*8点阵心形显示

/*-----------------------------------------------
  内容:和数码管显示方式相同,这里使用P0口和P2口
------------------------------------------------*/
#include //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义

unsigned char const dofly[]={0x00,0x6C,0x92,0x82,0x44,0x28,0x10,0x00};// 心的形状
unsigned char code seg[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};   //分别对应相应的段亮
/*------------------------------------------------
                    延时程序
------------------------------------------------*/
void delay(unsigned int cnt)
{
 while(--cnt);
}
/*------------------------------------------------
                 主程序
------------------------------------------------*/
main()
{
 unsigned char i;

 while(1)
      {
 
       P0=dofly[i];//取显示数据
       P2=seg[i];  //取位码
       delay(300); //扫描间隙延时,时间太长会造成闪烁,太短会重影
       i++;
       if(8==i)    
         i=0;
      }
}

你可能感兴趣的:(单片机)