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

📄 lcd_driver_user.lst

📁 由普通单片机驱动控制显示的 3.5 英寸 TFT 液 晶模块——MzT35C1 模块;并为其配备了完整的驱动函数库
💻 LST
📖 第 1 页 / 共 2 页
字号:
 169   1              uiTemp = (unsigned int)Dis_Y_MAX;
 170   1              Set_Dot_Addr_LCD(0,0);
 171   1              for(i=0;i<=uiTemp;i++)                                                          //往LCD中填充初始化的显示数据
 172   1              {
 173   2                      for(j=0;j<=Dis_X_MAX;j++)
 174   2                      {
 175   3                              LCD_DataWrite(Data);
 176   3                      }
 177   2              }
 178   1      }
C51 COMPILER V8.16   LCD_DRIVER_USER                                                       12/22/2008 00:11:06 PAGE 4   

 179          //========================================================================
 180          // 函数: void LCD_PortInit(void)
 181          // 描述: 与LCD连接的端口初始化代码
 182          // 参数: 无  
 183          // 返回: 无
 184          // 备注: Mz 通用版LCD驱动程序 标准子函数
 185          // 版本:
 186          //      2007/01/09      First version
 187          // 注意: 
 188          //========================================================================
 189          void LCD_PortInit(void)
 190          {
 191   1              LCD_Ctrl_GPIO();
 192   1              LCD_Ctrl_Out();
 193   1              LCD_Ctrl_Set(LCD_CS+LCD_RE+LCD_A0+LCD_RW+LCD_RD);
 194   1      
 195   1              LCD_Data_GPIO();
 196   1              LCD_Data_Out();
 197   1      }
 198          //========================================================================
 199          // 函数: void LCD_Init(void)
 200          // 描述: LCD初始化程序,在里面会完成LCD初始所需要设置的许多寄存器,具体如果
 201          //               用户想了解,建议查看DataSheet当中各个寄存器的意义
 202          // 参数: 无 
 203          // 返回: 无
 204          // 备注: Mz 通用版LCD驱动程序 标准子函数
 205          // 版本:
 206          //      2006/10/15      First version
 207          //              2007/01/09              V1.2 
 208          //========================================================================
 209          //延时程序
 210          void TimeDelay(WORD Time)
 211          {
 212   1              WORD i;
 213   1              while(Time > 0)
 214   1              {
 215   2                      for(i = 0;i < 800;i++)
 216   2                      {
 217   3                              _nop_();
 218   3                      }
 219   2                      Time --;
 220   2              }
 221   1      }
 222          /*
 223          FLASH Initial_Tab[]={
 224          0x0005,0xCF90,0x000A,0x3A05,0x0016,0x9F80,0x0017,0x0A0F,      
 225          0x0001,0xe300,0x0002,0x0200,0x0003,0x7664,0x0004,0x0447,
 226          0x0005,0x4002,0x000A,0x4008,0x000B,0xD400,0x000D,0x123A,
 227          0x000E,0x2CC0,0x000F,0x0000,0x0016,0x9F80,0x0017,0x2212,
 228          0x001E,0x00dd,0x0030,0x0507,0x0031,0x0004,0x0032,0x0707,
 229          0x0033,0x0000,0x0034,0x0000,0x0035,0x0307,0x0036,0x0700,
 230          0x0037,0x0000,0x003A,0x140B,0x003B,0x140B,0xffff        
 231          };*/
 232          void LCD_Init(void)
 233          {
 234   1      //      FLASH *Init_String;
 235   1              //LCD驱动所使用到的端口的初始化
 236   1              LCD_PortInit();
 237   1              //根据LCD显示的配置,设置LCD的数据地址指针自动增加特性
 238   1              //end
 239   1              LCD_RE_CLR();
 240   1              TimeDelay(5);
C51 COMPILER V8.16   LCD_DRIVER_USER                                                       12/22/2008 00:11:06 PAGE 5   

 241   1              LCD_RE_SET();
 242   1              LCD_RegWrite(0x03);
 243   1              LCD_DataWrite((1<<7)|//                         //设置背光控制使能
 244   1                                      (0x60<<0));                             //设置背光亮度等级为60(0~127)
 245   1      
 246   1              LCD_RegWrite(0x04);                                     //写系统寄存器
 247   1      //      LCD_DataWrite((0<<7)|                           //当前显示页
 248   1      //                              (0<<6)  |                               //当前读写页设置
 249   1      //                              (1<<0));                                //显示开关
 250   1              LCD_DataWrite(MzT35_Ctrl_Reg);
 251   1      
 252   1      /*      Init_String = Initial_Tab;
 253   1              while(Init_String!=0xffff)
 254   1              {
 255   1                      LCD_RegWrite(0x05);LCD_DataWrite(*Init_String++);
 256   1                      LCD_RegWrite(0x06);LCD_DataWrite(*Init_String++);
 257   1              }*/
 258   1              
 259   1              LCD_Fill(LCD_INITIAL_COLOR);
 260   1      }
 261          //========================================================================
 262          // 函数: void LCD_DisLayerSet(BYTE layer)
 263          // 描述: 当前显示图层设置
 264          // 参数: layer   0: 图层0设置为当前显示图层
 265          //                               2: 图层1设置为当前显示图层 
 266          // 返回: 无
 267          // 备注: Mz 通用版LCD驱动程序 非标准子函数
 268          // 版本:
 269          //      2008/12/15      First version
 270          //========================================================================
 271          void LCD_DisLayerSet(BYTE layer)
 272          {
 273   1              if(layer==0)
 274   1              {
 275   2                      MzT35_Ctrl_Reg &= ~0x80;
 276   2      
 277   2              }
 278   1              else
 279   1              {
 280   2                      MzT35_Ctrl_Reg |= 0x80;
 281   2              }
 282   1              LCD_RegWrite(0x04);                                     //写系统寄存器
 283   1              LCD_DataWrite(MzT35_Ctrl_Reg);
 284   1      }
 285          //========================================================================
 286          // 函数: void LCD_OSLayerSet(BYTE layer)
 287          // 描述: 当前操作图层设置
 288          // 参数: layer   0: 图层0设置为当前操作图层
 289          //                               2: 图层1设置为当前操作图层 
 290          // 返回: 无
 291          // 备注: Mz 通用版LCD驱动程序 非标准子函数
 292          // 版本:
 293          //      2008/12/15      First version
 294          //========================================================================
 295          void LCD_OSLayerSet(BYTE layer)
 296          {
 297   1              if(layer==0)
 298   1              {
 299   2                      MzT35_Ctrl_Reg &= ~0x40;
 300   2      
 301   2              }
 302   1              else
C51 COMPILER V8.16   LCD_DRIVER_USER                                                       12/22/2008 00:11:06 PAGE 6   

 303   1              {
 304   2                      MzT35_Ctrl_Reg |= 0x40;
 305   2              }
 306   1              LCD_RegWrite(0x04);                                     //写系统寄存器
 307   1      //      LCD_DataWrite((0<<7)|                           //当前显示页
 308   1      //                              (0<<6)  |                               //当前读写页设置
 309   1      //                              (1<<0));                                //显示开关
 310   1              LCD_DataWrite(MzT35_Ctrl_Reg);
 311   1      }
 312          //========================================================================
 313          // 函数: void LCD_BackLightSet(BYTE light)
 314          // 描述: 设置背光亮度
 315          // 参数: light   0~127 
 316          // 返回: 无
 317          // 备注: Mz 通用版LCD驱动程序 非标准子函数
 318          // 版本:
 319          //      2008/12/15      First version
 320          //========================================================================
 321          void LCD_BackLightSet(BYTE light)
 322          {
 323   1              if(light>0x7f) light = 0x7f;
 324   1              light |= 0x80;
 325   1              LCD_RegWrite(0x03);
 326   1              LCD_DataWrite(light);
 327   1      }
 328          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    391    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =      1       8
   DATA SIZE        =   ----    ----
   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 + -