📄 lcm_disp.lst
字号:
C51 COMPILER V7.50 LCM_DISP 04/22/2008 10:18:48 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE LCM_DISP
OBJECT MODULE PLACED IN LCM_DISP.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE LCM_DISP.c OPTIMIZE(2,SPEED) BROWSE INTVECTOR(0X8000) DEFINE(MONITOR51) DEB
-UG OBJECTEXTEND
line level source
1 /***********************************************************************
2 * 文件名:LCM_DISP.C
3 * 功能:DP_51PRO实验仪图形液晶显示实验。先在屏幕上的随机位置显示随机数字(0--9),
4 * 然后调用画直线函数以屏幕中心为中点画对称的直线,最后显示一个简单的窗口。
5 ***********************************************************************/
6 #include "CONFIG.H"
7
8 /***********************************************************************
9 * 名称:DelayS()
10 * 功能:长软件延时。
11 * 入口参数:delayno 延时时间控制
12 ***********************************************************************/
13 void DelayS(uint16 delayno)
14 { uint16 i;
15 1
16 1 for(; delayno>0; delayno--)
17 1 { for(i=0; i<1000; i++);
18 2 }
19 1 }
20
21
22
23 /***************************************************************
24 * 名称:main()
25 * 功能:主函数,初始化图形液晶模块,在屏幕上的随机位置显示随机数字(0--9),
26 * 然后调用画直线函数以屏幕中心为中点画对称的直线,最后显示一个简单
27 * 的窗口。
28 ***************************************************************/
29 void main(void)
30 { uint8 i;
31 1 uint8 bak;
32 1
33 1 while(1)
34 1 { LCM_DispIni(); // 初始化图形液晶模块
35 2 /* 提示加载程序,即显示"Load..." */
36 2 LCM_DispStr(6, 3, "Load" );
37 2 for(i=0; i<5; i++)
38 2 { LCM_DispChar(6, i+7, '.');
39 3 DelayS(10);
40 3 }
41 2
42 2 /* 数字显示演示 */
43 2 srand(168); // 初始化随机种子
44 2 LCM_DispClr();
45 2 for(i=0; i<250; i++)
46 2 { uint8 x, y;
47 3
48 3 x = rand()&0x07; // 取得随机显示位置
49 3 y = rand()&0x0f;
50 3 bak = rand()%10 + '0'; // 取利随机显示数字'0'--'9'
51 3 LCM_DispChar(x, y, bak);
52 3 DelayS(2);
53 3 }
54 2
C51 COMPILER V7.50 LCM_DISP 04/22/2008 10:18:48 PAGE 2
55 2 #define CENTER_X 64
56 2 #define CENTER_Y 32
57 2 /* 直线演示。由于直线要基于中心点,具有对称性,所以只要取出第一个点,
58 2 即可推出这条直线。这样做同样达到不同角度的目的。
59 2 */
60 2 LCM_DispClr();
61 2 for(i=0; i<250; i++)
62 2 { uint8 x0, y0;
63 3 uint8 x1, y1;
64 3
65 3 /* 取第一个点坐标 */
66 3 x0 = rand()&0x7f; // 取得随机起点
67 3 y0 = rand()&0x3f;
68 3
69 3 /* 计算出中心对称点 */
70 3 x1 = 2*CENTER_X - x0;
71 3 y1 = 2*CENTER_Y - y0;
72 3
73 3 Line(x0, y0, x1, y1, 1);
74 3 DelayS(5);
75 3 }
76 2
77 2 /* 画窗口演示 */
78 2 LCM_DispClr();
79 2 Rectangle(0, 0, 127, 63, 1); // 显示窗口
80 2 HLine(0, 10, 127, 1);
81 2 RLine(10, 0, 10, 1);
82 2 Line(0, 0, 10, 10, 1);
83 2 Line(10, 0, 0, 10, 1);
84 2 RLine(120, 10, 63, 1); // 显示滚动条
85 2 RectangleFill(120, 20, 127, 30, 1);
86 2 LCM_DispStr(4, 4, "DP-51PRO" ); // 在窗口中显示内容
87 2 LCM_DispStr(5, 1, "www.zlgmcu.com" );
88 2 DelayS(1500);
89 2 } // end of while(1) ...
90 1 }
91
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 386 ----
CONSTANT SIZE = 29 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 10
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 + -