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

📄 lcd.lst

📁 C8051F040单片机与DM12864液晶接口
💻 LST
📖 第 1 页 / 共 2 页
字号:
 168   3                              LCD_WriteCommand2(0x40+y-64+i%16);
 169   3                              LCD_WriteData2(HZ[i]);
 170   3                      }
 171   2              }
 172   1      }
 173          void LCD_WriteSZ(char x,char y,char *SZ) //显示8*16点阵数字        x表示起始页,y表示起始列(对于整个液晶来说)
 174          {
C51 COMPILER V7.09   LCD                                                                   10/23/2008 21:50:55 PAGE 4   

 175   1              unsigned char i;
 176   1              Delay1ms(8);
 177   1      
 178   1              for (i=0;i<16;i++)
 179   1              {
 180   2                      if ((y+i%8)<64)                                 //64列以内显示在左半屏
 181   2                      {
 182   3                              LCD_WriteCommand1(0xB8+x+i/8);
 183   3                              LCD_WriteCommand1(0x40+y+i%8);
 184   3                              LCD_WriteData1(SZ[i]);
 185   3                      }
 186   2                      else                                                            //64列以外显示在右半屏
 187   2                      {
 188   3                              LCD_WriteCommand2(0xB8+x+i/8);
 189   3                              LCD_WriteCommand2(0x40+y-64+i%8);
 190   3                              LCD_WriteData2(SZ[i]);
 191   3                      }
 192   2              }
 193   1      }                        
 194          void TestLCD(void){
 195   1      
 196   1                                              LCD_WriteSZ(0,0,zero);
 197   1                                              /*LCD_WriteSZ(0,8,one);
 198   1                                              Delay1ms(100);
 199   1                                              LCD_WriteSZ(0,16,two);
 200   1                                              Delay1ms(100);
 201   1                                              LCD_WriteSZ(0,24,three);
 202   1                                              Delay1ms(100);
 203   1                                              LCD_WriteSZ(0,32,four);
 204   1                                              Delay1ms(100);
 205   1                                              LCD_WriteSZ(0,40,five);
 206   1                                              Delay1ms(100);
 207   1                                              LCD_WriteSZ(0,48,six);
 208   1                                              Delay1ms(100);
 209   1                                              LCD_WriteSZ(0,56,seven);
 210   1                                              Delay1ms(100);
 211   1                                              LCD_WriteSZ(0,64,eight);
 212   1                                              Delay1ms(100);
 213   1                                              LCD_WriteSZ(0,72,nine);
 214   1                                              Delay1ms(100);
 215   1                                              LCD_WriteSZ(0,80,nine);
 216   1                                              Delay1ms(100);
 217   1                                              LCD_WriteSZ(0,88,eight);
 218   1                                              Delay1ms(100);
 219   1                                              LCD_WriteSZ(0,96,seven);
 220   1                                              Delay1ms(100);
 221   1                                              LCD_WriteSZ(0,104,six);
 222   1                                              Delay1ms(100);
 223   1                                              LCD_WriteSZ(0,112,five);
 224   1                                              Delay1ms(100);
 225   1                                              LCD_WriteSZ(0,120,four);
 226   1                                              Delay1ms(100);
 227   1                                              LCD_WriteSZ(0,128,three);
 228   1                                              Delay1ms(100);*/
 229   1                                              LCD_WriteSZ(2,0,two);
 230   1                                              //LCD_WriteSZ(2,8,one);
 231   1                                              //Delay1ms(100);
 232   1                                              //LCD_WriteSZ(2,16,zero);
 233   1                                              Delay1ms(100);
 234   1                              
 235   1                      
 236   1              }       
