˜Ëî}: êP(gu¨¡n)ÓÚ1602LCD²»ÄÜÓ‹”µ(sh¨´) [´òÓ¡±¾í“]

×÷Õß: ZؼFJ    •rég: 2017-6-30 00:11
˜Ëî}: êP(gu¨¡n)ÓÚ1602LCD²»ÄÜÓ‹”µ(sh¨´)
ÒÔÏÂÊÇÎҵijÌÐò£¬ÊÇ®…˜I(y¨¨)ÔO(sh¨¨)Ó‹È΄Õ(w¨´)£¬Ïë×öÒ»‚€LCDµÄ24С•r•rçŠÓ‹”µ(sh¨´)Æ÷£¬µ«ÊÇ·ÂÕæÖ®ºó²¢²»ÄÜÓ‹”µ(sh¨´)£¬Ï£ÍûÄÄλ´óÉñÖ¸ücÖ¸üc£¡£¡£¡
#include<reg51.h>
#include<intrins.h>
#include<stdlib.h>
#define uchar unsigned char
#define  uint unsigned int
#define DelayNOP() {_nop_();_nop_();_nop_();_nop_();}  
//sbit K1=P1^0;
//sbit K2=P1^1;
sbit BEEP=P3^0;
sbit LCD_RS=P3^5;
sbit LCD_RW=P3^6;
sbit LCD_EN=P3^7;
void beep();
bit LCD_Busy_Check();
void LCD_Initialize();
void LCD_Set_POS(uchar);
void LCD_Write_Command(uchar);
void LCD_Write_Data(uchar);  
uchar code titlt_text[]={"--- jishiqi ---"};  //˜Ëî}×Ö·û´®
uchar data Multiply_str[]={"               "}; //³Ë·¨¿ÚÔE±íß_ʽ //ÑÓ•r
uchar miao,fen,shi,miao_20;
void chuli();
void DelayMS(uint x)
{
  uchar i;   
  while(x--)
          for(i=0;i<120;i++);
}  
//ï@ʾº¯”µ(sh¨´)£¬ÔÚLCDÖ¸¶¨µÄÐÐÉÏï@ʾ×Ö·û´®
void Display_string(uchar *str,uchar lineno)
{
   uchar k;
   LCD_Set_POS(lineno);     
   for(k=0;k<16;k++)
           LCD_Write_Data(str[k]);
}  void Get_random_Num_A_B()
{


   Multiply_str[1]= Multiply_str[2]=Multiply_str[3]=Multiply_str[4]
   =' ';
        Multiply_str[12]=miao%10+'0';     
        Multiply_str[11]=miao/10+'0';     
        Multiply_str[9]=fen%10+'0';     
        Multiply_str[8]=fen/10+'0';     
        Multiply_str[6]=shi%10+'0';     
        Multiply_str[5]=shi/10+'0';
//        if(c1==0)  
        //        Multiply_str[9]=' ';//®”(d¨¡ng)³Ë·eµÄʮλ”µ(sh¨´)£¨¼´”µ(sh¨´)½MÖеĵÚ9룩žé0•r²»ï@ʾ
}

//1602LCDï@ʾ¿ØÖƺ¯”µ(sh¨´)
bit LCD_Busy_Check()
{  
  bit Result;  
  LCD_RS=0;//¼Ä´æßx“ñ  
  LCD_RW=1;//×xµÄ î‘B(t¨¤i)ßx“ñ
  LCD_EN=1;//é_ʼ×x
  DelayNOP();  
  Result=(bit)(P0&0x80);
  LCD_EN=0;  
  return Result;
}  

void LCD_Write_Command(uchar cmd)
{  
    while(LCD_Busy_Check());//æµÈ´ý
    LCD_RS=0;
        LCD_RW=0;
        LCD_EN=0;
    _nop_();_nop_();
    P0=cmd;
        DelayNOP();
    LCD_EN=1;
        DelayNOP();
    LCD_EN=0;
}

void LCD_Write_Data(uchar str)
{  
   while(LCD_Busy_Check());  
   LCD_RS=1;
   LCD_RW=0;
   LCD_EN=0;
   P0=str;
   DelayNOP();
   LCD_EN=1;
   DelayNOP();
   LCD_EN=0;
}

void LCD_Initialize()
{  
    DelayMS(5);
        LCD_Write_Command(0x38);  //ÔO(sh¨¨)ÖÃ8λ¸ñʽ£¬2ÐУ¬5x7
    DelayMS(5);
        LCD_Write_Command(0x0c); //Õûówï@ʾ,êP(gu¨¡n)¹â˜Ë,²»éW q
    DelayMS(5);
        LCD_Write_Command(0x06); //ÔO(sh¨¨)¶¨Ý”È뷽ʽ£¬ÔöÁ¿²»ÒÆÎ»
        DelayMS(5);
        LCD_Write_Command(0x01); //Çå³ýÆÁÄ»ï@ʾ
    DelayMS(5);
        TMOD=0X01;
        TH0=0X3C;
        TL0=0XB0;
        TR0=1;
        EA=1;
        ET0=1;
        Multiply_str[7]=Multiply_str[10]='-';
}  

void LCD_Set_POS(uchar Position)
{  
        LCD_Write_Command(Position | 0x80);
}

//·äøQÆ÷
void beep()
{  
   uchar i,j;  
   for(i=0;i<180;i++)
   {  
      for(j=0;j<50;j++);
          BEEP=!BEEP;
    }  
     DelayMS(300);
         BEEP=0;
}

//Ö÷³ÌÐò

void main()
{  
    P0= P2=0xff;
    DelayMS(10);  
    LCD_Initialize();  //³õʼ»¯LCD  
     Display_string(titlt_text,0x00);//ÔÚµÚÒ»ÐÐï@ʾ˜Ëî}
     while(1)
    {  
                
                   Get_random_Num_A_B();
                     Display_string(Multiply_str,0x40);
                               
    }
}
void chuli()
{
        if(miao_20==20)
        {
                miao_20=0;
                miao++;
                if(miao==60)
                {
                        miao=0;
                        fen++;
                        if(fen==60)
                        {
                                fen=0;
                                shi++;
                        }
                }
        }
}  
void t0() interrupt 1
{
        TH0=0X3C;
        TL0=0XB0;
        miao_20++;
}


×÷Õß: ZؼFJ    •rég: 2017-6-30 00:13
ß@ÊÇÈ΄Õ(w¨´)LCDµÄëŠÂ·ˆD

QQˆDƬ20170630001237.png (50.39 KB, ÏÂÝd´Î”µ(sh¨´): 58)

QQˆDƬ20170630001237.png

×÷Õß: ZؼFJ    •rég: 2017-6-30 00:16
¿ÉÒÔï@ʾ¡°---jishuqi---¡±¡°00-00-00¡±µ«²»ÄÜ×Ô„ÓÓ‹”µ(sh¨´)£¡Ÿo½â£¬Çó´ð...
×÷Õß: yzwzfyz    •rég: 2017-6-30 00:54
˜ÇÖ÷£º¡°êP(gu¨¡n)ÓÚ1602LCD²»ÄÜÓ‹”µ(sh¨´)¡±
LCDÖ»ÄÜï@ʾ£¬›]ÓÐÓ‹”µ(sh¨´)¹¦ÄÜ£¡
×÷Õß: cjjcjj1    •rég: 2017-6-30 05:43
Ìáʾ: ×÷Õß±»½ûÖ¹»ò„h³ý ƒÈ(n¨¨i)ÈÝ×Ô„ÓÆÁ±Î
×÷Õß: ZؼFJ    •rég: 2017-6-30 08:38
yzwzfyz °l(f¨¡)±íÓÚ 2017-6-30 00:54
˜ÇÖ÷£º¡°êP(gu¨¡n)ÓÚ1602LCD²»ÄÜÓ‹”µ(sh¨´)¡±
LCDÖ»ÄÜï@ʾ£¬›]ÓÐÓ‹”µ(sh¨´)¹¦ÄÜ£¡

µ«ÊDz»ÊÇ¿ÉÒÔŒ¢Ëü×ö³ÉÒ»‚€•rçŠÂÊÇ¿ÉÒԵģ¬ÎÒ‚ƒÕnÉ϶¼×öß^£¬²»ß^ÎÒ×Ô¼ºŒ‘³ÌÐò³öÁˆ–î}£¡®”(d¨¡ng)È»•r犵ĕrég¿ÉÄÜ›]ÄÇôœÊ£¬µ«ÊǾÍÊÇß@˜ÓÒ»‚€µÀÀí£¬Á•(x¨ª)‘T½ÐÓ‹”µ(sh¨´)ÁË
×÷Õß: sirius2015    •rég: 2017-6-30 11:21
ÄãµÄ chuli£¨£©º¯”µ(sh¨´)›]Õ{(di¨¤o)Ó𡣬®”(d¨¡ng)È»²»ÄÜ׃»¯ÁË




šgÓ­¹âÅR (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1