📄 lcdpm323.txt
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\lcdpm323.o --depend=.\Obj\lcdpm323.d --device=DARMSTM --apcs=interwork -O3 -I..\..\include -I..\..\..\FWLib\library\inc -I..\..\..\USBLib\library\inc -I..\..\Config -I..\..\GUI\Core -I..\..\GUI\Font -I..\..\GUI\ConvertColor -I..\..\GUI\AntiAlias -I..\..\GUI\ConvertMono -I..\..\GUI\JPEG -I..\..\GUI\MemDev -I..\..\GUI\MultiLayer -I..\..\GUI\Widget -I..\..\GUI\WM -IC:\Keil\ARM\INC\ST\STM32F10x ..\..\GUI\ConvertColor\LCDPM323.c]
THUMB
AREA ||i.LCD_Color2Index_M323||, CODE, READONLY, ALIGN=1
LCD_Color2Index_M323 PROC
;;;33 */
;;;34 unsigned LCD_Color2Index_M323(LCD_COLOR Color) {
000000 b2c1 UXTB r1,r0
000002 b510 PUSH {r4,lr}
;;;35 unsigned r, g, b;
;;;36 r = Color & 255;
;;;37 g = (Color >> 8 ) & 255;
;;;38 b = Color >> 16;
;;;39 r = (r * 7 + 127) / 255;
000004 ebc101c1 RSB r1,r1,r1,LSL #3
000008 317f ADDS r1,r1,#0x7f
00000a 24ff MOVS r4,#0xff
00000c fbb1f3f4 UDIV r3,r1,r4
000010 f3c02207 UBFX r2,r0,#8,#8 ;37
;;;40 g = (g + 42) / 85;
000014 322a ADDS r2,r2,#0x2a
000016 2155 MOVS r1,#0x55
000018 0c00 LSRS r0,r0,#16 ;38
;;;41 b = (b * 7 + 127) / 255;
00001a ebc000c0 RSB r0,r0,r0,LSL #3
00001e 307f ADDS r0,r0,#0x7f
000020 fbb2f1f1 UDIV r1,r2,r1 ;40
000024 fbb0f0f4 UDIV r0,r0,r4
;;;42 return b + (g << 3) + (r << 5);
000028 eb0000c1 ADD r0,r0,r1,LSL #3
00002c eb001043 ADD r0,r0,r3,LSL #5
;;;43 }
000030 bd10 POP {r4,pc}
;;;44
ENDP
AREA ||i.LCD_GetIndexMask_M323||, CODE, READONLY, ALIGN=1
LCD_GetIndexMask_M323 PROC
;;;60 */
;;;61 unsigned LCD_GetIndexMask_M323(void) {
000000 20ff MOVS r0,#0xff
;;;62 return 0xff;
;;;63 }
000002 4770 BX lr
;;;64
ENDP
AREA ||i.LCD_Index2Color_M323||, CODE, READONLY, ALIGN=1
LCD_Index2Color_M323 PROC
;;;48 */
;;;49 LCD_COLOR LCD_Index2Color_M323(int Index) {
000000 f0000107 AND r1,r0,#7
;;;50 unsigned r, g, b;
;;;51 b = (Index & 7) * 255 / 7;
000004 ebc12101 RSB r1,r1,r1,LSL #8
000008 2307 MOVS r3,#7
00000a fbb1f2f3 UDIV r2,r1,r3
;;;52 g = ((Index >> 3) & 3) * 85;
00000e f3c001c1 UBFX r1,r0,#3,#2
;;;53 r = ((Index >> 5) & 7) * 255 / 7;
000012 f3c01042 UBFX r0,r0,#5,#3
000016 ebc02000 RSB r0,r0,r0,LSL #8
00001a fbb0f0f3 UDIV r0,r0,r3
00001e eb011101 ADD r1,r1,r1,LSL #4 ;52
000022 eb010181 ADD r1,r1,r1,LSL #2 ;52
;;;54 return r + (g << 8) + (((U32)b) << 16);
000026 eb002001 ADD r0,r0,r1,LSL #8
00002a eb004002 ADD r0,r0,r2,LSL #16
;;;55 }
00002e 4770 BX lr
;;;56
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -