led.c

来自「利用单片机AT89S51与adc0809设计一个数字电压表」· C语言 代码 · 共 78 行

C
78
字号
/**************************************************************************
By ZhuTao
***************************************************************************/

#include "adc0809.c"
#define LED_Data P0
#define A 10
#define U 11
sbit  LED1=P2^0;
sbit  LED2=P2^1;
sbit  LED3=P2^2;
sbit  LED4=P2^3;
sbit  dp=P1^7;
#define LED_slect  P2

static uchar dispdata[4];


void decodenum(float adv,uchar chn)
{
  uint temp;
  
  temp=(uint)(adv*100);
  
  dispdata[0]=temp/100;
  dispdata[1]=temp/10%10;
  dispdata[2]=temp%10;
  dispdata[3]=chn;
}






void select(uchar LED)
{
   switch(LED)
      {
         case 0:LED1=0;break;
         case 1:LED2=0;break;
         case 2:LED3=0;break;
         case 3:LED4=0;break;
         default: LED_slect=0xff;
       }
}

void  dispone(uchar LED,bit ifpoint,uchar number)   //,number 0--9
{
       
      
      
	   select(LED);
      if(ifpoint)
	  LED_Data=num[number]|0x80;
	  else
	   LED_Data=num[number];
      

	  delayus(200);
	  LED_slect=0xff;
	  
} 


void disp()
{
   uchar i;
   bit point;
  for(i=0;i<4;i++)
   {
     if(i==0)
      point=1;
     else
      point=0;
     dispone(i,point,dispdata[i]);
    }
} 

⌨️ 快捷键说明

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