C51 COMPILER V7.09   LCD                                                                   10/23/2008 21:50:55 PAGE 5   

 237          void Port_IO_Init()
 238          {
 239   1          // P0.0  -  Unassigned,  Open-Drain, Digital
 240   1          // P0.1  -  Unassigned,  Open-Drain, Digital
 241   1          // P0.2  -  Unassigned,  Open-Drain, Digital
 242   1          // P0.3  -  Unassigned,  Open-Drain, Digital
 243   1          // P0.4  -  Unassigned,  Open-Drain, Digital
 244   1          // P0.5  -  Unassigned,  Open-Drain, Digital
 245   1          // P0.6  -  Unassigned,  Open-Drain, Digital
 246   1          // P0.7  -  Unassigned,  Open-Drain, Digital
 247   1      
 248   1          // P1.0  -  Unassigned,  Open-Drain, Digital
 249   1          // P1.1  -  Unassigned,  Open-Drain, Digital
 250   1          // P1.2  -  Unassigned,  Open-Drain, Digital
 251   1          // P1.3  -  Unassigned,  Open-Drain, Digital
 252   1          // P1.4  -  Unassigned,  Open-Drain, Digital
 253   1          // P1.5  -  Unassigned,  Open-Drain, Digital
 254   1          // P1.6  -  Unassigned,  Open-Drain, Digital
 255   1          // P1.7  -  Unassigned,  Open-Drain, Digital
 256   1      
 257   1          // P2.0  -  Unassigned,  Open-Drain, Digital
 258   1          // P2.1  -  Unassigned,  Open-Drain, Digital
 259   1          // P2.2  -  Unassigned,  Open-Drain, Digital
 260   1          // P2.3  -  Unassigned,  Open-Drain, Digital
 261   1          // P2.4  -  Unassigned,  Open-Drain, Digital
 262   1          // P2.5  -  Unassigned,  Open-Drain, Digital
 263   1          // P2.6  -  Unassigned,  Open-Drain, Digital
 264   1          // P2.7  -  Unassigned,  Open-Drain, Digital
 265   1      
 266   1          // P3.0  -  Unassigned,  Open-Drain, Digital
 267   1          // P3.1  -  Unassigned,  Open-Drain, Digital
 268   1          // P3.2  -  Unassigned,  Open-Drain, Digital
 269   1          // P3.3  -  Unassigned,  Open-Drain, Digital
 270   1          // P3.4  -  Unassigned,  Open-Drain, Digital
 271   1          // P3.5  -  Unassigned,  Open-Drain, Digital
 272   1          // P3.6  -  Unassigned,  Open-Drain, Digital
 273   1          // P3.7  -  Unassigned,  Open-Drain, Digital
 274   1      
 275   1          SFRPAGE   = CONFIG_PAGE;
 276   1          P2MDOUT   = 0xFF;
 277   1          P3MDOUT   = 0xFF;
 278   1              P4MDOUT   = 0xFF;
 279   1          P5MDOUT   = 0xFF;
 280   1          P6MDOUT   = 0xFF;
 281   1          P7MDOUT   = 0xFF;
 282   1          XBR0 = 0x04; 
 283   1              XBR1 = 0x04; 
 284   1              XBR2 = 0x40; 
 285   1              XBR3 = 0x00;
 286   1      }
 287          void Oscillator_Init()
 288          {
 289   1          SFRPAGE   = CONFIG_PAGE;
 290   1          OSCICN    = 0x83;
 291   1      }
 292          
 293          void Delay1us(unsigned char T) 
 294          {       while(T){
 295   2              T--;
 296   2              }
 297   1      }
 298          void Delay1ms(unsigned char T)
C51 COMPILER V7.09   LCD                                                                   10/23/2008 21:50:55 PAGE 6   

 299          {
 300   1              while (T)
 301   1              {
 302   2                      Delay1us(200);
 303   2                      Delay1us(200);
 304   2                      Delay1us(200);
 305   2                      Delay1us(200);
 306   2                      Delay1us(200);
 307   2                      T--;
 308   2              }
 309   1      }
 310          void Delay1s(unsigned char T)
 311          {
 312   1              while (T)
 313   1              {
 314   2                      Delay1ms(200);
 315   2                      Delay1ms(200);
 316   2                      Delay1ms(200);
 317   2                      Delay1ms(200);
 318   2                      Delay1ms(200);
 319   2                      T--;
 320   2              }
 321   1      }
 322          void main(){
 323   1              WDTCN = 0x07;
 324   1              WDTCN = 0xde;
 325   1              WDTCN = 0xad;           //关看门狗
 326   1              Port_IO_Init();
 327   1              Oscillator_Init();
 328   1              InitLCD();
 329   1              TestLCD();
 330   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    603    ----
   CONSTANT SIZE    =    320    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----      14
   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 + -