📄 lcd.lst
字号:
92
93 Delay(5); /* delay 50 ms */
\ 0000000A 0520 MOVS R0,#+5
\ 0000000C ........ BL Delay
94 /* Start Initial Sequence ----------------------------------------------------*/
95 LCD_WriteReg(R229,0x8000); /* Set the internal vcore voltage */
\ 00000010 5FF40041 MOVS R1,#+32768
\ 00000014 E520 MOVS R0,#+229
\ 00000016 ........ BL LCD_WriteReg
96 LCD_WriteReg(R0, 0x0001); /* Start internal OSC. */
\ 0000001A 0121 MOVS R1,#+1
\ 0000001C 0020 MOVS R0,#+0
\ 0000001E ........ BL LCD_WriteReg
97 LCD_WriteReg(R1, 0x0100); /* set SS and SM bit */
\ 00000022 5FF48071 MOVS R1,#+256
\ 00000026 0120 MOVS R0,#+1
\ 00000028 ........ BL LCD_WriteReg
98 LCD_WriteReg(R2, 0x0700); /* set 1 line inversion */
\ 0000002C 5FF4E061 MOVS R1,#+1792
\ 00000030 0220 MOVS R0,#+2
\ 00000032 ........ BL LCD_WriteReg
99 LCD_WriteReg(R3, 0x1030); /* set GRAM write direction and BGR=1. */
\ 00000036 6D49 LDR.N R1,??STM3210E_LCD_Init_0 ;; 0x1030
\ 00000038 0320 MOVS R0,#+3
\ 0000003A ........ BL LCD_WriteReg
100 LCD_WriteReg(R4, 0x0000); /* Resize register */
\ 0000003E 0021 MOVS R1,#+0
\ 00000040 0420 MOVS R0,#+4
\ 00000042 ........ BL LCD_WriteReg
101 LCD_WriteReg(R8, 0x0202); /* set the back porch and front porch */
\ 00000046 6A49 LDR.N R1,??STM3210E_LCD_Init_0+0x4 ;; 0x202
\ 00000048 0820 MOVS R0,#+8
\ 0000004A ........ BL LCD_WriteReg
102 LCD_WriteReg(R9, 0x0000); /* set non-display area refresh cycle ISC[3:0] */
\ 0000004E 0021 MOVS R1,#+0
\ 00000050 0920 MOVS R0,#+9
\ 00000052 ........ BL LCD_WriteReg
103 LCD_WriteReg(R10, 0x0000); /* FMARK function */
\ 00000056 0021 MOVS R1,#+0
\ 00000058 0A20 MOVS R0,#+10
\ 0000005A ........ BL LCD_WriteReg
104 LCD_WriteReg(R12, 0x0000); /* RGB interface setting */
\ 0000005E 0021 MOVS R1,#+0
\ 00000060 0C20 MOVS R0,#+12
\ 00000062 ........ BL LCD_WriteReg
105 LCD_WriteReg(R13, 0x0000); /* Frame marker Position */
\ 00000066 0021 MOVS R1,#+0
\ 00000068 0D20 MOVS R0,#+13
\ 0000006A ........ BL LCD_WriteReg
106 LCD_WriteReg(R15, 0x0000); /* RGB interface polarity */
\ 0000006E 0021 MOVS R1,#+0
\ 00000070 0F20 MOVS R0,#+15
\ 00000072 ........ BL LCD_WriteReg
107
108 /* Power On sequence ---------------------------------------------------------*/
109 LCD_WriteReg(R16, 0x0000); /* SAP, BT[3:0], AP, DSTB, SLP, STB */
\ 00000076 0021 MOVS R1,#+0
\ 00000078 1020 MOVS R0,#+16
\ 0000007A ........ BL LCD_WriteReg
110 LCD_WriteReg(R17, 0x0000); /* DC1[2:0], DC0[2:0], VC[2:0] */
\ 0000007E 0021 MOVS R1,#+0
\ 00000080 1120 MOVS R0,#+17
\ 00000082 ........ BL LCD_WriteReg
111 LCD_WriteReg(R18, 0x0000); /* VREG1OUT voltage */
\ 00000086 0021 MOVS R1,#+0
\ 00000088 1220 MOVS R0,#+18
\ 0000008A ........ BL LCD_WriteReg
112 LCD_WriteReg(R19, 0x0000); /* VDV[4:0] for VCOM amplitude */
\ 0000008E 0021 MOVS R1,#+0
\ 00000090 1320 MOVS R0,#+19
\ 00000092 ........ BL LCD_WriteReg
113 Delay(20); /* Dis-charge capacitor power voltage (200ms) */
\ 00000096 1420 MOVS R0,#+20
\ 00000098 ........ BL Delay
114 LCD_WriteReg(R16, 0x17B0); /* SAP, BT[3:0], AP, DSTB, SLP, STB */
\ 0000009C .... LDR.N R1,??DataTable0 ;; 0x17b0
\ 0000009E 1020 MOVS R0,#+16
\ 000000A0 ........ BL LCD_WriteReg
115 LCD_WriteReg(R17, 0x0137); /* DC1[2:0], DC0[2:0], VC[2:0] */
\ 000000A4 .... LDR.N R1,??DataTable1 ;; 0x137
\ 000000A6 1120 MOVS R0,#+17
\ 000000A8 ........ BL LCD_WriteReg
116 Delay(5); /* Delay 50 ms */
\ 000000AC 0520 MOVS R0,#+5
\ 000000AE ........ BL Delay
117 LCD_WriteReg(R18, 0x0139); /* VREG1OUT voltage */
\ 000000B2 .... LDR.N R1,??DataTable2 ;; 0x139
\ 000000B4 1220 MOVS R0,#+18
\ 000000B6 ........ BL LCD_WriteReg
118 Delay(5); /* Delay 50 ms */
\ 000000BA 0520 MOVS R0,#+5
\ 000000BC ........ BL Delay
119 LCD_WriteReg(R19, 0x1d00); /* VDV[4:0] for VCOM amplitude */
\ 000000C0 5FF4E851 MOVS R1,#+7424
\ 000000C4 1320 MOVS R0,#+19
\ 000000C6 ........ BL LCD_WriteReg
120 LCD_WriteReg(R41, 0x0013); /* VCM[4:0] for VCOMH */
\ 000000CA 1321 MOVS R1,#+19
\ 000000CC 2920 MOVS R0,#+41
\ 000000CE ........ BL LCD_WriteReg
121 Delay(5); /* Delay 50 ms */
\ 000000D2 0520 MOVS R0,#+5
\ 000000D4 ........ BL Delay
122 LCD_WriteReg(R32, 0x0000); /* GRAM horizontal Address */
\ 000000D8 0021 MOVS R1,#+0
\ 000000DA 2020 MOVS R0,#+32
\ 000000DC ........ BL LCD_WriteReg
123 LCD_WriteReg(R33, 0x0000); /* GRAM Vertical Address */
\ 000000E0 0021 MOVS R1,#+0
\ 000000E2 2120 MOVS R0,#+33
\ 000000E4 ........ BL LCD_WriteReg
124
125 /* Adjust the Gamma Curve ----------------------------------------------------*/
126 LCD_WriteReg(R48, 0x0006);
\ 000000E8 0621 MOVS R1,#+6
\ 000000EA 3020 MOVS R0,#+48
\ 000000EC ........ BL LCD_WriteReg
127 LCD_WriteReg(R49, 0x0101);
\ 000000F0 4049 LDR.N R1,??STM3210E_LCD_Init_0+0x8 ;; 0x101
\ 000000F2 3120 MOVS R0,#+49
\ 000000F4 ........ BL LCD_WriteReg
128 LCD_WriteReg(R50, 0x0003);
\ 000000F8 0321 MOVS R1,#+3
\ 000000FA 3220 MOVS R0,#+50
\ 000000FC ........ BL LCD_WriteReg
129 LCD_WriteReg(R53, 0x0106);
\ 00000100 5FF48371 MOVS R1,#+262
\ 00000104 3520 MOVS R0,#+53
\ 00000106 ........ BL LCD_WriteReg
130 LCD_WriteReg(R54, 0x0b02);
\ 0000010A 3B49 LDR.N R1,??STM3210E_LCD_Init_0+0xC ;; 0xb02
\ 0000010C 3620 MOVS R0,#+54
\ 0000010E ........ BL LCD_WriteReg
131 LCD_WriteReg(R55, 0x0302);
\ 00000112 3A49 LDR.N R1,??STM3210E_LCD_Init_0+0x10 ;; 0x302
\ 00000114 3720 MOVS R0,#+55
\ 00000116 ........ BL LCD_WriteReg
132 LCD_WriteReg(R56, 0x0707);
\ 0000011A 3949 LDR.N R1,??STM3210E_LCD_Init_0+0x14 ;; 0x707
\ 0000011C 3820 MOVS R0,#+56
\ 0000011E ........ BL LCD_WriteReg
133 LCD_WriteReg(R57, 0x0007);
\ 00000122 0721 MOVS R1,#+7
\ 00000124 3920 MOVS R0,#+57
\ 00000126 ........ BL LCD_WriteReg
134 LCD_WriteReg(R60, 0x0600);
\ 0000012A 5FF4C061 MOVS R1,#+1536
\ 0000012E 3C20 MOVS R0,#+60
\ 00000130 ........ BL LCD_WriteReg
135 LCD_WriteReg(R61, 0x020b);
\ 00000134 3349 LDR.N R1,??STM3210E_LCD_Init_0+0x18 ;; 0x20b
\ 00000136 3D20 MOVS R0,#+61
\ 00000138 ........ BL LCD_WriteReg
136
137 /* Set GRAM area -------------------------------------------------------------*/
138 LCD_WriteReg(R80, 0x0000); /* Horizontal GRAM Start Address */
\ 0000013C 0021 MOVS R1,#+0
\ 0000013E 5020 MOVS R0,#+80
\ 00000140 ........ BL LCD_WriteReg
139 LCD_WriteReg(R81, 0x00EF); /* Horizontal GRAM End Address */
\ 00000144 EF21 MOVS R1,#+239
\ 00000146 5120 MOVS R0,#+81
\ 00000148 ........ BL LCD_WriteReg
140 LCD_WriteReg(R82, 0x0000); /* Vertical GRAM Start Address */
\ 0000014C 0021 MOVS R1,#+0
\ 0000014E 5220 MOVS R0,#+82
\ 00000150 ........ BL LCD_WriteReg
141 LCD_WriteReg(R83, 0x013F); /* Vertical GRAM End Address */
\ 00000154 .... LDR.N R1,??DataTable12 ;; 0x13f
\ 00000156 5320 MOVS R0,#+83
\ 00000158 ........ BL LCD_WriteReg
142
143 LCD_WriteReg(R96, 0x2700); /* Gate Scan Line */
\ 0000015C 5FF41C51 MOVS R1,#+9984
\ 00000160 6020 MOVS R0,#+96
\ 00000162 ........ BL LCD_WriteReg
144 LCD_WriteReg(R97, 0x0001); /* NDL,VLE, REV */
\ 00000166 0121 MOVS R1,#+1
\ 00000168 6120 MOVS R0,#+97
\ 0000016A ........ BL LCD_WriteReg
145 LCD_WriteReg(R106, 0x0000); /* set scrolling line */
\ 0000016E 0021 MOVS R1,#+0
\ 00000170 6A20 MOVS R0,#+106
\ 00000172 ........ BL LCD_WriteReg
146
147 /* Partial Display Control ---------------------------------------------------*/
148 LCD_WriteReg(R128, 0x0000);
\ 00000176 0021 MOVS R1,#+0
\ 00000178 8020 MOVS R0,#+128
\ 0000017A ........ BL LCD_WriteReg
149 LCD_WriteReg(R129, 0x0000);
\ 0000017E 0021 MOVS R1,#+0
\ 00000180 8120 MOVS R0,#+129
\ 00000182 ........ BL LCD_WriteReg
150 LCD_WriteReg(R130, 0x0000);
\ 00000186 0021 MOVS R1,#+0
\ 00000188 8220 MOVS R0,#+130
\ 0000018A ........ BL LCD_WriteReg
151 LCD_WriteReg(R131, 0x0000);
\ 0000018E 0021 MOVS R1,#+0
\ 00000190 8320 MOVS R0,#+131
\ 00000192 ........ BL LCD_WriteReg
152 LCD_WriteReg(R132, 0x0000);
\ 00000196 0021 MOVS R1,#+0
\ 00000198 8420 MOVS R0,#+132
\ 0000019A ........ BL LCD_WriteReg
153 LCD_WriteReg(R133, 0x0000);
\ 0000019E 0021 MOVS R1,#+0
\ 000001A0 8520 MOVS R0,#+133
\ 000001A2 ........ BL LCD_WriteReg
154
155 /* Panel Control -------------------------------------------------------------*/
156 LCD_WriteReg(R144, 0x0010);
\ 000001A6 1021 MOVS R1,#+16
\ 000001A8 9020 MOVS R0,#+144
\ 000001AA ........ BL LCD_WriteReg
157 LCD_WriteReg(R146, 0x0000);
\ 000001AE 0021 MOVS R1,#+0
\ 000001B0 9220 MOVS R0,#+146
\ 000001B2 ........ BL LCD_WriteReg
158 LCD_WriteReg(R147, 0x0003);
\ 000001B6 0321 MOVS R1,#+3
\ 000001B8 9320 MOVS R0,#+147
\ 000001BA ........ BL LCD_WriteReg
159 LCD_WriteReg(R149, 0x0110);
\ 000001BE 5FF48871 MOVS R1,#+272
\ 000001C2 9520 MOVS R0,#+149
\ 000001C4 ........ BL LCD_WriteReg
160 LCD_WriteReg(R151, 0x0000);
\ 000001C8 0021 MOVS R1,#+0
\ 000001CA 9720 MOVS R0,#+151
\ 000001CC ........ BL LCD_WriteReg
161 LCD_WriteReg(R152, 0x0000);
\ 000001D0 0021 MOVS R1,#+0
\ 000001D2 9820 MOVS R0,#+152
\ 000001D4 ........ BL LCD_WriteReg
162
163 /* Set GRAM write direction and BGR = 1 */
164 /* I/D=01 (Horizontal : increment, Vertical : decrement) */
165 /* AM=1 (address is updated in vertical writing direction) */
166 LCD_WriteReg(R3, 0x1018);
\ 000001D8 .... LDR.N R1,??DataTable13 ;; 0x1018
\ 000001DA 0320 MOVS R0,#+3
\ 000001DC ........ BL LCD_WriteReg
167
168 LCD_WriteReg(R7, 0x0173); /* 262K color and display ON */
\ 000001E0 .... LDR.N R1,??DataTable5 ;; 0x173
\ 000001E2 0720 MOVS R0,#+7
\ 000001E4 ........ BL LCD_WriteReg
169 }
\ 000001E8 00BD POP {PC} ;; return
\ 000001EA 00BF
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -