?? lcd.asm
字號:
; Archelon URCC C 3.20 2004/05/20
; MSP430 CIF 2004/04/22
; Compiled "D:\AQ430_4K\test_R\lcd.c" Sat Nov 04 14:25:40 2006
;
.dbgseg dbg_syms
.align 0x2
.long 0x6c69662e
.long 0x65
.long 0x1
.long 0x0
.long 0x167fffe
.long 0x0
.long DBG5
.long 0x0
.long 0x0
.long 0x0
; __builtin__ unsigned short _BIS_SR(unsigned short);
; __builtin__ unsigned short _BIC_SR(unsigned short);
; __builtin__ unsigned short _BIS_SR_IRQ(unsigned short);
; __builtin__ unsigned short _BIC_SR_IRQ(unsigned short);
; __builtin__ void _DINT(void);
; __builtin__ void _EINT(void);
; __builtin__ void _NOP(void);
; __builtin__ void _OPC(const unsigned short op);
; __builtin__ short _SWPB(short);
; __builtin__ long _SWPB_LONG(long);
; __builtin__ float _SWPB_FLOAT(float);
; sfrb IE1 = (0x0000) ;
; sfrb IFG1 = (0x0002) ;
; sfrb IE2 = (0x0001) ;
; sfrb IFG2 = (0x0003) ;
; sfrw WDTCTL = (0x0120) ;
; const sfrb P1IN = (0x0020) ;
; sfrb P1OUT = (0x0021) ;
; sfrb P1DIR = (0x0022) ;
; sfrb P1IFG = (0x0023) ;
; sfrb P1IES = (0x0024) ;
; sfrb P1IE = (0x0025) ;
; sfrb P1SEL = (0x0026) ;
; const sfrb P2IN = (0x0028) ;
; sfrb P2OUT = (0x0029) ;
; sfrb P2DIR = (0x002A) ;
; sfrb P2IFG = (0x002B) ;
; sfrb P2IES = (0x002C) ;
; sfrb P2IE = (0x002D) ;
; sfrb P2SEL = (0x002E) ;
; const sfrb P3IN = (0x0018) ;
; sfrb P3OUT = (0x0019) ;
; sfrb P3DIR = (0x001A) ;
; sfrb P3SEL = (0x001B) ;
; const sfrb P4IN = (0x001C) ;
; sfrb P4OUT = (0x001D) ;
; sfrb P4DIR = (0x001E) ;
; sfrb P4SEL = (0x001F) ;
; const sfrb P5IN = (0x0030) ;
; sfrb P5OUT = (0x0031) ;
; sfrb P5DIR = (0x0032) ;
; sfrb P5SEL = (0x0033) ;
; const sfrb P6IN = (0x0034) ;
; sfrb P6OUT = (0x0035) ;
; sfrb P6DIR = (0x0036) ;
; sfrb P6SEL = (0x0037) ;
; sfrb BTCTL = (0x0040) ;
; sfrb BTCNT1 = (0x0046) ;
; sfrb BTCNT2 = (0x0047) ;
; sfrb SCFI0 = (0x0050) ;
; sfrb SCFI1 = (0x0051) ;
; sfrb SCFQCTL = (0x0052) ;
; sfrb FLL_CTL0 = (0x0053) ;
; sfrb FLL_CTL1 = (0x0054) ;
; sfrb SVSCTL = (0x0056) ;
; sfrb LCDCTL = (0x0090) ;
; sfrb LCDM1 = (0x0091) ;
; sfrb LCDM2 = (0x0092) ;
; sfrb LCDM3 = (0x0093) ;
; sfrb LCDM4 = (0x0094) ;
; sfrb LCDM5 = (0x0095) ;
; sfrb LCDM6 = (0x0096) ;
; sfrb LCDM7 = (0x0097) ;
; sfrb LCDM8 = (0x0098) ;
; sfrb LCDM9 = (0x0099) ;
; sfrb LCDM10 = (0x009A) ;
; sfrb LCDM11 = (0x009B) ;
; sfrb LCDM12 = (0x009C) ;
; sfrb LCDM13 = (0x009D) ;
; sfrb LCDM14 = (0x009E) ;
; sfrb LCDM15 = (0x009F) ;
; sfrb LCDM16 = (0x00A0) ;
; sfrb LCDM17 = (0x00A1) ;
; sfrb LCDM18 = (0x00A2) ;
; sfrb LCDM19 = (0x00A3) ;
; sfrb LCDM20 = (0x00A4) ;
; const sfrw TA0IV = (0x012E) ;
; sfrw TA0CTL = (0x0160) ;
; sfrw TA0CCTL0 = (0x0162) ;
; sfrw TA0CCTL1 = (0x0164) ;
; sfrw TA0CCTL2 = (0x0166) ;
; sfrw TA0R = (0x0170) ;
; sfrw TA0CCR0 = (0x0172) ;
; sfrw TA0CCR1 = (0x0174) ;
; sfrw TA0CCR2 = (0x0176) ;
; const sfrw TA1IV = (0x011E) ;
; sfrw TA1CTL = (0x0180) ;
; sfrw TA1CCTL0 = (0x0182) ;
; sfrw TA1CCTL1 = (0x0184) ;
; sfrw TA1CCTL2 = (0x0186) ;
; sfrw TA1CCTL3 = (0x0188) ;
; sfrw TA1CCTL4 = (0x018A) ;
; sfrw TA1R = (0x0190) ;
; sfrw TA1CCR0 = (0x0192) ;
; sfrw TA1CCR1 = (0x0194) ;
; sfrw TA1CCR2 = (0x0196) ;
; sfrw TA1CCR3 = (0x0198) ;
; sfrw TA1CCR4 = (0x019A) ;
; sfrw FCTL1 = (0x0128) ;
; sfrw FCTL2 = (0x012A) ;
; sfrw FCTL3 = (0x012C) ;
; sfrb CACTL1 = (0x0059) ;
; sfrb CACTL2 = (0x005A) ;
; sfrb CAPD = (0x005B) ;
; sfrw SIFDEBUG = (0x01B0) ;
; sfrw SIFCNT = (0x01B2) ;
; sfrw SIFPSMV = (0x01B4) ;
; sfrw SIFCTL1 = (0x01B6) ;
; sfrw SIFCTL2 = (0x01B8) ;
; sfrw SIFCTL3 = (0x01BA) ;
; sfrw SIFCTL4 = (0x01BC) ;
; sfrw SIFCTL5 = (0x01BE) ;
; sfrw SIFDACR0 = (0x01C0) ;
; sfrw SIFDACR1 = (0x01C2) ;
; sfrw SIFDACR2 = (0x01C4) ;
; sfrw SIFDACR3 = (0x01C6) ;
; sfrw SIFDACR4 = (0x01C8) ;
; sfrw SIFDACR5 = (0x01CA) ;
; sfrw SIFDACR6 = (0x01CC) ;
; sfrw SIFDACR7 = (0x01CE) ;
; sfrw SIFTSM0 = (0x01D0) ;
; sfrw SIFTSM1 = (0x01D2) ;
; sfrw SIFTSM2 = (0x01D4) ;
; sfrw SIFTSM3 = (0x01D6) ;
; sfrw SIFTSM4 = (0x01D8) ;
; sfrw SIFTSM5 = (0x01DA) ;
; sfrw SIFTSM6 = (0x01DC) ;
; sfrw SIFTSM7 = (0x01DE) ;
; sfrw SIFTSM8 = (0x01E0) ;
; sfrw SIFTSM9 = (0x01E2) ;
; sfrw SIFTSM10 = (0x01E4) ;
; sfrw SIFTSM11 = (0x01E6) ;
; sfrw SIFTSM12 = (0x01E8) ;
; sfrw SIFTSM13 = (0x01EA) ;
; sfrw SIFTSM14 = (0x01EC) ;
; sfrw SIFTSM15 = (0x01EE) ;
; sfrw SIFTSM16 = (0x01F0) ;
; sfrw SIFTSM17 = (0x01F2) ;
; sfrw SIFTSM18 = (0x01F4) ;
; sfrw SIFTSM19 = (0x01F6) ;
; sfrw SIFTSM20 = (0x01F8) ;
; sfrw SIFTSM21 = (0x01FA) ;
; sfrw SIFTSM22 = (0x01FC) ;
; sfrw SIFTSM23 = (0x01FE) ;
; void DELAY(void)
DBG3:
.long 0x414c4544
.long 0x59
.long _DELAY
.long 0x40
.long 0x1020001
.long DBG1
.long DBG7-DBG8
.long DBG9
.long DBG6
.long 0x0
.pseg lcd_code
DBG8:
.dbgseg dbg_syms
DBG1:
.long 0x66622e
.long 0x0
.long DBG8
.long 0x0
.long 0x1650001
.long 0x0
.long 0x3
.long 0x0
.long DBG10
.long 0x0
.dbgseg dbg_line
.align 0x2
DBG9:
.long DBG3
.long 0x0
.long _DELAY
.long 0x1
.long DBG12
.long 0x2
.long DBG13
.long 0x3
.long DBG14
.long 0x4
.long DBG15
.long 0x5
.long DBG16
.long 0x6
.long DBG17
.long 0x7
.pseg lcd_code
.global _DELAY
_DELAY:
; ENTRY
DBG11:
; {
DBG12:
; _NOP();
DBG13:
nop
DBG14:
; _NOP();
nop
DBG15:
; _NOP();
nop
DBG16:
; _NOP();
nop
DBG18:
DBG17:
; EXIT
ret
.dbgseg dbg_syms
.long 0x0
.long DBG19
.long 0x0
.long 0x0
.long 0x10002
.long 0x0
.long DBG20
.long 0x2
.long 0x0
.long 0x10002
.long 0x66652e
.long 0x0
.long DBG18
.long 0x0
.long 0x1650001
.long 0x0
.long 0x9
.long 0x0
.long 0x0
.long 0x0
.pseg lcd_code
DBG7:
.dbgseg dbg_syms
.long 0x414c4544
.long 0x59
.long DBG7
.long 0x0
.long 0xff0001
; }
; void WRCOM(unsigned char _COM)
DBG6:
.long 0x4f435257
.long 0x4d
.long _WRCOM
.long 0x40
.long 0x1020001
.long DBG10
.long DBG22-DBG23
.long DBG24
.long DBG21
.long 0x0
.pseg lcd_code
DBG23:
.dbgseg dbg_syms
DBG10:
.long 0x66622e
.long 0x0
.long DBG23
.long 0x0
.long 0x1650001
.long 0x0
.long 0xc
.long 0x0
.long DBG25
.long 0x0
.dbgseg dbg_line
DBG24:
.long DBG6
.long 0x0
.long _WRCOM
.long 0x1
.long DBG27
.long 0x2
.long DBG28
.long 0x5
.long DBG29
.long 0x6
.long DBG30
.long 0x7
.long DBG31
.long 0x8
.long DBG32
.long 0x9
.long DBG33
.long 0xa
.long DBG34
.long 0xb
.long DBG35
.long 0xc
.long DBG36
.long 0xd
.long DBG37
.long 0xe
.long DBG38
.long 0xf
.long DBG39
.long 0x10
.long DBG40
.long 0x11
.long DBG41
.long 0x12
.long DBG42
.long 0x13
.long DBG43
.long 0x14
.long DBG44
.long 0x15
.long DBG45
.long 0x16
.long DBG46
.long 0x17
.long DBG47
.long 0x18
.long DBG48
.long 0x19
.long DBG49
.long 0x1a
.long DBG50
.long 0x1b
.long DBG51
.long 0x1c
.long DBG52
.long 0x1d
.long DBG53
.long 0x1e
.long DBG54
.long 0x1f
.long DBG55
.long 0x20
.long DBG56
.long 0x21
.long DBG57
.long 0x22
.long DBG58
.long 0x23
.long DBG59
.long 0x24
.long DBG60
.long 0x26
.long DBG61
.long 0x28
.long DBG62
.long 0x29
.long DBG63
.long 0x2a
.long DBG64
.long 0x2b
.long DBG65
.long 0x2c
.long DBG66
.long 0x2d
.long DBG67
.long 0x2f
.long DBG68
.long 0x30
.long DBG69
.long 0x32
.long DBG70
.long 0x34
.long DBG71
.long 0x35
.long DBG72
.long 0x36
.long DBG73
.long 0x38
.long DBG74
.long 0x39
.pseg lcd_code
.global _WRCOM
_WRCOM:
push r4
push r5
push r6
DBG26:
; ENTRY
mov.b r12,r4
DBG28:
DBG27:
; _COM at argloc 0 (0x0) in reg size 1
; R7 in reg size 1
; M in reg size 1
; {
; unsigned char R7,M;
; P3OUT|= (0x0001) ;
bis.b #0x1,&0x19
DBG29:
; _NOP();
nop
DBG30:
; DELAY();
call #_DELAY
DBG31:
; P3OUT&=~( (0x0001) );
and.b #0xfe,&0x19
DBG32:
; DELAY();
call #_DELAY
DBG33:
; P3OUT&=~( (0x0004) );
mov.b #0xfb,r6
and.b r6,&0x19
DBG34:
; DELAY();
call #_DELAY
DBG35:
; _NOP();
nop
DBG36:
; P3OUT|= (0x0002) ;
bis.b #0x2,&0x19
DBG37:
; DELAY();
call #_DELAY
DBG38:
; _NOP();
nop
DBG39:
; P3OUT|= (0x0004) ;
bis.b #0x4,&0x19
DBG40:
; DELAY();
call #_DELAY
DBG41:
; _NOP();
nop
DBG42:
; P3OUT&=~( (0x0004) );
and.b r6,&0x19
DBG43:
; DELAY();
call #_DELAY
DBG44:
; _NOP();
nop
DBG45:
; P3OUT&=~( (0x0002) );
mov.b #0xfd,r5
and.b r5,&0x19
DBG46:
; DELAY();
call #_DELAY
DBG47:
; _NOP();
nop
DBG48:
; P3OUT|= (0x0004) ;
bis.b #0x4,&0x19
DBG49:
; DELAY();
call #_DELAY
DBG50:
; _NOP();
nop
DBG51:
; P3OUT&=~( (0x0004) );
and.b r6,&0x19
DBG52:
; DELAY();
call #_DELAY
DBG53:
; _NOP();
nop
DBG54:
; P3OUT&=~( (0x0002) );
and.b r5,&0x19
DBG55:
; DELAY();
call #_DELAY
DBG56:
; _NOP();
nop
DBG57:
; P3OUT|= (0x0004) ;
bis.b #0x4,&0x19
DBG58:
; DELAY();
call #_DELAY
DBG59:
; _NOP();
nop
DBG61:
DBG60:
; M=_COM;
; for (R7=0;R7<=8;R7++)
mov.b #0x0,r5
WRCOM_L1:
; {
DBG62:
; DELAY();
DBG63:
call #_DELAY
DBG64:
; _NOP();
nop
DBG65:
; P3OUT&=~( (0x0004) );
and.b #0xfb,&0x19
DBG66:
; DELAY();
call #_DELAY
DBG67:
; if ((M&0x80) ==0) P3OUT&=~( (0x0002) );
bit.b #0x80,r4
jne WRCOM_L2
and.b #0xfd,&0x19
DBG68:
jmp WRCOM_L3
WRCOM_L2:
; else P3OUT|= (0x0002) ;
bis.b #0x2,&0x19
WRCOM_L3:
; DELAY();
DBG69:
call #_DELAY
DBG70:
; P3OUT|= (0x0004) ;
bis.b #0x4,&0x19
DBG71:
; DELAY();
call #_DELAY
DBG72:
; M=M<<1;
rla.b r4
DBG73:
add.b #0x1,r5
mov.b #0x8,r12
cmp.b r5,r12
jc WRCOM_L1
DBG75:
DBG74:
; }
; EXIT
; .temp0 at stkloc 0 (0x0) size 6
pop r6
pop r5
pop r4
ret
.dbgseg dbg_syms
.long 0x0
.long DBG19
.long 0x6
.long 0x0
.long 0x10002
.long 0x0
.long DBG20
.long 0x2
.long 0x0
.long 0x10002
DBG2:
.long 0x62622e
.long 0x0
.long DBG26
.long 0x0
.long 0x1640001
.long 0x0
.long 0x1
.long 0x0
.long DBG76
.long 0x0
.long 0x4d4f435f
.long 0x0
.long 0xc0102
.long 0xc
.long 0x11ffff
.long 0x62652e
.long 0x0
.long DBG27
.long 0x0
.long 0x1640001
.long 0x0
.long 0x2
.long 0x0
.long 0x0
.long 0x0
DBG76:
.long 0x62622e
.long 0x0
.long DBG27
.long 0x0
.long 0x1640001
.long 0x0
.long 0x2
.long 0x0
.long DBG77
.long 0x0
.long 0x4d4f435f
.long 0x0
.long 0x40102
.long 0xc
.long 0x11ffff
DBG77:
.long 0x62622e
.long 0x0
.long DBG62
.long 0x0
.long 0x1640001
.long 0x0
.long 0x29
.long 0x0
.long DBG78
.long 0x0
.long 0x3752
.long 0x0
.long 0x50102
.long 0xc
.long 0x4ffff
DBG78:
.long 0x62622e
.long 0x0
.long DBG68
.long 0x0
.long 0x1640001
.long 0x0
.long 0x30
.long 0x0
.long DBG79
.long 0x0
.long 0x4d
.long 0x0
.long 0x40102
.long 0xc
.long 0x4ffff
.long 0x62652e
.long 0x0
.long DBG73
.long 0x0
.long 0x1640001
.long 0x0
.long 0x38
.long 0x0
.long 0x0
.long 0x0
.long 0x62652e
.long 0x0
.long DBG73
.long 0x0
.long 0x1640001
.long 0x0
.long 0x38
.long 0x0
.long 0x0
.long 0x0
.long 0x62652e
.long 0x0
.long DBG73
.long 0x0
.long 0x1640001
.long 0x0
.long 0x38
.long 0x0
.long 0x0
.long 0x0
DBG79:
.long 0x62622e
.long 0x0
.long DBG73
.long 0x0
.long 0x1640001
.long 0x0
.long 0x38
.long 0x0
.long DBG80
.long 0x0
.long 0x3752
.long 0x0
.long 0x50102
.long 0xc
.long 0x4ffff
.long 0x4d
.long 0x0
.long 0x40102
.long 0xc
.long 0x4ffff
.long 0x62652e
.long 0x0
.long DBG74
.long 0x0
.long 0x1640001
.long 0x0
.long 0x39
.long 0x0
.long 0x0
.long 0x0
.long 0x66652e
.long 0x0
.long DBG75
.long 0x0
.long 0x1650001
.long 0x0
.long 0x44
.long 0x0
.long 0x0
.long 0x0
.pseg lcd_code
DBG22:
.dbgseg dbg_syms
.long 0x4f435257
.long 0x4d
.long DBG22
.long 0x0
.long 0xff0001
; }
; void WRDD(unsigned char _COM)
DBG21:
.long 0x44445257
.long 0x0
.long _WRDD
.long 0x40
.long 0x1020001
.long DBG25
.long DBG82-DBG83
.long DBG84
.long DBG81
.long 0x0
.pseg lcd_code
DBG83:
.dbgseg dbg_syms
DBG25:
.long 0x66622e
.long 0x0
.long DBG83
.long 0x0
.long 0x1650001
.long 0x0
.long 0x48
.long 0x0
.long DBG85
.long 0x0
.dbgseg dbg_line
DBG84:
.long DBG21
.long 0x0
.long _WRDD
.long 0x1
.long DBG87
.long 0x2
.long DBG88
.long 0x4
.long DBG89
.long 0x5
.long DBG90
.long 0x6
.long DBG91
.long 0x7
.long DBG92
.long 0x8
.long DBG93
.long 0x9
.long DBG94
.long 0xa
.long DBG95
.long 0xb
.long DBG96
.long 0xc
.long DBG97
.long 0xd
.long DBG98
.long 0xe
.long DBG99
.long 0xf
.long DBG100
.long 0x10
.long DBG101
.long 0x11
.long DBG102
.long 0x12
.long DBG103
.long 0x13
.long DBG104
.long 0x14
.long DBG105
.long 0x15
.long DBG106
.long 0x16
.long DBG107
.long 0x17
.long DBG108
.long 0x18
.long DBG109
.long 0x19
.long DBG110
.long 0x1a
.long DBG111
.long 0x1c
.long DBG112
.long 0x1e
.long DBG113
.long 0x1f
.long DBG114
.long 0x20
.long DBG115
.long 0x21
.long DBG116
.long 0x22
.long DBG117
.long 0x23
.long DBG118
.long 0x25
.long DBG119
.long 0x26
.long DBG120
.long 0x27
.long DBG121
.long 0x29
.long DBG122
.long 0x2a
.long DBG123
.long 0x2b
.long DBG124
.long 0x2e
.long DBG125
.long 0x30
.long DBG126
.long 0x32
.long DBG127
.long 0x33
.long DBG128
.long 0x34
.long DBG129
.long 0x35
.long DBG130
.long 0x36
.long DBG131
.long 0x37
.long DBG132
.long 0x38
.pseg lcd_code
.global _WRDD
_WRDD:
push r4
push r5
DBG86:
; ENTRY
mov.b r12,r4
DBG88:
DBG87:
; _COM at argloc 0 (0x0) in reg size 1
; R6 in reg size 1
; M in reg size 1
; {
; unsigned char R6,M;
; P3OUT|= (0x0001) ;
bis.b #0x1,&0x19
DBG89:
; _NOP();
nop
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -