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

📄 lcd.h

📁 430读写IIC总线以及中断控制程序
💻 H
字号:
#ifndef LCD_H
#define LCD_H
#include  <msp430x41x.h>
#define uint unsigned int
#define uchar unsigned char
#define ulint unsigned long 


char *LCD=LCDMEM;

uchar BufferDat[10];
uchar number[10]={
                  0xfa ,//0
                  0x60 ,//1
                  0xd6 ,//2
                  0xf4 ,//3
                  0x6c ,//4
                  0xBC ,//5
                  0xbe ,//6
                  0xe0 ,//7
                  0xfe ,//8
                  0xfc  //9
                  };
//********************************************************************************************************************************
void ClearLCD(void);
void SetDigit(uchar digit,uchar data);
void SetPleaseBuy(void);//请存
void SetCunRu(void); //存入
void SetCardWrong(void);//插卡错
void SetFaKai(void);//  阀开
void SetFaGuan(void);// 阀关 
void SetBattery(void);// 电池
void SetLeft(void);//余额
void SetPoint(uchar digit);
void SetLeiJi(void);//累积
void SetNumber(ulint number,int decimal);
void SetM3(void);   //
void SetYuan(void);
void SetFen(void);
void SetCJH(void);
//******************************************************************************************************
void  ClearLCD(void)
{
uchar i;
for(i=0;i<10;i++)
  {
  LCD[i]=0;
  }
}

//*******************************************************************************************************
void SetPleaseBuy(void)
{
LCD[8]|=0x10;
}
//*******************************************************************************************************
void SetCunRu(void)
{
LCD[9]|=0x01;
}
//********************************************************************************************************
void SetCardWrong(void)
{
LCD[8]|=0X01;
}
//********************************************************************************************************
void SetFaKai(void)
{
LCD[8]|=0X04;
}
//********************************************************************************************************
void SetFaGuan(void)
{
LCD[8]|=0X08;
}
//*********************************************************************************************************
void SetBattery(void)
{
LCD[9]|=0x04;
}
//********************************************************************************************************
void SetLeft(void)
{
LCD[8]|=0x80;
}
//*********************************************************************************************************
void SetM3(void)
{
  LCD[0]|=0x01;
}
//********************************************************************************************************
void SetYuan(void)
{
  LCD[7]|=0x01;
}
//*******************************************************************************************************
void SetFen(void)
{
  LCD[3]|=0x01;
}
//********************************************************************************************************
void SetCJH(void)
{
  LCD[8]|=0x02;
}
//*******************************************************************************************************
void SetPoint(uchar digit)
{
if(digit!=0)
LCD[7-digit]|=0x01;
}
//*********************************************************************************************************
void SetLeiJi(void)
{
LCD[8]|=0X40;
}
//********************************************************************************************************

void SetDigit(uchar digit,uchar data)    // digit位数    data数字
{
LCD[8-digit]|=number[data];
}
//******************************************************************************************************
void SetNumber(ulint number,int decimal)  //decimal小数点
{
    uint rest;
    uint i=0;
if(number<10000000)    
{   
    
 if(number==0)
  {
    LCD[7]|=0xfa;
  } 
 else 
  { 
    switch(decimal)
      {
        case 0:
          {
             while(number!=0)
               { 
                 rest=number%10;         //i=0取最后一位数字
                 number=number/10;
                 i++;
                 SetDigit(i,rest);      //显示数字
               }
          } break;
        case 1:
          {
            while(number!=0)
               { 
                 rest=number%10;         
                 number=number/10;
                 i++;
                 SetDigit(i,rest);      //显示数字
                }
            if(i<2)
              {
                SetDigit(2,0);         //显示小数点前的0
              } 
            SetPoint(decimal);         //显示小数点
          } break;
        case 2:
          {
             while(number!=0)
               { 
                 rest=number%10;         
                 number=number/10;
                 i++;
                 SetDigit(i,rest);      
               }
            if(i<2)
              {
                SetDigit(2,0);
              } 
            if(i<3)
              {
                SetDigit(3,0);
              } 
            SetPoint(decimal);
          } break;
        case 3:
          {
             while(number!=0)
               { 
                 rest=number%10;         
                 number=number/10;
                 i++;
                 SetDigit(i,rest);      
               }
             if(i<2)
               {
                 SetDigit(2,0);
               } 
             if(i<3)
               { 
                 SetDigit(3,0);
               } 
             if(i<4)
              {
                SetDigit(4,0);
              } 
             SetPoint(decimal);
          }  break;
        default: break;
      }
  }
}

}
#endif


⌨️ 快捷键说明

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