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

📄 lcd5110-

📁 LCD5110模块资料
💻
📖 第 1 页 / 共 2 页
字号:
 155          编写日期:20080918 
 156          ----------------------------------------------*/
 157          void LCD_write_byte(unsigned char dt, unsigned char command)
 158          {
 159   1              unsigned char i; 
 160   1              sce=0;  
 161   1              dc=command;     
 162   1              for(i=0;i<8;i++)
 163   1              { 
 164   2                      if(dt&0x80)
 165   2                              sdin=1;
 166   2                      else
 167   2                              sdin=0;
 168   2                      dt=dt<<1;               
 169   2                      sclk=0;                 
 170   2                      sclk=1; 
 171   2              }       
 172   1              dc=1;   
 173   1              sce=1;  
 174   1              sdin=1;
 175   1      }
 176          /*---------------------------------------
 177          LCD_init: 3310LCD初始化
 178          编写日期:20080918 
 179          -----------------------------------------  */
C51 COMPILER V9.00   5110_51                                                               05/23/2010 21:30:25 PAGE 4   

 180          void LCD_init(void)
 181          {
 182   1              res=0;          
 183   1              delayms(10);
 184   1              res=1;  
 185   1              LCD_write_byte(0x21,0);//初始化Lcd,功能设定使用扩充指令
 186   1              LCD_write_byte(0xC6,0);//设定液晶偏置电压
 187   1              LCD_write_byte(0x06,0);//温度校正
 188   1              LCD_write_byte(0x13,0);;//1:48
 189   1              LCD_write_byte(0x20,0);//使用基本指令
 190   1              LCD_write_byte(0x0C,0);//设定显示模式,正常显示
 191   1      }
 192          /*-------------------------------------------
 193          LCD_set_XY: 设置LCD坐标函数
 194          输入参数:X:0-83  Y:0-5
 195          编写日期:20080918 
 196          ---------------------------------------------*/
 197          void LCD_set_XY(unsigned char X, unsigned char Y)
 198          {
 199   1              LCD_write_byte(0x40 | Y, 0);// column
 200   1              LCD_write_byte(0x80 | X, 0);// row
 201   1      } 
 202          /*------------------------------------------
 203          LCD_clear: LCD清屏函数
 204          编写日期:20080918 
 205          --------------------------------------------*/
 206          void LCD_clear(void)
 207          {
 208   1              unsigned char t;
 209   1              unsigned char k;
 210   1              LCD_set_XY(0,0);
 211   1              for(t=0;t<6;t++)
 212   1              { 
 213   2                      for(k=0;k<84;k++)
 214   2                      { 
 215   3                              LCD_write_byte(0x00,1);
 216   3                                      
 217   3                      } 
 218   2              }
 219   1      }
 220          /*---------------------------------------------
 221          LCD_write_shu: 显示6(宽)*16(高)点阵列数字字母符号等半角类
 222          输入参数:c:显示的字符;
 223          编写日期:20080918 
 224          -----------------------------------------------*/
 225          void LCD_write_shu(unsigned char row, unsigned char page,unsigned char c) //row:列 page:页 dd:字符
 226          {
 227   1              unsigned char i;        
 228   1              
 229   1              LCD_set_XY(row*6, page);// 列,页 
 230   1              for(i=0; i<6;i++) 
 231   1              {
 232   2                      LCD_write_byte(shuzi[c*12+i],1); 
 233   2              }
 234   1              
 235   1          LCD_set_XY(row*6, page+1);// 列,页 
 236   1              for(i=6; i<12;i++) 
 237   1              {
 238   2                      LCD_write_byte(shuzi[c*12+i],1);
 239   2              }               
 240   1      }
 241          /*---------------------------------------------
C51 COMPILER V9.00   5110_51                                                               05/23/2010 21:30:25 PAGE 5   

 242          LCD_write_hanzi: 显示12(宽)*16(高)点阵列汉字等半角类
 243          输入参数:c:显示的字符;
 244          编写日期:20080918 
 245          -----------------------------------------------*/
 246          void LCD_write_hanzi(unsigned char row, unsigned char page,unsigned char c) //row:列 page:页 dd:字符
 247          {
 248   1              unsigned char i;        
 249   1              
 250   1              LCD_set_XY(row*6, page);// 列,页 
 251   1              for(i=0; i<12;i++) 
 252   1              {
 253   2                      LCD_write_byte(hanzi[c*24+i],1); 
 254   2              }
 255   1              
 256   1          LCD_set_XY(row*6, page+1);// 列,页 
 257   1              for(i=12; i<24;i++) 
 258   1              {
 259   2                      LCD_write_byte(hanzi[c*24+i],1);
 260   2              }       
 261   1      }
 262          
 263          
 264          main()
 265          {       
 266   1      
 267   1              unsigned char k;
 268   1              sce=0;
 269   1              res=0;
 270   1              for(k=0;k<250;k++);
 271   1              res=1;
 272   1              LCD_init();  //初始化LCD模块 
 273   1              LCD_clear(); //清屏幕   
 274   1              LCD_write_hanzi(0,0,0);  //单   
 275   1              LCD_write_hanzi(2,0,1);  //片
 276   1              LCD_write_hanzi(4,0,2);  //机   
 277   1              LCD_write_hanzi(6,0,3);  //开
 278   1              LCD_write_hanzi(8,0,4);  //发   
 279   1              LCD_write_hanzi(10,0,5);  //工
 280   1              LCD_write_hanzi(12,0,6);  //作  
 281   1              LCD_write_hanzi(0,2,7);  //室
 282   1      
 283   1              LCD_write_hanzi(2,4,8);  //雨
 284   1              LCD_write_hanzi(4,4,9);  //亭
 285   1              LCD_write_hanzi(6,4,10);  //电
 286   1              LCD_write_hanzi(8,4,11);  //子                                                          
 287   1      
 288   1              LCD_write_shu(10,4,0);  //>
 289   1              LCD_write_shu(11,4,1);  //W
 290   1              LCD_write_shu(12,4,2);  //Y
 291   1              LCD_write_shu(13,4,3);  //G
 292   1      
 293   1                      
 294   1      
 295   1              while(1)
 296   1              {
 297   2              
 298   2              delayms(5000);
 299   2              }
 300   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
C51 COMPILER V9.00   5110_51                                                               05/23/2010 21:30:25 PAGE 6   

   CODE SIZE        =    460    ----
   CONSTANT SIZE    =    456    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   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 + -