text1.c

来自「LCD1602.rar」· C语言 代码 · 共 90 行

C
90
字号
#include<absacc.h>
#include<reg51.h>
#define uchar unsigned char
#define uint  unsigned int
#define IN0 XBYTE[0x7ff8]
#define IN1 XBYTE[0x7ff9]
#define IN2 XBYTE[0x7ffa]
#define IN3 XBYTE[0x7ffB]
#define IN4 XBYTE[0x7ffC]
#define IN5 XBYTE[0x7ffD]
#define IN6 XBYTE[0x7ffE]
#define IN7 XBYTE[0x7ffF]


sbit p20=P2^0;
sbit p21=P2^1;
sbit p22=P2^2;

unsigned char m=0;
uchar led[4]={0};

sbit EOC=P3^2;	
uchar xdata *addr=0x7ff8;

uchar code  tv[]={0xfe,0xfd,0xfb,0xf7};
uchar code  duanxian[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void ledxianshi(void);
 void delay(uchar j);           
 
 uchar  b[8]=0;

main()
{ uchar i;
 
 for(i=0;i<8;i++)
 {
   *(addr+i)=i;
   delay(120);
   b[i]=*(addr+i);   
   delay(120);
  }
   while(1)
  { 

   ledxianshi();
    
  }
 }


 void delay(uchar j)                      //延时程序
{
  uint i;
  for(i=0;i<j;i++)
  for(i=0;i<150;i++);
}


void ledxianshi(void)       //显示模块
{
   unsigned char i,temp;
   unsigned char a[8],e[8],c[8];

   for(i=0;i<8;i++)
   {
      temp=b[i];
	  a[i]=temp/100;
	  e[i]=(temp%100)/10;
	  c[i]=(temp%100)%10;
	 for(i=0;i<8;i++) 
{	  P1= duanxian[a[i]];
	  p22=0;
	  delay(5);
	  p22=1;
	  P1=duanxian[e[i]];
	  p21=0;
	  delay(5);
	  p21=1;
	  P1=duanxian[c[i]];
	  p20=0;
	  delay(5);
	  p20=1;
   	 delay(80);
  } }

}
  

    

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?