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

📄 5110-51.lst

📁 nokia5110.rar
💻 LST
📖 第 1 页 / 共 2 页
字号:
 211          /*--  宋体12;  此字体下对应的点阵为:宽x高=8x16   --*/
 212          0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x00,
 213          
 214          /*--  文字:  +  --49*/
 215          /*--  宋体12;  此字体下对应的点阵为:宽x高=8x16   --*/
 216          0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 217          
 218          /*--  文字:  -  --50*/
 219          /*--  宋体12;  此字体下对应的点阵为:宽x高=8x16   --*/
 220          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x00
 221          };
 222          
 223          unsigned char code hanzi[]=
 224          {
 225          /*--  文字:  宁  --*/
 226          /*--  Trebuchet MS12;  此字体下对应的点阵为:宽x高=16x16   --*/
 227          0x00,0x90,0x8C,0x84,0x84,0x84,0x85,0x86,0x84,0x84,0x84,0x84,0x94,0x8E,0x04,0x00,
 228          0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 229          
 230          /*--  文字:  波  --*/
 231          /*--  Trebuchet MS12;  此字体下对应的点阵为:宽x高=16x16   --*/
 232          0x10,0x60,0x01,0xE6,0x00,0xF8,0x88,0x88,0x88,0xFF,0x88,0x88,0x88,0x18,0x08,0x00,
 233          0x04,0x04,0xFF,0x40,0x30,0x8F,0x80,0x41,0x26,0x18,0x18,0x26,0x61,0xC0,0x40,0x00,
 234          
 235          /*--  文字:  单  --*/
 236          /*--  Trebuchet MS12;  此字体下对应的点阵为:宽x高=16x16   --*/
 237          0x00,0x00,0xF8,0x28,0x29,0x2E,0x2A,0xF8,0x28,0x2C,0x2B,0x2A,0xF8,0x00,0x00,0x00,
 238          0x08,0x08,0x0B,0x09,0x09,0x09,0x09,0xFF,0x09,0x09,0x09,0x09,0x0B,0x08,0x08,0x00,
 239          
 240          /*--  文字:  片  --*/
 241          /*--  Trebuchet MS12;  此字体下对应的点阵为:宽x高=16x16   --*/
C51 COMPILER V8.05a   5110_51                                                              12/15/2008 17:00:13 PAGE 5   

 242          0x00,0x00,0x00,0xFE,0x10,0x10,0x10,0x10,0x10,0x1F,0x10,0x10,0x10,0x18,0x10,0x00,
 243          0x80,0x40,0x30,0x0F,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0xFF,0x00,0x00,0x00,0x00,
 244          
 245          /*--  文字:  机  --*/
 246          /*--  Trebuchet MS12;  此字体下对应的点阵为:宽x高=16x16   --*/
 247          0x08,0x08,0xC8,0xFF,0x48,0x88,0x08,0x00,0xFE,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,
 248          0x04,0x03,0x00,0xFF,0x00,0x41,0x30,0x0C,0x03,0x00,0x00,0x00,0x3F,0x40,0x78,0x00,
 249          
 250          /*--  文字:  开  --*/
 251          /*--  Trebuchet MS12;  此字体下对应的点阵为:宽x高=16x16   --*/
 252          0x40,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0xFE,0x42,0x42,0x42,0x42,0x00,
 253          0x00,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
 254          
 255          /*--  文字:  发  --*/
 256          /*--  Trebuchet MS12;  此字体下对应的点阵为:宽x高=16x16   --*/
 257          0x00,0x10,0x3E,0x10,0x10,0xF0,0x9F,0x90,0x90,0x92,0x94,0x1C,0x10,0x10,0x10,0x00,
 258          0x40,0x20,0x10,0x88,0x87,0x41,0x46,0x28,0x10,0x28,0x27,0x40,0xC0,0x40,0x00,0x00,
 259          
 260          /*--  文字:  网  --*/
 261          /*--  Trebuchet MS12;  此字体下对应的点阵为:宽x高=16x16   --*/
 262          0x00,0xFE,0x02,0x12,0x22,0xC2,0x22,0x1A,0x22,0x42,0x82,0x72,0x22,0xFE,0x00,0x00,
 263          0x00,0x7F,0x08,0x04,0x03,0x00,0x03,0x0C,0x04,0x02,0x01,0x26,0x60,0x3F,0x00,0x00,
 264          };
 265          
 266          void delay_1ms(void)//1ms延时函数
 267          {
 268   1              unsigned int i;
 269   1              for (i=0;i<500;i++)       ;
 270   1      ;
 271   1      }
 272          
 273          /*--------------------------------------------
 274          LCD_write_byte: 使用SPI接口写数据到LCD
 275          输入参数:dt:写入的数据;
 276          command :写数据/命令选择;
 277          编写日期:20080918 
 278          ----------------------------------------------*/
 279          void LCD_write_byte(unsigned char dt, unsigned char command)
 280          {
 281   1              unsigned char i; 
 282   1              sce=0;  
 283   1              dc=command;     
 284   1              for(i=0;i<8;i++)
 285   1              { 
 286   2                      if(dt&0x80)
 287   2                              sdin=1;
 288   2                      else
 289   2                              sdin=0;
 290   2                      dt=dt<<1;               
 291   2                      sclk=0;                 
 292   2                      sclk=1; 
 293   2              }       
 294   1              dc=1;   
 295   1              sce=1;  
 296   1              sdin=1;
 297   1      }
 298          /*---------------------------------------
 299          LCD_init: 3310LCD初始化
 300          编写日期:20080918 
 301          -----------------------------------------  */
 302          void LCD_init(void)
 303          {
C51 COMPILER V8.05a   5110_51                                                              12/15/2008 17:00:13 PAGE 6   

 304   1              res=0;          
 305   1              delay_1ms();
 306   1              res=1;  
 307   1              LCD_write_byte(0x21,0);//初始化Lcd,功能设定使用扩充指令
 308   1              LCD_write_byte(0xd0,0);//设定液晶偏置电压
 309   1              LCD_write_byte(0x20,0);//使用基本指令
 310   1              LCD_write_byte(0x0C,0);//设定显示模式,正常显示
 311   1      }
 312          /*-------------------------------------------
 313          LCD_set_XY: 设置LCD坐标函数
 314          输入参数:X:0-83  Y:0-5
 315          编写日期:20080918 
 316          ---------------------------------------------*/
 317          void LCD_set_XY(unsigned char X, unsigned char Y)
 318          {
 319   1              LCD_write_byte(0x40 | Y, 0);// column
 320   1              LCD_write_byte(0x80 | X, 0);// row
 321   1      } 
 322          /*------------------------------------------
 323          LCD_clear: LCD清屏函数
 324          编写日期:20080918 
 325          --------------------------------------------*/
 326          void LCD_clear(void)
 327          {
 328   1              unsigned char t;
 329   1              unsigned char k;
 330   1              LCD_set_XY(0,0);
 331   1              for(t=0;t<6;t++)
 332   1              { 
 333   2                      for(k=0;k<84;k++)
 334   2                      { 
 335   3                              LCD_write_byte(0x00,1);
 336   3                                      
 337   3                      } 
 338   2              }
 339   1      }
 340          /*---------------------------------------------
 341          LCD_write_shu: 显示8(宽)*16(高)点阵列数字字母符号等半角类
 342          输入参数:c:显示的字符;
 343          编写日期:20080918 
 344          -----------------------------------------------*/
 345          void LCD_write_shu(unsigned char row, unsigned char page,unsigned char c) //row:列 page:页 dd:字符
 346          {
 347   1              unsigned char i;        
 348   1              
 349   1              LCD_set_XY(row*8, page);// 列,页 
 350   1              for(i=0; i<8;i++) 
 351   1              {
 352   2                      LCD_write_byte(shuzi[c*16+i],1); 
 353   2              }
 354   1              
 355   1          LCD_set_XY(row*8, page+1);// 列,页 
 356   1              for(i=8; i<16;i++) 
 357   1              {
 358   2                      LCD_write_byte(shuzi[c*16+i],1);
 359   2              }               
 360   1      }
 361          /*---------------------------------------------
 362          LCD_write_hanzi: 显示16(宽)*16(高)点阵列汉字等半角类
 363          输入参数:c:显示的字符;
 364          编写日期:20080918 
 365          -----------------------------------------------*/
C51 COMPILER V8.05a   5110_51                                                              12/15/2008 17:00:13 PAGE 7   

 366          void LCD_write_hanzi(unsigned char row, unsigned char page,unsigned char c) //row:列 page:页 dd:字符
 367          {
 368   1              unsigned char i;        
 369   1              
 370   1              LCD_set_XY(row*8, page);// 列,页 
 371   1              for(i=0; i<16;i++) 
 372   1              {
 373   2                      LCD_write_byte(hanzi[c*32+i],1); 
 374   2              }
 375   1              
 376   1          LCD_set_XY(row*8, page+1);// 列,页 
 377   1              for(i=16; i<32;i++) 
 378   1              {
 379   2                      LCD_write_byte(hanzi[c*32+i],1);
 380   2              }       
 381   1      }
 382          main()
 383          {       
 384   1              unsigned char k;
 385   1              res=0;
 386   1              for(k=0;k<250;k++);
 387   1              res=1;          
 388   1              LCD_init();  //初始化LCD模块 
 389   1              LCD_clear(); //清屏幕   
 390   1              LCD_write_hanzi(0,0,0);  //宁   
 391   1              LCD_write_hanzi(2,0,1);  //波
 392   1              LCD_write_hanzi(4,0,2);  //单
 393   1              LCD_write_hanzi(6,0,3);  //片
 394   1              LCD_write_hanzi(8,0,4);  //机
 395   1              
 396   1              LCD_write_hanzi(1,2,5);  //开
 397   1              LCD_write_hanzi(4,2,6);  //发
 398   1              LCD_write_hanzi(7,2,7);  //网
 399   1                                      
 400   1              LCD_write_shu(1,4,23);   //n
 401   1              LCD_write_shu(2,4,11);   //b
 402   1              LCD_write_shu(3,4,13);   //d
 403   1              LCD_write_shu(4,4,25);   //p
 404   1              LCD_write_shu(5,4,19);   //j
 405   1              LCD_write_shu(6,4,45);   //.
 406   1              LCD_write_shu(7,4,12);   //c
 407   1              LCD_write_shu(8,4,24);   //o
 408   1              LCD_write_shu(9,4,22);   //m    
 409   1              
 410   1              while(1)
 411   1              {
 412   2              
 413   2              }
 414   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    439    ----
   CONSTANT SIZE    =   1072    ----
   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 + -