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

📄 ydlcd.lst

📁 51单片机实验例程
💻 LST
📖 第 1 页 / 共 2 页
字号:
 122   1      }                                                                          
 123                                                                                     
 124          /*******************************************************************/      
 125          /*                                                                         
 126          /*  设定显示位置                                                           
 127          /*                                                                         
 128          /*******************************************************************/      
 129                                                                                     
 130          void lcd_pos(uchar pos)                                                    
 131          {                                                                          
 132   1         lcd_wcmd(pos|0x80);      //数据指针=80+地址变量                         
 133   1      }                                                                          
 134                                                                                     
 135          /*******************************************************************/      
 136          /*                                                                         
 137          /*  LCD初始化设定                                                          
 138          /*                                                                         
 139          /*******************************************************************/      
 140                                                                                     
 141          void lcd_init()                                                            
 142          {                                                                          
 143   1          delay(15);                     //等待LCD电源稳定                       
 144   1          lcd_wcmd(0x38);          //16*2显示,5*7点阵,8位数据                  
 145   1          delay(5);                                                              
 146   1          lcd_wcmd(0x38);                                                        
 147   1          delay(5);                                                              
 148   1          lcd_wcmd(0x38);                                                        
 149   1          delay(5);                                                              
 150   1                                                                                 
 151   1          lcd_wcmd(0x0c);          //显示开,关光标                              
 152   1          delay(5);                                                              
 153   1          lcd_wcmd(0x06);          //移动光标                                    
 154   1          delay(5);                                                              
 155   1          lcd_wcmd(0x01);          //清除LCD的显示内容                           
 156   1          delay(5);                                                              
 157   1      }                                                                          
 158                                                                                     
 159          /*******************************************************************/      
 160          /*                                                                         
 161          /*  清屏子程序                                                             
 162          /*                                                                         
 163          /*******************************************************************/      
 164                                                                                     
 165          void lcd_clr()                                                             
 166          {                                                                          
 167   1          lcd_wcmd(0x01);          //清除LCD的显示内容                           
 168   1          delay(5);                                                              
 169   1      }                                                                          
 170                                                                                     
 171          /*******************************************************************/      
 172          /*                                                                         
 173          /*  闪动子程序                                                             
 174          /*                                                                         
 175          /*******************************************************************/      
 176                                                                                     
 177          void flash()                                                               
 178          {                                                                          
C51 COMPILER V7.10   YDLCD                                                                 03/29/2009 20:15:57 PAGE 4   

 179   1          delay(600);                     //控制停留时间                         
 180   1          lcd_wcmd(0x08);            //关闭显示                                  
 181   1          delay(200);                    //延时                                  
 182   1          lcd_wcmd(0x0c);            //开显示                                    
 183   1          delay(200);                                                            
 184   1          lcd_wcmd(0x08);            //关闭显示                                  
 185   1          delay(200);                     //延时                                 
 186   1          lcd_wcmd(0x0c);            //开显示                                    
 187   1          delay(200);                                                            
 188   1      }                                                                          
 189                                                                                     
 190          /*******************************************************************/      
 191          /*                                                                         
 192          /*  主程序                                                                 
 193          /*                                                                         
 194          /*******************************************************************/      
 195                                                                                     
 196          main()                                                                     
 197          {                                                                          
 198   1          uchar i,j;                                                             
 199   1          delay(10);                                                             
 200   1          lcd_init();                          //初始化LCD                       
 201   1                                                                                 
 202   1          while(1)                                                               
 203   1         {                                                                       
 204   2            lcd_clr();                                                           
 205   2                                                                                 
 206   2            lcd_pos(0x10);               //设置显示位置为第一行第17列            
 207   2            i = 0;                                                               
 208   2                                                                                 
 209   2           while(dis1[i] != '\0')                                                
 210   2           {                                      //显示字符"         "   
 211   3             lcd_wdat(dis1[i]);                                                  
 212   3             i++;                                                                
 213   3           }                                                                     
 214   2                                                                                 
 215   2            lcd_pos(0x50);              //设置显示位置为第二行第17列             
 216   2            i = 0;                                                               
 217   2                                                                                 
 218   2           while(dis2[i] != '\0')                                                
 219   2           {                                                                     
 220   3             lcd_wdat(dis2[i]);         //显示字符"        "             
 221   3             i++;                                                                
 222   3           }                                                                     
 223   2                                                                                 
 224   2           for(j=0;j<16;j++)           //向左移动16格                           
 225   2           {                                                                     
 226   3             lcd_wcmd(0x18);           //字符同时左移一格                        
 227   3             delay(100);                   //控制移动时间                        
 228   3           }                                                                     
 229   2                                                                                 
 230   2            flash();                            //闪动二次                       
 231   2                                                                                 
 232   2         }                                                                       
 233   1      }                                                                          
 234                                                                                     
 235                                                                                     
 236                                                                     
 237           


MODULE INFORMATION:   STATIC OVERLAYABLE
C51 COMPILER V7.10   YDLCD                                                                 03/29/2009 20:15:57 PAGE 5   

   CODE SIZE        =    316    ----
   CONSTANT SIZE    =     29    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----       1
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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