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

📄 lcd.c

📁 12864
💻 C
字号:
#include <REGX51.H>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include "lcd.h"
#include "zimo.h"
#include "comm.h"



/*-------------------------- 开机信息显示------------------------*/
void StartMsg(void)
 {
  Clr_Scr();         // 先清屏 //
  CS2=1;CS1=0;
  hz_disp16(0,32,huan);      //  欢
  delay(2000);
  hz_disp16(0,48,ying);      //  迎
  delay(2000);
  CS2=0;CS1=1;
  hz_disp16(0,0,shi1);       //  使
  delay(2000);
  hz_disp16(0,16,yong);      //  用
  delay(2000);
  CS2=1;CS1=0;
  sz_disp16(2,32,sz5);      //  51
  sz_disp16(2,40,sz1);
  delay(2000);
  hz_disp16(2,48,dan);        //单  
  delay(2000);
  CS2=0;CS1=1;
  hz_disp16(2,0,pian);        //  片
  delay(2000);
  hz_disp16(2,16,ji);        //  机
  delay(2000);
  CS2=1;CS1=0;
  hz_disp16(5,16,zhi);       //  制
  delay(2000);
  hz_disp16(5,32,zuo);       //  作
  delay(2000);
  hz_disp16(5,48,maohao);    //  :
  delay(2000);
  CS2=0;CS1=1;
  hz_disp16(5,0,yang);       //  杨
  delay(2000);
  hz_disp16(5,16,fei);      //  飞
  delay(2000);
  hz_disp16(5,32,gantanhao);     //  !
  delay(2000);
 }



/*-----------------------------4*4键盘扫描程序------------------------*/
unsigned char kbscan()

{
  unsigned char sccode,recode;
P1=0xf0;								/*发全"0"行扫描码,列线输入*/
if((P1&0xf0)!=0xf0)						/*若有键按下*/
{
delay(1000);    						/*延时去抖动*/
if((P1&0xf0)!=0xf0)
{
sccode=0xfe;					/*逐行扫描初值*/
while((sccode&0x10)!=0)
{
P1=sccode;					/*输出行扫描码*/
if((P1&0xf0)!=0xf0)    		/*本行有键按下*/
{
recode=(P1&0xf0)|0x0f;
return((~sccode)+(~recode)); /*返回特征字节码*/
}
else sccode=(sccode<<1)|0x01;	/*行扫描码左移一位*/
}
}
}
return(0);
}


/*------------------------------主函数---------------------------------*/

main()
 {
 unsigned char key;
  init_lcd();
  Disp_Img(FirstPage);
  delay(10000);
  StartMsg();
  delay(10000);
  init_serialcomm(); //初始化串口 
  send_string_com("welcome to aphero!",20);

  while(1){
    key=kbscan();
    if(key!=0){       // 如果key不为0表示有键被按下//
       Clr_Scr();         // 先清屏 //
       switch(key)  
            { 
                case 0x11: // 按键为1//
					          CS2=1;CS1=0;
                         sz_disp16(0,0,sz1);
                         break;    
                case 0x21: // 按键为2//
					          CS2=0;CS1=1;
                         sz_disp16(0,0,sz2);
                         break; 
                case 0x41: // 按键为3//
					          CS2=1;CS1=0;
                         sz_disp16(1,0,sz3);
                         break; 
                case 0x81: // 按键为4//
					          CS2=0;CS1=1;
                         sz_disp16(2,0,sz4);
                         break; 
                case 0x12: // 按键为5//
					          CS2=1;CS1=0;
                         sz_disp16(2,0,sz5); 
                         break; 
                case 0x22: // 按键为6//
					          CS2=0;CS1=1;
                         sz_disp16(3,0,sz6);
                         break; 
                case 0x42: // 按键为7//
					          CS2=1;CS1=0;
                         sz_disp16(4,0,sz7);
                         break; 
                case 0x82: // 按键为8//
					          CS2=0;CS1=1;
                         sz_disp16(5,0,sz8); 
                         break; 
                case 0x14: // 按键为9//
					          CS2=1;CS1=0;
                         sz_disp16(6,0,sz9); 
                         break; 
                case 0x24: // 按键为10//
					          CS2=0;CS1=1;
                         sz_disp16(6,0,sz1);
						 sz_disp16(6,8,sz0);
                         break; 
                case 0x44: // 按键为11//
					          CS2=1;CS1=0;
                         sz_disp16(6,0,sz1);
 						 sz_disp16(6,8,sz1);
                         break; 
                case 0x84: // 按键为12//
					          CS2=0;CS1=1;
                         sz_disp16(0,0,sz1); 
						 sz_disp16(0,8,sz2);
                         break; 
                case 0x18: // 按键为13//
					          CS2=1;CS1=0;
                         sz_disp16(0,0,sz1);
                         sz_disp16(0,8,sz3);
                         break; 
                case 0x28: // 按键为14//
					          CS2=0;CS1=1;
                         sz_disp16(0,0,sz1); 
						 sz_disp16(0,8,sz4);
                         break; 
                case 0x48: // 按键为15//
					          CS2=1;CS1=0;
                         sz_disp16(0,0,sz1);
 						 sz_disp16(0,8,sz5);
                         break; 
                case 0x88: // 按键为16//
					          CS2=0;CS1=1;
                         sz_disp16(0,0,sz1);
						 sz_disp16(0,8,sz6);
                         break; 

               } 
           }
  }
 }

⌨️ 快捷键说明

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