⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lce128642.c

📁 c51 led菜单 程序 功能 上下选择菜单
💻 C
字号:
#include <REG51.h>
#include<math.h>
#include<INTRINS.H>

#define Uchar unsigned char
#define Uint  unsigned int

#define  UP   2
#define  DOWN 4
#define  ENTER 8
#define  BACK  1 //特殊按键的编码号
/***********液晶显示器接口引脚定义***************/

sbit	Elcm=	   P1^0;
sbit	Rwlcm=	P1^1;
sbit	Dilcm=	P1^2;	
sbit	CS2LCM=	P1^3;
sbit	CS1LCM=	P1^4;//
	/*这个连接只是做实验的临时接法。*/
sfr Datalcm=0xA0;//p2 yin jiao

#define KEYP ((P3>>4)&0X0F)

/******************数组列表*********************/
/********************************/
//定义字符串数组		*/
/********************************/
Uchar code MENU[][5]={"menu0","menu1","menu2","menu3","menu4","menu5","menu6"};
Uchar code P1C1[];
Uchar code P1C2[]="addata";
Uchar code P1C3[]="key  ";
Uchar code P2C1[]="menu4";
Uchar code unit1[]="non";
Uchar code unit2[]="mv ";
Uchar code unit3[]="mv ";
Uchar code unit4[]="mv ";

Uchar  disdata0[7]="12345";
Uchar  disdata1[7]="12345";
Uchar  disad[7];
Uchar  adbuff[2];

int  shuju0=000000;
int  shuju1;
int  adshuju;
//字符库和液晶驱动
#include "ziku.h"//字库为纵向8点下位高
#include "lcddir.h"
#include "lcdtupian.h"


void Delay200ms(void)
 {
  unsigned char i,j,k;
 for(i=5;i>0;i--)
 for(j=132;j>0;j--)
 for(k=150;k>0;k--);
 }
   void Delay1s(void)
 {
  unsigned char h,i,j,k;
 for(h=5;h>0;h--)
 for(i=4;i>0;i--)
 for(j=116;j>0;j--)
 for(k=214;k>0;k--);
 } 
 void delay1s(void)
 {
  unsigned char h,i,j,k;
 for(h=5;h>0;h--)
 for(i=4;i>0;i--)
 for(j=116;j>0;j--)
 for(k=214;k>0;k--);
 } 

void int2str(char *ss,int ii)

 {  
         ss[5]=ii%10+48;
         ss[4]=(ii/10)%10+48;
         ss[3]=(ii/100)%10+48;
         ss[2]='.';
         ss[1]=(ii/1000)%10+48;
         ss[0]=(ii/10000)%10+48;
        
     }



//初始化串行口
void uartcsh()//buad 1200
	{
	SM0=0;
	SM1=1;
	REN=1;
	TI=0;
	RI=0;
	PCON=0;
	TH1=0x9c;
	TL1=0X9c;
	TMOD=0X20;
	EA=1;
	ET1=0;
	ES=1;
	TR1=1;
	RI=0;
	TI=0;
	}






Uchar Getkey(void)
    { Uchar temp9;
	   temp9=0;
 	   temp9=KEYP;
      if(temp9!=0)
	     { while(KEYP!=0);
	      return(temp9);
          }
		else return(0);
		}
/*		
void Keyfun(void)
    { Uchar temp8;
 	   temp8=Getkey();
        switch(temp8)
		    {case  UP :
}*/
	 //if(shuju1!=0)
//    if(temp9!=0)
	  //{ while(KEYP!=0);
	    //int2str(disdata1,temp9);
	    //Display(4,50,disdata1,6);
     // }
	//	else return(0);
	//	}


/********************************/
/* 演示主程序			*/
/********************************/

void main(void)

{
   int temp_ad;
//   Uchar  x;
	Uchar line1=1;
	Uchar line2=2;
	Uchar line3=3;

//  unsigned char tt;
	col=0;
	row=0;
	Delay(40);		/*延时大约40Ms,等待外设准备好	*/
	Lcminit();/*液晶模块初始化,包括全屏幕清屏*/
	uartcsh();
	Display(0,0,MENU[0],5);
   Display(2,0,MENU[line1],5);
    Display(4,0,MENU[line2],5);
	Display(6,0,MENU[line3],5);

    Display(0,104,unit1,3);
	Display(2,104,unit2,3);
	Display(4,104,unit3,3);
	Display(6,104,unit4,3);
   int2str(disdata0,shuju0);
   Display(6,50,disdata0,6);
	while(1)
	{
   temp_ad=adbuff[1];
	adshuju=(temp_ad<<7)+adbuff[0];
	int2str(disad,adshuju);
	Display(2,50,disad,6);
	
}
}

⌨️ 快捷键说明

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