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

📄 lcd_driver_user.lst

📁 凌巨12864 sed1565芯片的液晶lcd驱动程序.
💻 LST
📖 第 1 页 / 共 2 页
字号:
 136                  //可根据自己的需要填写代码
 137                  x = y;                                          //无意义,仅为了让系统不提示警告
 138                  return Read_Data;
 139          }          */
 140          /*
 141          //========================================================================
 142          // 函数: void Set_Dot_Addr_LCD(int x,int y)
 143          // 描述: 设置在LCD的真实坐标系上的X、Y点对应的RAM地址
 144          // 参数: x              X轴坐标
 145          //               y              Y轴坐标
 146          // 返回: 无
 147          // 备注: 仅设置当前操作地址,为后面的连续操作作好准备
 148          // 版本:
 149          //      2006/10/15      First version
 150          //              2007/01/09              V1.2 
 151          //========================================================================
 152          void Set_Dot_Addr_LCD(unsigned char x,unsigned char y)
 153          {
 154                  unsigned char x_low,x_hight;                                                    //定义列地址的高低位指令
 155                  unsigned char y_Page;                                                           //用于存放要画点的位置所在的byte数据位置
 156                  x = x+4;
 157                  x_low = (x&0x0f);                                                                       //定位列地址设置的低位指令
 158                  x_hight = ((x>>4)&0x0f)+0x10;                                           //定位列地址设置的高位指令
 159                  y_Page = (y>>3)+0xb0;                                                           //Get the page of the byte
 160                  *COM_W_ADDR = y_Page;//LCD_RegWrite(y_Page);
 161                  *COM_W_ADDR = x_low;//LCD_RegWrite(x_low);
 162                  *COM_W_ADDR = x_hight;//LCD_RegWrite(x_hight);
 163          }*/
 164          /*
 165          //========================================================================
 166          // 函数: void LCD_Fill_s(unsigned int Number,unsigned int Color)
 167          // 描述: 连续填充以Color色调的Number个点
 168          // 参数: Number 填充的数量    Color  像素点的颜色  
 169          // 返回:
 170          // 备注: 该函数可能会使用到
 171          // 版本:
 172          //      2006/10/15      First version
 173          //              2007/01/09              V1.2 
 174          //========================================================================
 175          void LCD_Fill_s(unsigned int Number,unsigned char Color)
 176          {
 177                  while(Number!=0)
 178                  {
 179                          LCD_DataWrite(Color);                                           //
C51 COMPILER V7.50   LCD_DRIVER_USER                                                       03/06/2007 23:20:31 PAGE 4   

 180                          Number--;
 181                  }
 182          } */
 183          //========================================================================
 184          // 函数: void LCD_Fill(unsigned int Data)
 185          // 描述: 会屏填充以Data的数据至各点中
 186          // 参数: Data   要填充的颜色数据
 187          // 返回: 无
 188          // 备注: 仅在LCD初始化程序当中调用
 189          // 版本:
 190          //      2006/10/15      First version
 191          //              2007/01/09              V1.2 
 192          //========================================================================
 193          void LCD_Fill(unsigned char Data)
 194          {
 195   1              unsigned char i,j;
 196   1              unsigned char uiTemp;
 197   1              uiTemp = Dis_Y_MAX;
 198   1              uiTemp = uiTemp>>3;
 199   1              for(i=0;i<=uiTemp;i++)                                                          //往LCD中填充初始化的显示数据
 200   1              {
 201   2                      *COM_W_ADDR = 0xb0+i;//LCD_RegWrite(0xb0+i);
 202   2                      *COM_W_ADDR = 0x04;//LCD_RegWrite(0x04);
 203   2                      *COM_W_ADDR = 0x10;//LCD_RegWrite(0x10);
 204   2                      for(j=0;j<=Dis_X_MAX;j++)
 205   2                      {
 206   3                              *DAT_W_ADDR = Data;//LCD_DataWrite(Data);
 207   3                      }
 208   2              }
 209   1      }
 210          //========================================================================
 211          // 函数: void LCD_Init(void)
 212          // 描述: LCD初始化程序,在里面会完成LCD初始所需要设置的许多寄存器,具体如果
 213          //               用户想了解,建议查看DataSheet当中各个寄存器的意义
 214          // 参数: 无 
 215          // 返回: 无
 216          // 备注:
 217          // 版本:
 218          //      2006/10/15      First version
 219          //              2007/01/09              V1.2 
 220          //========================================================================
 221          //延时程序
 222          
 223          void TimeDelay(int Time)
 224          {
 225   1              int i;
 226   1              if(Time > 0)
 227   1              {
 228   2                      for(i = 0;i < 800;i++)
 229   2                      {
 230   3                      //      _nop_();
 231   3                      }
 232   2                      Time --;
 233   2              }
 234   1      }
 235          void LCD_Init(void)
 236          {
 237   1              //LCD驱动所使用到的端口的初始化(如果有必要的话)
 238   1      //      LCD_PortInit();
 239   1              LCD_RS = 0;
 240   1              TimeDelay(200);
 241   1              LCD_RS = 1;
C51 COMPILER V7.50   LCD_DRIVER_USER                                                       03/06/2007 23:20:31 PAGE 5   

 242   1                      
 243   1              LCD_RegWrite(M_LCD_ON);                                                 //LCD On
 244   1              LCD_RegWrite(M_LCD_POWER_ALL);                                  //设置上电控制模式
 245   1              
 246   1              LCD_RegWrite(M_LCD_ELE_VOL);                                    //电量设置模式(显示亮度)
 247   1              LCD_RegWrite(0x30);                                                             //指令数据0x0000~0x003f
 248   1              
 249   1              LCD_RegWrite(M_LCD_VDD_SET);                                    //V5内部电压调节电阻设置
 250   1              LCD_RegWrite(M_LCD_VDD);                                                //LCD偏压设置,V3时选
 251   1              
 252   1              LCD_RegWrite(M_LCD_COM_NOR);                                    //Com 扫描方式设置
 253   1              LCD_RegWrite(M_LCD_SEG_REV);                                    //Segment方向选择
 254   1              LCD_RegWrite(M_LCD_ALL_LOW);                                    //全屏点亮/变暗指令
 255   1              LCD_RegWrite(M_LCD_ALL_NOR);                                    //正向反向显示控制指令
 256   1              
 257   1              LCD_RegWrite(M_LCD_STATIC_OFF);                                 //关闭静态指示器
 258   1              LCD_RegWrite(0x00);                                                             //指令数据
 259   1              
 260   1              LCD_RegWrite(M_LCD_BEGIN_LINE+0);                               //设置显示起始行对应RAM
 261   1              LCD_Fill(LCD_INITIAL_COLOR);
 262   1      }
 263          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    297    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       1
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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