📄 main.lis
字号:
.module MAIN.C
.area data(ram, con, rel)
0000 _Color1::
0000 .blkb 1
.area idata
0000 00 .byte 0
.area data(ram, con, rel)
0001 .dbfile E:\电子\ICCAVR\6610ME~1/lcd6610.c
0001 .dbsym e Color1 _Color1 c
0001 _Color2::
0001 .blkb 1
.area idata
0001 00 .byte 0
.area data(ram, con, rel)
0002 .dbfile E:\电子\ICCAVR\6610ME~1/lcd6610.c
0002 .dbsym e Color2 _Color2 c
0002 _backgroundColor::
0002 .blkb 1
.area idata
0002 03 .byte 3
.area data(ram, con, rel)
0003 .dbfile E:\电子\ICCAVR\6610ME~1/lcd6610.c
0003 .dbsym e backgroundColor _backgroundColor c
0003 _b2::
0003 .blkb 1
.area idata
0003 00 .byte 0
.area data(ram, con, rel)
0004 .dbfile E:\电子\ICCAVR\6610ME~1/lcd6610.c
0004 .dbsym e b2 _b2 c
0004 _memAccessCtrl::
0004 .blkb 1
.area idata
0004 00 .byte 0
.area data(ram, con, rel)
0005 .dbfile E:\电子\ICCAVR\6610ME~1/lcd6610.c
0005 .dbsym e memAccessCtrl _memAccessCtrl c
0005 _zx::
0005 .blkb 1
.area idata
0005 00 .byte 0
.area data(ram, con, rel)
0006 .dbfile E:\电子\ICCAVR\6610ME~1/lcd6610.c
0006 .dbsym e zx _zx c
0006 _zy::
0006 .blkb 1
.area idata
0006 00 .byte 0
.area data(ram, con, rel)
0007 .dbfile E:\电子\ICCAVR\6610ME~1/lcd6610.c
0007 .dbsym e zy _zy c
.area text(rom, con, rel)
0000 .dbfile E:\电子\ICCAVR\6610ME~1/lcd6610.c
0000 .dbfunc e sc_cbk _sc_cbk fV
0000 ; tm -> y+8
0000 ; b -> y+6
0000 ; g -> R22
0000 ; r -> R20
.even
0000 _sc_cbk::
0000 00D0 rcall push_gset2
0002 622F mov R22,R18
0004 402F mov R20,R16
0006 2297 sbiw R28,2
0008 .dbline -1
0008 .dbline 27
0008 ; //ICC-AVR application builder : 2004-11-15 下午 07:08:16
0008 ; // Target : M8
0008 ; // Crystal: 8.0000Mhz
0008 ;
0008 ; #include <iom8v.h>
0008 ; #include <macros.h>
0008 ; #include "G6610.h"
0008 ; #include "lcd6610.c"
0008 ;
0008 ; #define csl asm("cbi 0x12,1") //PB0
0008 ; #define csh asm("sbi 0x12,1")
0008 ;
0008 ; #define restl asm("cbi 0x12,0") //PB4
0008 ; #define resth asm("sbi 0x12,0")
0008 ;
0008 ; #define sclkl asm("cbi 0x18,5") //PB5
0008 ; #define sclkh asm("sbi 0x18,5")
0008 ;
0008 ; #define sdatal asm("cbi 0x18,3") //PB3
0008 ; #define sdatah asm("sbi 0x18,3")
0008 ;
0008 ;
0008 ; void port_init(void)
0008 ; {
0008 ; PORTB = 0x00;
0008 ; DDRB = 0xFF;
0008 ; PORTC = 0x7F; //m103 output only
0008 .dbline 27
0008 2E80 ldd R2,y+6
000A 3324 clr R3
000C 3982 std y+1,R3
000E 2882 std y+0,R2
0010 262F mov R18,R22
0012 3327 clr R19
0014 042F mov R16,R20
0016 1127 clr R17
0018 4FDB rcall _RGB
001A 1801 movw R2,R16
001C 2FE0 ldi R18,15
001E 30E0 ldi R19,0
0020 0885 ldd R16,y+8
0022 1985 ldd R17,y+9
0024 00D0 rcall lsl16
0026 202A or R2,R16
0028 312A or R3,R17
002A 30920700 sts _cbk+1,R3
002E 20920600 sts _cbk,R2
0032 .dbline -2
0032 .dbline 29
0032 ; DDRC = 0x00;
0032 ; PORTD = 0x00;
0032 L2:
0032 2296 adiw R28,2
0034 00D0 rcall pop_gset2
0036 .dbline 0 ; func end
0036 0895 ret
0038 .dbsym l tm 8 i
0038 .dbsym l b 6 c
0038 .dbsym r g 22 c
0038 .dbsym r r 20 c
0038 .dbend
0038 .dbfunc e sc_cfg _sc_cfg fV
0038 ; tm -> y+8
0038 ; b -> y+6
0038 ; g -> R22
0038 ; r -> R20
.even
0038 _sc_cfg::
0038 00D0 rcall push_gset2
003A 622F mov R22,R18
003C 402F mov R20,R16
003E 2297 sbiw R28,2
0040 .dbline -1
0040 .dbline 32
0040 ; DDRD = 0xFF;
0040 ; }
0040 ;
0040 .dbline 33
0040 ; //call this routine to initialise all peripherals
0040 2E80 ldd R2,y+6
0042 3324 clr R3
0044 3982 std y+1,R3
0046 2882 std y+0,R2
0048 262F mov R18,R22
004A 3327 clr R19
004C 042F mov R16,R20
004E 1127 clr R17
0050 33DB rcall _RGB
0052 1801 movw R2,R16
0054 2FE0 ldi R18,15
0056 30E0 ldi R19,0
0058 0885 ldd R16,y+8
005A 1985 ldd R17,y+9
005C 00D0 rcall lsl16
005E 202A or R2,R16
0060 312A or R3,R17
0062 30920500 sts _cfg+1,R3
0066 20920400 sts _cfg,R2
006A .dbline -2
006A .dbline 35
006A ; void init_devices(void)
006A ; {
006A L3:
006A 2296 adiw R28,2
006C 00D0 rcall pop_gset2
006E .dbline 0 ; func end
006E 0895 ret
0070 .dbsym l tm 8 i
0070 .dbsym l b 6 c
0070 .dbsym r g 22 c
0070 .dbsym r r 20 c
0070 .dbend
0070 .dbfunc e sc_cfr _sc_cfr fV
0070 ; tm -> y+8
0070 ; b -> y+6
0070 ; g -> R22
0070 ; r -> R20
.even
0070 _sc_cfr::
0070 00D0 rcall push_gset2
0072 622F mov R22,R18
0074 402F mov R20,R16
0076 2297 sbiw R28,2
0078 .dbline -1
0078 .dbline 38
0078 ; //stop errant interrupts until set up
0078 ; CLI(); //disable all interrupts
0078 ; port_init();
0078 .dbline 39
0078 ;
0078 2E80 ldd R2,y+6
007A 3324 clr R3
007C 3982 std y+1,R3
007E 2882 std y+0,R2
0080 262F mov R18,R22
0082 3327 clr R19
0084 042F mov R16,R20
0086 1127 clr R17
0088 17DB rcall _RGB
008A 1801 movw R2,R16
008C 2FE0 ldi R18,15
008E 30E0 ldi R19,0
0090 0885 ldd R16,y+8
0092 1985 ldd R17,y+9
0094 00D0 rcall lsl16
0096 202A or R2,R16
0098 312A or R3,R17
009A 30920300 sts _cfr+1,R3
009E 20920200 sts _cfr,R2
00A2 .dbline -2
00A2 .dbline 40
00A2 ; MCUCR = 0x00;
00A2 L4:
00A2 2296 adiw R28,2
00A4 00D0 rcall pop_gset2
00A6 .dbline 0 ; func end
00A6 0895 ret
00A8 .dbsym l tm 8 i
00A8 .dbsym l b 6 c
00A8 .dbsym r g 22 c
00A8 .dbsym r r 20 c
00A8 .dbend
00A8 .dbfunc e sc_csh _sc_csh fV
00A8 ; tm -> y+8
00A8 ; b -> y+6
00A8 ; g -> R22
00A8 ; r -> R20
.even
00A8 _sc_csh::
00A8 00D0 rcall push_gset2
00AA 622F mov R22,R18
00AC 402F mov R20,R16
00AE 2297 sbiw R28,2
00B0 .dbline -1
00B0 .dbline 43
00B0 ; GICR = 0x00;
00B0 ; TIMSK = 0x00; //timer interrupt sources
00B0 ; //SEI(); //re-enable interrupts
00B0 .dbline 44
00B0 ; //all peripherals are now initialised
00B0 2E80 ldd R2,y+6
00B2 3324 clr R3
00B4 3982 std y+1,R3
00B6 2882 std y+0,R2
00B8 262F mov R18,R22
00BA 3327 clr R19
00BC 042F mov R16,R20
00BE 1127 clr R17
00C0 FBDA rcall _RGB
00C2 1801 movw R2,R16
00C4 2FE0 ldi R18,15
00C6 30E0 ldi R19,0
00C8 0885 ldd R16,y+8
00CA 1985 ldd R17,y+9
00CC 00D0 rcall lsl16
00CE 202A or R2,R16
00D0 312A or R3,R17
00D2 30920100 sts _csh+1,R3
00D6 20920000 sts _csh,R2
00DA .dbline -2
00DA .dbline 45
00DA ; }
00DA L5:
00DA 2296 adiw R28,2
00DC 00D0 rcall pop_gset2
00DE .dbline 0 ; func end
00DE 0895 ret
00E0 .dbsym l tm 8 i
00E0 .dbsym l b 6 c
00E0 .dbsym r g 22 c
00E0 .dbsym r r 20 c
00E0 .dbend
00E0 .dbfunc e glcdSetPixel _glcdSetPixel fV
00E0 ; y -> R22
00E0 ; x -> y+10
.even
00E0 _glcdSetPixel::
00E0 00D0 rcall push_arg4
00E2 00D0 rcall push_gset5
00E4 622F mov R22,R18
00E6 .dbline -1
00E6 .dbline 47
00E6 ;
00E6 ; void glcdn_Delay(long ld)
00E6 .dbline 49
00E6 ; {
00E6 ; long d;
00E6 20900800 lds R2,_glcd_Clip
00EA 0A84 ldd R0,y+10
00EC 0214 cp R0,R2
00EE 18F0 brlo L12
00F0 41E0 ldi R20,1
00F2 50E0 ldi R21,0
00F4 02C0 rjmp L13
00F6 L12:
00F6 4427 clr R20
00F8 5527 clr R21
00FA L13:
00FA 20900A00 lds R2,_glcd_Clip+2
00FE 0A84 ldd R0,y+10
0100 2014 cp R2,R0
0102 20F0 brlo L14
0104 81E0 ldi R24,1
0106 90E0 ldi R25,0
0108 7C01 movw R14,R24
010A 02C0 rjmp L15
010C L14:
010C EE24 clr R14
010E FF24 clr R15
0110 L15:
0110 20900900 lds R2,_glcd_Clip+1
0114 6215 cp R22,R2
0116 20F0 brlo L16
0118 81E0 ldi R24,1
011A 90E0 ldi R25,0
011C 6C01 movw R12,R24
011E 02C0 rjmp L17
0120 L16:
0120 CC24 clr R12
0122 DD24 clr R13
0124 L17:
0124 20900B00 lds R2,_glcd_Clip+3
0128 2616 cp R2,R22
012A 20F0 brlo L18
012C 81E0 ldi R24,1
012E 90E0 ldi R25,0
0130 5C01 movw R10,R24
0132 02C0 rjmp L19
0134 L18:
0134 AA24 clr R10
0136 BB24 clr R11
0138 L19:
0138 1A01 movw R2,R20
013A 2E20 and R2,R14
013C 3F20 and R3,R15
013E 2C20 and R2,R12
0140 3D20 and R3,R13
0142 2A20 and R2,R10
0144 3B20 and R3,R11
0146 2220 tst R2
0148 11F4 brne X0
014A 3320 tst R3
014C 29F0 breq L7
014E X0:
014E .dbline 49
014E .dbline 50
014E 262F mov R18,R22
0150 3327 clr R19
0152 0A85 ldd R16,y+10
0154 1127 clr R17
0156 E0DA rcall _point
0158 .dbline 51
0158 L7:
0158 .dbline -2
0158 .dbline 52
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -