📄 text1.lst
字号:
C51 COMPILER V8.02 TEXT1 02/05/2010 01:27:57 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg52.h>
2
3 sfr16 DPTR=0x82;
4
5 sbit A0 = P3^7; //数据/命令切换
6 sbit RES = P3^4; //复位
7 sbit WRB = P3^6; //写控制
8 sbit RDB =P3^5; //读控制
9 sbit CS_MAIN=P3^3;
10
11 void delayms(int count) // /* X10ms */
12 {
13 1 int i,j;
14 1 for(i=0;i<count;i++)
15 1 for(j=0;j<100;j++);
16 1 }
17
18
19 void main_Write_COM( int CH) //8位数据接口发送数据
20 {
21 1 A0=0;
22 1 CS_MAIN =0;
23 1 DPTR=CH;
24 1 P2=DPH;
25 1 WRB=0;
26 1 WRB=1;
27 1 P2=DPL;
28 1 WRB=0;
29 1 WRB=1;
30 1 CS_MAIN =1;
31 1 }
32
33
34 void main_Write_DATA(int DH) //8位数据接口发送数据
35 {
36 1 A0=1;
37 1 CS_MAIN =0;
38 1 DPTR=DH;
39 1 P2=DPH;
40 1 WRB=0;
41 1 WRB=1;
42 1 P2=DPL;
43 1 WRB=0;
44 1 WRB=1;
45 1 CS_MAIN =1;
46 1 }
47
48
49 void main_W_com_data( int com1,dat1)
50 {
51 1 main_Write_COM(com1);
52 1 main_Write_DATA(dat1);
53 1 }
54
55
C51 COMPILER V8.02 TEXT1 02/05/2010 01:27:57 PAGE 2
56 void address_set(unsigned int x1,unsigned int y1,unsigned int x2,unsigned int y2)
57 {
58 1 main_W_com_data(0x0020,x1);//设置X坐标位置
59 1 main_W_com_data(0x0021,y1);//设置Y坐标位置
60 1 main_W_com_data(0x0050,x1); //开始X
61 1 main_W_com_data(0x0052,y1); //开始Y
62 1 main_W_com_data(0x0051,x2); //结束X
63 1 main_W_com_data(0x0053,y2); //结束Y
64 1 main_Write_COM(0x0022);
65 1 }
66
67 void main_init(void)
68 {
69 1
70 1 RES=1;
71 1 delayms(5);
72 1 RES=0;
73 1 delayms(10);
74 1 RES=1;
75 1 delayms(20);
76 1
77 1
78 1 //************* Start Initial Sequence **********//
79 1 main_Write_COM(0x00E5); main_Write_DATA(0x78F0); // set SRAM internal timing
80 1 main_Write_COM(0x0001); main_Write_DATA(0x0100); // set SS and SM bit
81 1 main_Write_COM(0x0002); main_Write_DATA(0x0700); // set 1 line inversion
82 1 main_Write_COM(0x0003); main_Write_DATA(0x1030); // set GRAM write direction and BGR=1.
83 1 main_Write_COM(0x0004); main_Write_DATA(0x0000); // Resize register
84 1 main_Write_COM(0x0008); main_Write_DATA(0x0207); // set the back porch and front porch
85 1 main_Write_COM(0x0009); main_Write_DATA(0x0000); // set non-display area refresh cycle ISC[3:0]
86 1 main_Write_COM(0x000A); main_Write_DATA(0x0000); // FMARK function
87 1 main_Write_COM(0x000C); main_Write_DATA(0x0000); // RGB interface setting
88 1 main_Write_COM(0x000D); main_Write_DATA(0x0000); // Frame marker Position
89 1 main_Write_COM(0x000F); main_Write_DATA(0x0000); // RGB interface polarity
90 1 //*************Power On sequence ****************//
91 1 main_Write_COM(0x0010); main_Write_DATA(0x0000); // SAP, BT[3:0], AP, DSTB, SLP, STB
92 1 main_Write_COM(0x0011); main_Write_DATA(0x0007); // DC1[2:0], DC0[2:0], VC[2:0]
93 1 main_Write_COM(0x0012); main_Write_DATA(0x0000); // VREG1OUT voltage
94 1 main_Write_COM(0x0013); main_Write_DATA(0x0000); // VDV[4:0] for VCOM amplitude
95 1 main_Write_COM(0x0007); main_Write_DATA(0x0001);
96 1 delayms(200); // Dis-charge capacitor power voltage
97 1 main_Write_COM(0x0010); main_Write_DATA(0x1090); // 1490//SAP, BT[3:0], AP, DSTB, SLP, STB
98 1 main_Write_COM(0x0011); main_Write_DATA(0x0227); // DC1[2:0], DC0[2:0], VC[2:0]
99 1 delayms(50); // Delay 50ms
100 1 main_Write_COM(0x0012); main_Write_DATA(0x001F); //001C// Internal reference voltage= Vci;
101 1 delayms(50); // Delay 50ms
102 1 main_Write_COM(0x0013); main_Write_DATA(0x1500); //0x1000//1400 Set VDV[4:0] for VCOM amplitude 1A00
103 1 main_Write_COM(0x0029); main_Write_DATA(0x0027); //0x0012 //001a Set VCM[5:0] for VCOMH //0x0025 0034
104 1 main_Write_COM(0x002B); main_Write_DATA(0x000D); // Set Frame Rate 000C
105 1 delayms(50); // Delay 50ms
106 1 main_Write_COM(0x0020); main_Write_DATA(0x0000); // GRAM horizontal Address
107 1 main_Write_COM(0x0021); main_Write_DATA(0x0000); // GRAM Vertical Address
108 1 // ----------- Adjust the Gamma Curve ----------//
109 1 main_Write_COM(0x0030); main_Write_DATA(0x0000);
110 1 main_Write_COM(0x0031); main_Write_DATA(0x0707);
111 1 main_Write_COM(0x0032); main_Write_DATA(0x0307);
112 1 main_Write_COM(0x0035); main_Write_DATA(0x0200);
113 1 main_Write_COM(0x0036); main_Write_DATA(0x0008);//0207
114 1 main_Write_COM(0x0037); main_Write_DATA(0x0004);//0306
115 1 main_Write_COM(0x0038); main_Write_DATA(0x0000);//0102
116 1 main_Write_COM(0x0039); main_Write_DATA(0x0707);//0707
117 1 main_Write_COM(0x003C); main_Write_DATA(0x0002);//0702
C51 COMPILER V8.02 TEXT1 02/05/2010 01:27:57 PAGE 3
118 1 main_Write_COM(0x003D); main_Write_DATA(0x1D04);//1604
119 1
120 1 //------------------ Set GRAM area ---------------//
121 1 main_Write_COM(0x0050); main_Write_DATA(0x0000); // Horizontal GRAM Start Address
122 1 main_Write_COM(0x0051); main_Write_DATA(0x00EF); // Horizontal GRAM End Address
123 1 main_Write_COM(0x0052); main_Write_DATA(0x0000); // Vertical GRAM Start Address
124 1 main_Write_COM(0x0053); main_Write_DATA(0x013F); // Vertical GRAM Start Address
125 1 main_Write_COM(0x0060); main_Write_DATA(0xA700); // Gate Scan Line
126 1 main_Write_COM(0x0061); main_Write_DATA(0x0001); // NDL,VLE, REV
127 1 main_Write_COM(0x006A); main_Write_DATA(0x0000); // set scrolling line
128 1 //-------------- Partial Display Control ---------//
129 1 main_Write_COM(0x0080); main_Write_DATA(0x0000);
130 1 main_Write_COM(0x0081); main_Write_DATA(0x0000);
131 1 main_Write_COM(0x0082); main_Write_DATA(0x0000);
132 1 main_Write_COM(0x0083); main_Write_DATA(0x0000);
133 1 main_Write_COM(0x0084); main_Write_DATA(0x0000);
134 1 main_Write_COM(0x0085); main_Write_DATA(0x0000);
135 1 //-------------- Panel Control -------------------//
136 1 main_Write_COM(0x0090); main_Write_DATA(0x0010);
137 1 main_Write_COM(0x0092); main_Write_DATA(0x0600);
138 1 main_Write_COM(0x0007); main_Write_DATA(0x0133); // 262K color and display ON
139 1
140 1 }
141
142 void Pant(unsigned int color)
143 {
144 1 int i,j;
145 1 address_set(0,0,240,320);
146 1
147 1 for(i=0;i<320;i++)
148 1 {
149 2 for (j=0;j<240;j++)
150 2 {
151 3 main_Write_DATA(color);
152 3 }
153 2
154 2 }
155 1
156 1
157 1 }
158
159 main()
160 {
161 1
162 1 main_init(); //tft初始化
163 1 while(1)
164 1 {
165 2 Pant(0xf800); //红色
166 2 Pant(0X07E0); //绿色
167 2 Pant(0x001f); //蓝色
168 2 }
169 1
170 1
171 1
172 1 }
173
174
175
176
177
178
179
C51 COMPILER V8.02 TEXT1 02/05/2010 01:27:57 PAGE 4
180
181
182
183
184
185
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 766 ----
CONSTANT SIZE = ---- ----
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 + -