?? ht46r24.lst
字號:
文件:HT46R24.c 盛群編譯器版本 2.86 頁次1
; 47: {
; 49: char example[]="For an example. - By xiaoqi\n";
49 0000 rombank 0 L2
49 0000 L2 .SECTION INPAGE'CODE'
49 0000 l_2:
49 0000 0086 MOV [06h],A
49 0001 _2:
49 0001 0946 RET A,70
49 0002 096F RET A,111
49 0003 0972 RET A,114
49 0004 0920 RET A,32
49 0005 0961 RET A,97
49 0006 096E RET A,110
49 0007 0920 RET A,32
49 0008 0965 RET A,101
49 0009 0978 RET A,120
49 000A 0961 RET A,97
49 000B 096D RET A,109
49 000C 0970 RET A,112
49 000D 096C RET A,108
49 000E 0965 RET A,101
49 000F 092E RET A,46
49 0010 0920 RET A,32
49 0011 092D RET A,45
49 0012 0920 RET A,32
49 0013 0942 RET A,66
49 0014 0979 RET A,121
49 0015 0920 RET A,32
49 0016 0978 RET A,120
49 0017 0969 RET A,105
49 0018 0961 RET A,97
49 0019 096F RET A,111
49 001A 0971 RET A,113
49 001B 0969 RET A,105
49 001C 090A RET A,10
49 001D 0900 RET A,0
49 001E __acsr EQU [027H]
49 001E __adcr EQU [026H]
49 001E __adrh EQU [025H]
49 001E __adrl EQU [024H]
49 001E __hdr EQU [023H]
49 001E __hsr EQU [022H]
49 001E __hcr EQU [021H]
49 001E __hadr EQU [020H]
49 001E __pwm3 EQU [01dH]
49 001E __pwm2 EQU [01cH]
49 001E __pwm1 EQU [01bH]
49 001E __pwm0 EQU [01aH]
49 001E __pfc EQU [029H]
49 001E __pf EQU [028H]
49 001E __pdc EQU [019H]
49 001E __pd EQU [018H]
49 001E __pcc EQU [017H]
49 001E __pc EQU [016H]
49 001E __pbc EQU [015H]
49 001E __pb EQU [014H]
文件:HT46R24.c 盛群編譯器版本 2.86 頁次2
49 001E __pac EQU [013H]
文件:HT46R24.C 盛群編譯器版本 2.86 頁次2
49 001E __pa EQU [012H]
49 001E __tmr1c EQU [011H]
49 001E __tmr1l EQU [010H]
49 001E __tmr1h EQU [0fH]
49 001E __tmr0c EQU [0eH]
49 001E __tmr0l EQU [0dH]
49 001E __tmr0h EQU [0cH]
49 001E __intc1 EQU [01eH]
49 001E __intc0 EQU [0bH]
49 001E __status EQU [0aH]
49 001E __tblh EQU [08H]
49 001E __tblp EQU [07H]
49 001E __pcl EQU [06H]
49 001E __acc EQU [05H]
49 001E __bp EQU [04H]
49 001E __mp1 EQU [03H]
49 001E __iar1 EQU [02H]
49 001E __mp0 EQU [01H]
49 001E __iar0 EQU [00H]
49 0000 @MAIN .SECTION 'CODE'
49 0000 _main PROC
49 0000 begin:
49 0000 0F1D MOV A,29
49 0001 0080 E MOV RH,A
49 0002 0F00 R MOV A,OFFSET CR2
49 0003 0081 MOV [01H],A
49 0004 0F01 MOV A,1
49 0005 0080 E MOV T2,A
49 0006 ASB8:
49 0006 0700 E MOV A,T2
49 0007 0B00 R ADD A,OFFSET l_2
49 0008 2000 R CALL l_2
49 0009 0080 MOV [00H],A
49 000A 1481 INC [01H]
49 000B 1480 E INC T2
49 000C 1780 E SDZ RH
49 000D 2800 R JMP ASB8
; 51: Delay400Ms();
51 000E 2000 R CALL _Delay400Ms
; 53: LcdReset();
53 000F 2000 R CALL _LcdReset
; 54: temp = 32;
54 0010 0F20 MOV A,020h
54 0011 0080 R MOV CR1,A
; 55: ePutstr(0,0,example); // 上面一行顯示一個預(yù)定字符串
55 0012 0F00 MOV A,00h
55 0013 0080 R MOV ePutstr0,A
55 0014 0F00 MOV A,00h
55 0015 0080 R MOV ePutstr1,A
55 0016 0F00 R MOV A,OFFSET CR2
55 0017 0080 R MOV ePutstr2,A
55 0018 1F00 R CLR ePutstr2[1]
55 0019 2000 R CALL _ePutstr
文件:HT46R24.c 盛群編譯器版本 2.86 頁次3
; 57: Delay400Ms();
57 001A 2000 R CALL _Delay400Ms
; 58: Delay400Ms();
58 001B 2000 R CALL _Delay400Ms
; 59: Delay400Ms();
文件:HT46R24.C 盛群編譯器版本 2.86 頁次3
59 001C 2000 R CALL _Delay400Ms
; 60: Delay400Ms();
60 001D 2000 R CALL _Delay400Ms
; 61: Delay400Ms();
61 001E 2000 R CALL _Delay400Ms
; 62: Delay400Ms();
62 001F 2000 R CALL _Delay400Ms
; 63: Delay400Ms();
63 0020 2000 R CALL _Delay400Ms
; 64: Delay400Ms();
64 0021 2000 R CALL _Delay400Ms
64 0022 2800 R JMP L4
64 0023 L3:
; 68: temp &= 0x7f; // 只顯示ASCII字符
68 0023 3400 R CLR CR1.7
; 69: if (temp<32)temp=32; // 屏蔽控制字符,不予顯示
69 0024 0700 R MOV A,CR1
69 0025 0A20 SUB A,020h
69 0026 3C0A SZ [0ah].0
69 0027 2800 R JMP L6
69 0028 0F20 MOV A,020h
69 0029 0080 R MOV CR1,A
69 002A L6:
; 70: Display( temp++ );
70 002A 0700 R MOV A,CR1
70 002B 0080 R MOV b0_1,A
70 002C 1480 R INC CR1
70 002D 0700 R MOV A,b0_1
70 002E 0080 R MOV Display0,A
70 002F 2000 R CALL _Display
; 71: Delay400Ms();
71 0030 2000 R CALL _Delay400Ms
71 0031 L4:
; 66: while(1)
66 0031 2800 R JMP L3
66 0032 L1:
; 73: }
73 0032 2800 R JMP $
73 0000 00 LOCAL b0_1 DB ?
文件:HT46R24.c 盛群編譯器版本 2.86 頁次4
; 48: Uchar temp;
48 0001 00 LOCAL CR1 DB ? ; temp
; 49: char example[]="For an example. - By xiaoqi\n";
49 0002 001D[ LOCAL CR2 DB 29 DUP (?) ; example
00
]
49 0033 _main ENDP
; 79: {
79 0000 @ePutstr .SECTION 'CODE'
79 0000 PUBLIC _ePutstr
79 0000 _ePutstr PROC
; 78: void ePutstr(Uchar x,Uchar y, Uchar *ptr)
78 0000 PUBLIC ePutstr0
78 0000 00 LOCAL ePutstr0 DB ? ; x
文件:HT46R24.C 盛群編譯器版本 2.86 頁次4
78 0000 PUBLIC ePutstr1
78 0001 00 LOCAL ePutstr1 DB ? ; y
78 0000 PUBLIC ePutstr2
78 0002 0002[ LOCAL ePutstr2 DB 2 DUP (?) ; ptr
00
]
; 80: Uchar i,l=0;
80 0000 1F00 R CLR CR6
80 0001 2800 R JMP L11
80 0002 L10:
; 81: while (ptr[l] >31){l++;};
81 0002 1480 R INC CR6
81 0003 L11:
81 0003 0700 R MOV A,CR6
81 0004 0300 R ADD A,ePutstr2
81 0005 0080 R MOV b0_2,A
81 0006 0700 R MOV A,ePutstr2[1]
81 0007 0080 R MOV b0_2[1],A
81 0008 0700 R MOV A,b0_2[1]
81 0009 0084 MOV [04H],A
81 000A 0700 R MOV A,b0_2
81 000B 0083 MOV [03H],A
81 000C 0702 MOV A,[02H]
81 000D 0080 R MOV b0_2,A
81 000E 0F1F MOV A,01fh
81 000F 0200 R SUB A,b0_2
81 0010 380A SNZ [0ah].0
81 0011 2800 R JMP L10
; 82: for (i=0;i<l;i++)
82 0012 1F00 R CLR CR5
82 0013 2800 R JMP L16
82 0014 L13:
; 84: DispOneChar(x++,y,ptr[i]);
84 0014 0700 R MOV A,ePutstr0
84 0015 0080 R MOV b0_2,A
84 0016 1480 R INC ePutstr0
文件:HT46R24.c 盛群編譯器版本 2.86 頁次5
84 0017 0700 R MOV A,b0_2
84 0018 0080 R MOV DispOneChar0,A
84 0019 0700 R MOV A,ePutstr1
84 001A 0080 R MOV DispOneChar1,A
84 001B 0700 R MOV A,CR5
84 001C 0300 R ADD A,ePutstr2
84 001D 0080 R MOV b0_2,A
84 001E 0700 R MOV A,ePutstr2[1]
84 001F 0080 R MOV b0_2[1],A
84 0020 0700 R MOV A,b0_2[1]
84 0021 0084 MOV [04H],A
84 0022 0700 R MOV A,b0_2
文件:HT46R24.C 盛群編譯器版本 2.86 頁次5
84 0023 0083 MOV [03H],A
84 0024 0702 MOV A,[02H]
84 0025 0080 R MOV b0_2,A
84 0026 0700 R MOV A,b0_2
84 0027 0080 R MOV DispOneChar2,A
84 0028 2000 R CALL _DispOneChar
; 85: if ( x == 8 )
85 0029 0700 R MOV A,ePutstr0
85 002A 0C08 XOR A,08h
85 002B 390A SNZ [0ah].2
85 002C 2800 R JMP L17
; 87: x = 0; y ^= 1;
87 002D 1F00 R CLR ePutstr0
87 002E 0F01 MOV A,01h
87 002F 0480 R XORM A,ePutstr1
87 0030 L17:
87 0030 L14:
; 82: for (i=0;i<l;i++)
82 0030 1480 R INC CR5
82 0031 L16:
82 0031 0700 R MOV A,CR5
82 0032 0200 R SUB A,CR6
82 0033 380A SNZ [0ah].0
82 0034 2800 R JMP L13
82 0035 L9:
82 0035 0003 RET
82 0004 0002[ LOCAL b0_2 DB 2 DUP(?)
00
]
; 80: Uchar i,l=0;
80 0006 00 LOCAL CR5 DB ? ; i
80 0007 00 LOCAL CR6 DB ? ; l
80 0036 _ePutstr ENDP
; 96: {
96 0000 @Display .SECTION 'CODE'
96 0000 PUBLIC _Display
96 0000 _Display PROC
; 95: void Display( Uchar dd )
95 0000 PUBLIC Display0
95 0000 00 LOCAL Display0 DB ? ; dd
文件:HT46R24.c 盛群編譯器版本 2.86 頁次6
; 100: for (i=0;i<8;i++)
100 0000 1F00 R CLR CR8
100 0001 2800 R JMP L23
100 0002 L20:
; 102: DispOneChar(i,1,dd++);
102 0002 0700 R MOV A,CR8
102 0003 0080 R MOV DispOneChar0,A
102 0004 0F01 MOV A,01h
文件:HT46R24.C 盛群編譯器版本 2.86 頁次6
102 0005 0080 R MOV DispOneChar1,A
102 0006 0700 R MOV A,Display0
102 0007 0080 R MOV b0_3,A
102 0008 1480 R INC Display0
102 0009 0700 R MOV A,b0_3
102 000A 0080 R MOV DispOneChar2,A
102 000B 2000 R CALL _DispOneChar
; 103: dd &= 0x7f;
103 000C 3400 R CLR Display0.7
; 104: if (dd<32) dd=32;
104 000D 0700 R MOV A,Display0
104 000E 0A20 SUB A,020h
104 000F 3C0A SZ [0ah].0
104 0010 2800 R JMP L24
104 0011 0F20 MOV A,020h
104 0012 0080 R MOV Display0,A
104 0013 L24:
104 0013 L21:
; 100: for (i=0;i<8;i++)
100 0013 1480 R INC CR8
100 0014 L23:
100 0014 0700 R MOV A,CR8
100 0015 0A08 SUB A,08h
100 0016 380A SNZ [0ah].0
100 0017 2800 R JMP L20
100 0018 L19:
100 0018 0003 RET
100 0001 00 LOCAL b0_3 DB ?
; 98: Uchar i;
98 0002 00 LOCAL CR8 DB ? ; i
98 0019 _Display ENDP
; 112: {
112 0000 @LocateXY .SECTION 'CODE'
112 0000 PUBLIC _LocateXY
112 0000 _LocateXY PROC
; 111: void LocateXY( char posx,char posy)
111 0000 PUBLIC LocateXY0
111 0000 00 LOCAL LocateXY0 DB ? ; posx
111 0000 PUBLIC LocateXY1
111 0001 00 LOCAL LocateXY1 DB ? ; posy
; 116: temp = posx & 0xf;
文件:HT46R24.c 盛群編譯器版本 2.86 頁次7
116 0000 0700 R MOV A,LocateXY0
116 0001 0E0F AND A,0fh
116 0002 0080 R MOV b0_4,A
116 0003 0700 R MOV A,b0_4
116 0004 0080 R MOV CR11,A
; 117: posy &= 0x1;
117 0005 0F01 MOV A,01h
117 0006 0680 R ANDM A,LocateXY1
; 118: if ( posy )temp |= 0x40;
118 0007 1080 R SZ LocateXY1
文件:HT46R24.C 盛群編譯器版本 2.86 頁次7
118 0008 2800 R JMP L29
118 0009 2800 R JMP L27
118 000A L29:
118 000A 3000 R SET CR11.6
118 000B L27:
; 119: temp |= 0x80;
119 000B 3000 R SET CR11.7
; 120: LcdWriteCommand(temp,0);
120 000C 0700 R MOV A,CR11
120 000D 0080 R MOV LcdWriteCommand0,A
120 000E 0F00 MOV A,00h
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -