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

📄 lcd_grf.lst

📁 关键字:LCD液晶显示屏 串行 并行 ST7920 RT12864
💻 LST
📖 第 1 页 / 共 2 页
字号:
 185          ** 函数功能:图形方式下画点函数
 186          ** 入口参数:x:横坐标(0-127)
 187                       y:纵坐标(0-63)
 188          ** 出口参数:无
 189          ***********************************************************************************************/
 190          void Draw_point(uint8 x,uint8 y)
 191          {
 192   1              uint8 i,j,z,k,L,H;
 193   1          uint16 temp=0x8000;
 194   1          i=x/16;
 195   1          j=x%16;
 196   1          
 197   1              z=y/32;
 198   1          k=y%32;
 199   1          
 200   1          temp>>=j;
 201   1          L=(uint8)temp;
 202   1          H=(uint8)(temp>>8);
 203   1          
 204   1              LCD_Write(0,0x80+k);
 205   1              LCD_Write(0,0x80+z*8+i);
 206   1              LCD_Write(1,H);
 207   1              LCD_Write(1,L);
 208   1      
 209   1      }
 210          
 211          /***********************************************************************************************
 212          ** 函数名称:Draw_x()
 213          ** 函数功能:图形方式下画横坐标线函数
 214          ** 入口参数:y:纵坐标(0-63)
 215          ** 出口参数:无
 216          ** 特别说明:要先画纵坐标轴,再画横坐标轴
 217          ***********************************************************************************************/
 218          void Draw_x(uint8 y)
 219          {
 220   1              uint8 z,k,m;
 221   1              z=y/32;
 222   1          k=y%32;
 223   1              
 224   1              for(m=0;m<8;m++)
 225   1          { 
 226   2                      LCD_Write(0,0x80+k);
 227   2                      LCD_Write(0,0x80+z*8+m);
 228   2                      LCD_Write(1,0xff);
 229   2                      LCD_Write(1,0xff);
 230   2          }
 231   1      }
 232          
 233          /***********************************************************************************************
 234          ** 函数名称:Draw_y()
 235          ** 函数功能:图形方式下画横坐标线函数
 236          ** 入口参数:x:横坐标(0-127)
 237          ** 出口参数:无
 238          ** 特别说明:要先画纵坐标轴,再画横坐标轴
 239          ***********************************************************************************************/
 240          void Draw_y(uint8 x)
 241          {
C51 COMPILER V7.06   LCD_GRF                                                               05/31/2007 03:15:51 PAGE 5   

 242   1              uint8 i,m;
 243   1          
 244   1              i=x/16;
 245   1          
 246   1              for(m=0;m<32;m++)
 247   1          { 
 248   2                      LCD_Write(0,0x80+m);
 249   2              LCD_Write(0,0x80+i);
 250   2              //      LCD_Write(1,0x00);
 251   2                      LCD_Write(1,0x80);
 252   2          }
 253   1                      
 254   1              for(m=0;m<32;m++)
 255   1          { 
 256   2                      LCD_Write(0,0x80+m);
 257   2                      LCD_Write(0,0x88+i);
 258   2              //      LCD_Write(1,0x00);
 259   2                      LCD_Write(1,0x80);
 260   2          }
 261   1      }
 262          
 263          
 264          /***********************************************************************************************
 265          ** 函数名称:Draw_letter()
 266          ** 函数功能:图形方式下写数字字母函数
 267          ** 入口参数:x:横坐标(0-127)
 268                       y:纵坐标(0-63)
 269                                   databuf1:需要写的第一个字
 270                                   databuf2:需要写的第二个字
 271          ** 出口参数:无
 272          ***********************************************************************************************/
 273          void Draw_letter(uint8 x,uint8 y,uint8 *databuf1,uint8 *databuf2)
 274          {
 275   1              uint8 m,i,z,k;
 276   1              i=x/16;  
 277   1              z=y/32;
 278   1          k=y%32;
 279   1      
 280   1              for(m=0;m<8;m++)
 281   1          { 
 282   2                      LCD_Write(0,0x80+k+m);
 283   2                      LCD_Write(0,0x80+z*8+i);
 284   2                      LCD_Write(1,databuf1[m]);
 285   2              LCD_Write(1,databuf2[m]);
 286   2          }
 287   1      }
 288          
 289          
 290          
 291          
 292          
 293          
 294          
 295          
 296          
 297          
 298          
 299          
 300          
 301          
 302          
 303          
C51 COMPILER V7.06   LCD_GRF                                                               05/31/2007 03:15:51 PAGE 6   

 304          
 305          
 306          
 307          
 308          
 309          
 310          
 311          
 312          
 313          
 314          
 315          
 316          
 317          
 318          
 319          
 320          
 321          
 322          
 323          
 324          
 325          
 326          
 327          
 328          
 329          
 330          
 331          
 332          
 333          /*先不要用该函数*/
 334          void Draw_pointxy(uint8 x,uint8 y)
 335          {
 336   1              uint8 i,j,z,k,L,H;
 337   1          uint16 temp=0x8000;
 338   1          i=x/16;
 339   1          j=x%16;
 340   1          
 341   1              z=y/32;
 342   1          k=y%32;
 343   1         // l=h=0x00;
 344   1          temp>>=j;
 345   1          L=(uint8)temp;
 346   1          H=(uint8)(temp>>8);
 347   1          L|=l;
 348   1              H|=h;
 349   1      
 350   1              LCD_Write(0,0x80+k);
 351   1              LCD_Write(0,0x80+z*8+i);
 352   1              LCD_Write(1,H);
 353   1              LCD_Write(1,L);
 354   1              l=L;
 355   1              h=H;
 356   1      
 357   1      
 358   1      }
 359          
 360          
 361          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    940    ----
C51 COMPILER V7.06   LCD_GRF                                                               05/31/2007 03:15:51 PAGE 7   

   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =      2      33
   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 + -