液晶驱动芯片1622驱动程序(心雨电子工作室QQ群:43360427)_单片机 ...

#include <C8051F350.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int

#define HT1621Delay() {;}/*在此可调节数据传输速度*/

#define Bias_Duty 0x52   /*此处设置LCD的COM数量和偏置*/
#define Rc256 0x30        /*启用内部RC振荡*/
#define LCD_ON 0x6        /*打开LCD偏置发生器*/
#define SIS_EN 0x2        /*打开系统振荡*/
#define TONE_OFF 0x10     /*内部蜂鸣器关*/
#define TONE_2K 0x13      /*打开蜂鸣器并且频率为2KHz*/
#define TONE_4K 0x12      /*打开蜂鸣器并且频率为4KHz*/
/*没用用到蜂鸣器可以不用理睬*/
/*端口根据自己需要修改*/
sbit CS2=P1^0;            /*定义片选端口*/
sbit Wr=P0^7;             /*定义写命令端口*/
sbit Dat=P0^6;            /*定义数据线端口*/

////////////////////////////////////////////////////////
/////////////////*写控制命令函数*///////////////////////
void WrCmd(uchar Cmd)/*写控制命令函数*/
{
     uchar data i,CmdByte=0x80;
     CS2=0;                  /*低电平有效*/
     for(i=0;i<4;i++)
     {
          Dat=(bit)(CmdByte&0x80);
          Wr=0;;
          HT1621Delay();
          Wr=1;
          CmdByte<<=1;
     }
     for(i=0;i<8;i++)
     {
          Dat=(bit)(Cmd&0x80);
          Wr=0;
          HT1621Delay();
          Wr=1;
          HT1621Delay();
          Cmd<<=1;
     }
     CS2=1;                /*低电平有效*/
}
////////////////////////////////////////////////////////
////////////////*写数据函数 一次处理四位*///////////////
void WrAddDdat(uchar Add,uchar Ddat,uchar Bit_4_8)/*写数据函数 uchar Bit_4_8 表示一次写入四位还是一次写入八位*/
{
uchar i,Cmdbyte=0xA0;
CS2=0;
for(i=0;i<3;i++)
{
      Dat=(bit)(Cmdbyte&0x80);
      Wr=0;
      HT1621Delay();
      Wr=1;
      Cmdbyte<<=1;
}
Add<<=2;
for(i=0;i<6;i++)
{
      Dat=(bit)(Add&0x80);
      Wr=0;
      HT1621Delay();
      Wr=1;
      Add<<=1;
}
for(i=0;i<Bit_4_8;i++)     // 地址自动加一 四位处理
{
      Dat=(bit)(Ddat&0x80);
      Wr=0;
      HT1621Delay();
      Wr=1;
      Ddat<<=1;
}
   CS2=1;
}
////////////////////////////////////////////////////////
/////////*写数据函数 一次处理八位 1622地址地动加1*//////

////////////////////////////////////////////////////////
///////////////*初始化函数*/////////////////////////////
void Init_LCD(void)
{
     WrCmd(Bias_Duty);
     WrCmd(Rc256);
     WrCmd(SIS_EN);
     WrCmd(LCD_ON);
     WrCmd(TONE_OFF);
}
////////////////////////////////////////////////////////
///////////////*清屏函数*///////////////////////////////
void Cls(void)/*清屏函数*/
{
uchar i;
for(i=0;i<64;i+=2)
{
     WrAddDdat(i,0x00,8);
}
}



郑重声明:资讯 【液晶驱动芯片1622驱动程序(心雨电子工作室QQ群:43360427)_单片机 ...】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——