找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 12464|回復(fù): 1
收起左側(cè)

用8x8點(diǎn)陣LED屏顯示的小程序

[復(fù)制鏈接]
ID:77707 發(fā)表于 2016-12-11 15:59 | 顯示全部樓層 |閱讀模式
用8x8點(diǎn)陣屏,顯示“I LOVE YOU 生日快樂(lè)”,使用STC  89C52RD   P1口和P0 口,有興趣的可以試試。
#include <reg51.h>
unsigned char code tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsigned char code digittab[][8]={
{0xff,0xbf,0xbd,0xbd,0x81,0xbd,0xbd,0xff},       //I
{0xff,0xf3,0xed,0xdd,0xbb,0xdd,0xed,0xf3},       //?  
{0xff,0xff,0x81,0x7f,0x7f,0x7f,0x81,0xff},          //U
{0xbf,0xaf,0xab,0xab,0x80,0xab,0xa8,0xa7},       //生
{0xff,0xff,0x00,0x76,0x76,0x76,0x00,0xff},       //日
{0xbf,0xa3,0xc0,0xab,0xbf,0xcf,0x00,0xf3},       //快
{0xb7,0xd6,0xa5,0x05,0xe5,0xd1,0xbf,0xff},       //樂(lè)
};
unsigned int timecount;
unsigned char cnta;
unsigned char cntb;
void main(void)
{
  TMOD=0x01;
  TH0=(65536-3000)/256;
  TL0=(65536-3000)%256;
  TR0=1;
  ET0=1;
  EA=1;
  while(1)
    {;
         }
}
void t0(void) interrupt 1 using 0
{
  TH0=(65536-2000)/256;
  TL0=(65536-2000)%256;
  P1=0XFF; //消除顯示重影問(wèn)題  
  P0=~digittab[cntb][cnta];
  P1=~(0x01<<cnta);

  cnta++;
  if(cnta==8)
    {
      cnta=0;
    }
  timecount++;
  if(timecount==500)
    {
      timecount=0;
      cntb++;
      if(cntb==7)
        {
          cntb=0;
        }
    }
}

回復(fù)

使用道具 舉報(bào)

ID:430234 發(fā)表于 2018-12-4 07:35 | 顯示全部樓層
前面的tab有什么特別的作用嗎?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表