📄 lcm.lst
字号:
276
277 //*********************************************************************************
278 //*函数名称:void Parallel_DisplayStrings_WithAddress(uchar ucAdd,uchar code *p) *
279 //*函数功能:在(文本区)ucAdd指定的位置显示一串字符(或是汉字或是ASCII或是两者混合) *
280 //*形式参数:uchar ucAdd,uchar code *p *
281 //*形参说明:指定的位置,要显示的字符串 *
282 //*地址必须是:80H~8FH,90H~9FH,88H~AFH,98H~BFH *
283 //*返回参数:无 *
284 //*使用说明:使用之前要初始化液晶 *
285 //*********************************************************************************
286 void Parallel_DisplayStrings_WithAddress(uchar ucAdd,uchar code *p)
287 {
288 1 uchar length;
289 1 length = strlen(p);
290 1 Parallel_Write_LCD(COMMAND,BASIC_FUNCTION); //基本指令动作
291 1 Parallel_DDRAM_Address_Set(ucAdd);
292 1 for( ; length ; length -- )
293 1 Parallel_Write_LCD(DATA, *(p++));
294 1 }
295
296
297
298 //****************************************************************
299 //*函数名称:void Parallel_ImgDisplay(unsigned char code *img) *
300 //*函数功能:全屏显示128*64个象素的图形 *
301 //*形式参数:unsigned char code *img *
302 //*形参说明:要显示的图形 *
303 //*液晶屏坐标说明: *
C51 COMPILER V8.02 LCM 06/09/2007 19:54:48 PAGE 6
304 //* _______________________________________________ *
305 //* |(0,0) (7,0) | *
306 //* | | *
307 //* | | *
308 //* |(0,31) (7,31)| *
309 //* |(8,0) (15,0)| *
310 //* | | *
311 //* | | *
312 //* |(8,31) (15,31)| *
313 //* |______________________________________________| *
314 // *
315 //返回参数:无 *
316 //使用说明:此函数适用于RT12864-4M型液晶 *
317 //****************************************************************
318 void Parallel_ImgDisplay(unsigned char code *img)
319 {
320 1 uchar i,j;
321 1 Parallel_Graph_Mode_Set(0x01); //先关闭图形显示功能
322 1 for(j=0;j<32;j++)
323 1 {
324 2 for(i=0;i<8;i++)
325 2 {
326 3 Parallel_Write_LCD(COMMAND,0x80+j); //设定垂直坐标
327 3 Parallel_Write_LCD(COMMAND,0x80+i); //设定水平坐标
328 3 Parallel_Write_LCD(DATA,img[j*16+i*2]); //放入数据高字节
329 3 Parallel_Write_LCD(DATA,img[j*16+i*2+1]); //放入数据低字节
330 3 }
331 2 }
332 1 for(j=32;j<64;j++)
333 1 {
334 2 for(i=0;i<8;i++)
335 2 {
336 3 Parallel_Write_LCD(COMMAND,0x80+j-32);
337 3 Parallel_Write_LCD(COMMAND,0x88+i);
338 3 Parallel_Write_LCD(DATA,img[j*16+i*2]);
339 3 Parallel_Write_LCD(DATA,img[j*16+i*2+1]);
340 3 }
341 2 }
342 1 Parallel_Graph_Mode_Set(0x00);//最后打开图形显示功能
343 1 }
344
345
346
347 //******************************************************************************
348 //*函数名称:void Parallel_ImgDisplayCharacter(uchar x,uchar y,uchar code *img) *
349 //*函数功能:使用绘图的方法,在(x,y)处画一个16*16点阵的图案,也可以是字符 *
350 //*形式参数:uchar x,uchar y,uchar code *img *
351 //* x取值范围:0~15 *
352 //* y取值范围:0~32 (针对RT12864-4M型液晶) *
353 //*形参说明:坐标水平位置,坐标垂直位置,要显示的图形 *
354 //*液晶屏坐标说明: *
355 //* _______________128个象素______________________ *
356 //* |(0,0) (7,0)| *
357 //* | | *
358 //* 6 | | *
359 //* 4 |(0,31) (7,31)| *
360 //* 个 |(8,0) (15,0)| *
361 //* 象 | | *
362 //* 素 | | *
363 //* |(8,31)________________________________(15,31)| *
364 //* *
365 //*返回参数:无 *
C51 COMPILER V8.02 LCM 06/09/2007 19:54:48 PAGE 7
366 //*使用说明:此函数适用于RT12864-4M型液晶 *
367 //******************************************************************************
368 void Parallel_ImgDisplayCharacter(uchar x,uchar y,uchar code *img)
369 {
370 1 uchar i;
371 1 Parallel_Graph_Mode_Set(0x01); //先关闭图形显示功能
372 1 Parallel_Write_LCD(COMMAND,EXTEND_FUNCTION);
373 1 for(i=0;i<16;i++)
374 1 {
375 2
376 2 // Parallel_Write_LCD(COMMAND,0x80+y+i);
377 2 //Parallel_Write_LCD(COMMAND,0x80+x);
378 2 Parallel_GDRAM_Address_Set(0x80+y+i);
379 2 Parallel_GDRAM_Address_Set(0x80+x);
380 2 Parallel_Write_LCD(DATA,img[i*2]);
381 2 Parallel_Write_LCD(DATA,img[i*2+1]);
382 2 }
383 1 Parallel_Graph_Mode_Set(0x00); //最后打开图形显示功能
384 1 }
385
386
387
388 void main(void)
389 {
390 1 Parallel_Init_LCD();
391 1 while(1)
392 1 {
393 2
394 2 //Parallel_DisplayStrings_WithAddress(0x80,Tab1);
395 2 //Parallel_DisplayStrings_WithAddress(0x90,Tab2);
396 2 Parallel_DisplayStrings_WithAddress(0x88,Tab3);
397 2 Parallel_DisplayStrings_WithAddress(0x98,Tab4);
398 2 //Parallel_ImgDisplay(Tab5);
399 2 //Parallel_ImgDisplayCharacter(2,8,Tab1);
400 2 //Parallel_ImgDisplay(Tab5);
401 2 }
402 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 528 ----
CONSTANT SIZE = 70 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 9
IDATA SIZE = ---- ----
BIT SIZE = ---- 3
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -