?? lcd_drv.obj
字號:
objectfile:lcd_drv.obj
time:Sat Jun 18 18:41:42 2005
cpuname:i8051
import:__movel_8_4
import:__add_i4
import:__doprnt
import:_lcd_combyte
import:_lcd_databyte
import:__st_a_r47
import:__gen_read32_i1
import:_lcd_initport
import:__movel_4_0
export:_lcd_cursor @e:0
export:_lcd_cgchars @8:0
export:_lcd_d2_putc @18:0
export:_segment2 @5:0
export:_lcd_clear @b:0
export:_lcd_printf @17:0
export:_lcd_putc @4:0
export:_lcd_d2_printf @1b:0
export:_lcd_gotoxy @3:0
export:_lcd_init @12:0
segment:_formal_near @0:m s:0 u:0 n f c:dram
segment:_local_near @1:m s:3 u:0 n f c:dram
segment:__lcd_setxy @2:m u:77
7d 13 af 00 d3 ef 64 80 63 05 80 9d 40 00 75 00
ff 05 00 7d 03 af 00 d3 ef 64 80 63 05 80 9d 40
00 e4 f5 00 75 00 ff 80 00 af 00 ef 30 e7 00 75
00 03 75 00 ff af 00 ef 64 01 60 00 af 00 ef 64
02 60 00 af 00 ef 64 03 60 00 80 00 7d 40 80 00
7d 14 80 00 7d 54 80 00 e4 fd ed 44 80 fb e4 fd
af 00 d3 ef 64 80 63 05 80 9d 40 00 af 00 ef 2b
fb af 03 12 00 00 22
segment:__lcd_gotoxy @3:m u:8
8f 00 8d 00 12 00 00 22
segment:__lcd_putc @4:m u:67
c0 00 c0 00 8f 00 74 08 65 00 70 00 e4 fd af 00
d3 ef 64 80 63 05 80 9d 40 00 15 00 12 00 00 80
00 af 00 ef 64 0a 60 00 af 00 ef 30 e7 00 75 00
14 7f 20 12 00 00 d5 00 00 e4 f5 00 12 00 00 af
00 12 00 00 05 00 7d 13 af 00 d3 ef 64 80 63 05
80 9d 50 00 74 0a 65 00 70 00 75 00 ff 05 00 12
00 00 d0 00 d0 00 22
segment:lit @5:m u:70
1f 01 01 01 01 01 01 01 01 01 01 01 01 01 01 1f
01 01 01 01 01 01 01 01 00 00 00 00 00 00 00 01
1f 01 01 01 01 01 01 1f 00 00 00 00 00 00 00 1f
1f 00 00 00 00 00 00 1f 01 00 00 00 00 00 00 00
02 01 02 00 20 02 20 02 02 05 03 04 20 01 20 04
20 02 02 01 20 01 02 06 02 01 02 06 20 02 20 00
02 01 02 04 20 01 02 04 20 20 20 20 20 2d 20 20
segment:_lcd_cgchars_formal_near @6:m s:0 u:0 n f c:dram
segment:_lcd_cgchars_local_near @7:m s:5 u:0 n f c:dram
segment:__lcd_cgchars @8:m u:3a
74 00 12 00 00 7f 40 12 00 00 75 00 40 85 00 08
85 00 09 85 00 0a 85 00 0b e4 f8 f9 fa 7b 01 12
00 00 12 00 00 74 00 12 00 00 12 00 00 12 00 00
12 00 00 d5 00 00 12 00 00 22
segment:_lcd_clear_formal_near @9:m s:0 u:0 n f c:dram
segment:_lcd_clear_local_near @a:m s:0 u:0 n f c:dram
segment:__lcd_clear @b:m u:c
7f 01 12 00 00 e4 f5 00 e4 f5 00 22
segment:_lcd_cursor_formal_near @c:m s:0 u:0 n f c:dram
segment:_lcd_cursor_local_near @d:m s:0 u:0 n f c:dram
segment:__lcd_cursor @e:m u:8
74 0c 2f ff 12 00 00 22
segment:_lcd_init_formal_near @f:m s:0 u:0 n f c:dram
segment:_lcd_init_local_near @10:m s:0 u:0 n f c:dram
segment:_lcd_initport_formal_near @11:m s:0 u:0 n f c:dram
segment:__lcd_init @12:m u:28
12 00 00 ef 60 00 7f 01 80 00 7f 0f 12 00 00 12
00 00 7f 03 12 00 00 7f 06 12 00 00 7e 00 7f 00
7c 01 12 00 00 e4 ff 22
segment:__lcd_digit2 @13:m u:a4
c0 00 c0 00 c0 00 ef 2f 25 e0 ff ad 07 af 05 0f
8f 00 7c 00 7e 00 7f 00 ef 2d ff ee 3c fe 85 06
83 85 07 82 e4 93 ff 12 00 00 85 00 00 85 00 00
ad 00 af 05 0f 8f 00 7c 00 7e 00 7f 00 ef 2d ff
ee 3c fe 85 06 83 85 07 82 e4 93 ff 12 00 00 af
00 ad 07 1d af 00 1f 12 00 00 ad 00 af 05 0f 8f
00 7c 00 7e 00 7f 00 ef 2d ff ee 3c fe 85 06 83
85 07 82 e4 93 ff 12 00 00 af 00 ad 07 7c 00 7e
00 7f 00 ef 2d ff ee 3c fe 85 06 83 85 07 82 e4
93 ff 12 00 00 ad 00 af 00 0f 12 00 00 d0 00 d0
00 d0 00 22
segment:_lcd_printf_formal_near @14:m s:0 u:0 n f c:dram
segment:_lcd_printf_local_near @15:m s:0 u:0 n f c:dram
segment:__doprnt_formal_near @16:m s:1 u:0 n f c:dram
segment:__lcd_printf @17:m u:e
75 00 00 12 00 00 7e 00 7f 00 12 00 00 22
segment:__lcd_d2_putc @18:m u:5d
c0 00 8f 00 7d 30 af 00 c3 ef 9d 40 00 7d 39 af
00 d3 ef 9d 50 00 af 00 74 d0 2f ff 12 00 00 80
00 74 20 65 00 70 00 7f 0a 12 00 00 80 00 74 2d
65 00 70 00 7f 0b 12 00 00 80 00 af 00 12 00 00
af 00 ad 07 1d af 00 1f 12 00 00 7f 20 12 00 00
af 00 ad 07 0d af 00 12 00 00 d0 00 22
segment:_lcd_d2_printf_formal_near @19:m s:0 u:0 n f c:dram
segment:_lcd_d2_printf_local_near @1a:m s:0 u:0 n f c:dram
segment:__lcd_d2_printf @1b:m u:e
75 00 00 12 00 00 7e 00 7f 00 12 00 00 22
segment:nearbss @1c:m u:2 n c:dram
sgraph:_lcd_cgchars_formal_near _lcd_cgchars_local_near __lcd_cgchars
sgraph:_lcd_clear_formal_near _lcd_clear_local_near __lcd_clear
sgraph:_lcd_cursor_formal_near _lcd_cursor_local_near __lcd_cursor
sgraph:_lcd_init_formal_near _lcd_init_local_near __lcd_init
sgraph:_lcd_init_local_near _lcd_cgchars_formal_near __lcd_init 0
sgraph:_lcd_init_local_near _lcd_cursor_formal_near __lcd_init 0
sgraph:_lcd_init_local_near _lcd_clear_formal_near __lcd_init 0
sgraph:_lcd_init_local_near _lcd_initport_formal_near __lcd_init 0
sgraph:_lcd_printf_formal_near _lcd_printf_local_near __lcd_printf
sgraph:_lcd_printf_local_near __doprnt_formal_near __lcd_printf 0
sgraph:_lcd_d2_printf_formal_near _lcd_d2_printf_local_near __lcd_d2_printf
sgraph:_lcd_d2_printf_local_near __doprnt_formal_near __lcd_d2_printf 0
src:..\..\lcd2\lcd_drv.s51 #0
src:C:\c\uc51\include\reg51.def #1
ref byte #0:2f @2:3 @1c:1
ref rbyte #0:35 @2:d @2:13
ref byte #0:37 @2:f @1c:1
ref byte #0:39 @2:12 @1c:0
ref byte #0:3e @2:16 @1c:0
ref rbyte #0:44 @2:20 @2:29
ref byte #0:47 @2:23 @1c:0
ref byte #0:49 @2:25 @1c:1
ref rbyte #0:4b @2:28 @2:35
ref byte #0:4e @2:2a @1c:0
ref rbyte #0:50 @2:2e @2:35
ref byte #0:52 @2:30 @1c:0
ref byte #0:54 @2:33 @1c:1
ref byte #0:59 @2:36 @1c:0
ref rbyte #0:5c @2:3b @2:4c
ref byte #0:5d @2:3d @1c:0
ref rbyte #0:60 @2:42 @2:50
ref byte #0:61 @2:44 @1c:0
ref rbyte #0:64 @2:49 @2:54
ref rbyte #0:65 @2:4b @2:58
ref rbyte #0:6c @2:4f @2:5a
ref rbyte #0:71 @2:53 @2:5a
ref rbyte #0:76 @2:57 @2:5a
ref byte #0:85 @2:61 @1c:1
ref rbyte #0:8b @2:6b @2:71
ref byte #0:8d @2:6d @1c:1
ref w_hl #0:94 @2:74 _lcd_combyte
ref byte #0:a5 @3:1 @1c:1
ref byte #0:a7 @3:3 @1c:0
ref w_hl #0:a9 @3:5 @2:0
ref byte #0:bd @4:1 @1:0 0 +
ref byte #0:be @4:3 @1:0 1 +
ref byte #0:c0 @4:5 @1:0 0 +
ref byte #0:c3 @4:9 @1:0 0 +
ref rbyte #0:c4 @4:b @4:21
ref byte #0:c8 @4:f @1c:1
ref rbyte #0:ce @4:19 @4:1c
ref byte #0:d0 @4:1b @1c:1
ref w_hl #0:d3 @4:1d @2:0
ref rbyte #0:d5 @4:20 @4:46
ref byte #0:d8 @4:22 @1:0 0 +
ref rbyte #0:db @4:27 @4:46
ref byte #0:dd @4:29 @1c:1
ref rbyte #0:df @4:2d @4:3f
ref byte #0:e1 @4:2f @1:0 1 +
ref w_hl #0:e5 @4:34 _lcd_databyte
ref byte #0:e7 @4:37 @1:0 1 +
ref rbyte #0:e7 @4:38 @4:31
ref byte #0:ea @4:3b @1c:1
ref w_hl #0:ec @4:3d @2:0
ref byte #0:f0 @4:40 @1:0 0 +
ref w_hl #0:f1 @4:42 _lcd_databyte
ref byte #0:f3 @4:45 @1c:1
ref byte #0:f9 @4:49 @1c:1
ref rbyte #0:ff @4:53 @4:5a
ref byte #0:101 @4:57 @1:0 0 +
ref rbyte #0:102 @4:59 @4:62
ref byte #0:105 @4:5b @1c:1
ref byte #0:107 @4:5e @1c:0
ref w_hl #0:109 @4:60 @2:0
ref byte #0:10c @4:63 @1:0 1 +
ref byte #0:10d @4:65 @1:0 0 +
ref byte #0:15d @8:1 @7:0 0 +
ref w_hl #0:15e @8:3 __st_a_r47
ref w_hl #0:161 @8:8 _lcd_combyte
ref byte #0:163 @8:b @7:0 4 +
ref byte #0:166 @8:e @7:0 0 +
ref byte #0:167 @8:11 @7:0 0 + 1 +
ref byte #0:168 @8:14 @7:0 0 + 2 +
ref byte #0:169 @8:17 @7:0 0 + 3 +
ref w_hl #0:16f @8:20 __movel_8_4
ref w_hl #0:170 @8:23 __add_i4
ref byte #0:171 @8:26 @7:0 0 +
ref w_hl #0:172 @8:28 __st_a_r47
ref w_hl #0:173 @8:2b __movel_8_4
ref w_hl #0:174 @8:2e __gen_read32_i1
ref w_hl #0:177 @8:31 _lcd_databyte
ref byte #0:179 @8:34 @7:0 4 +
ref rbyte #0:179 @8:35 @8:d
ref w_hl #0:17b @8:37 @2:0
ref w_hl #0:18c @b:3 _lcd_combyte
ref byte #0:18f @b:7 @1c:1
ref byte #0:192 @b:a @1c:0
ref w_hl #0:1a6 @e:5 _lcd_combyte
ref w_hl #0:1bf @12:1 _lcd_initport
ref rbyte #0:1c1 @12:5 @12:a
ref rbyte #0:1c4 @12:9 @12:27
ref w_hl #0:1c8 @12:d _lcd_combyte
ref w_hl #0:1ca @12:10 _lcd_clear
ref w_hl #0:1cd @12:15 _lcd_cursor
ref w_hl #0:1d0 @12:1a _lcd_combyte
ref byte #0:1d2 @12:1d _segment2 8 >> 255 &
ref byte #0:1d3 @12:1f _segment2 255 &
ref w_hl #0:1d5 @12:23 _lcd_cgchars
ref byte #0:1f0 @13:1 @1:0 0 +
ref byte #0:1f1 @13:3 @1:0 1 +
ref byte #0:1f2 @13:5 @1:0 2 +
ref byte #0:1ff @13:11 @1:0 0 +
ref byte #0:201 @13:15 @5:40 8 >> 255 &
ref byte #0:202 @13:17 @5:40 255 &
ref w_hl #0:20e @13:28 _lcd_putc
ref byte #0:211 @13:2b @1c:1
ref byte #0:211 @13:2c @1:0 1 +
ref byte #0:214 @13:2e @1c:0
ref byte #0:214 @13:2f @1:0 2 +
ref byte #0:216 @13:31 @1:0 0 +
ref byte #0:21a @13:36 @1:0 0 +
ref byte #0:21c @13:3a @5:40 8 >> 255 &
ref byte #0:21d @13:3c @5:40 255 &
ref w_hl #0:229 @13:4d _lcd_putc
ref byte #0:22b @13:50 @1:0 2 +
ref byte #0:22e @13:55 @1:0 1 +
ref w_hl #0:230 @13:58 _lcd_gotoxy
ref byte #0:232 @13:5b @1:0 0 +
ref byte #0:236 @13:60 @1:0 0 +
ref byte #0:238 @13:64 @5:40 8 >> 255 &
ref byte #0:239 @13:66 @5:40 255 &
ref w_hl #0:245 @13:77 _lcd_putc
ref byte #0:247 @13:7a @1:0 0 +
ref byte #0:24a @13:80 @5:40 8 >> 255 &
ref byte #0:24b @13:82 @5:40 255 &
ref w_hl #0:257 @13:93 _lcd_putc
ref byte #0:259 @13:96 @1:0 2 +
ref byte #0:25a @13:98 @1:0 1 +
ref w_hl #0:25c @13:9b _lcd_gotoxy
ref byte #0:25d @13:9e @1:0 2 +
ref byte #0:25e @13:a0 @1:0 1 +
ref byte #0:25f @13:a2 @1:0 0 +
ref byte #0:272 @17:1 @16:0
ref byte #0:272 @17:2 @14:0 0 +
ref w_hl #0:273 @17:4 __movel_4_0
ref byte #0:274 @17:7 _lcd_putc 8 >> 255 &
ref byte #0:275 @17:9 _lcd_putc 255 &
ref w_hl #0:276 @17:b __doprnt
ref byte #0:28b @18:1 @1:0 0 +
ref byte #0:28d @18:3 @1:0 0 +
ref byte #0:290 @18:7 @1:0 0 +
ref rbyte #0:294 @18:c @18:21
ref byte #0:296 @18:10 @1:0 0 +
ref rbyte #0:29a @18:15 @18:21
ref byte #0:29c @18:17 @1:0 0 +
ref w_hl #0:2a0 @18:1d @13:0
ref rbyte #0:2a2 @18:20 @18:5a
ref byte #0:2a6 @18:24 @1:0 0 +
ref rbyte #0:2a7 @18:26 @18:2e
ref w_hl #0:2aa @18:2a @13:0
ref rbyte #0:2ac @18:2d @18:5a
ref byte #0:2b0 @18:31 @1:0 0 +
ref rbyte #0:2b1 @18:33 @18:3b
ref w_hl #0:2b4 @18:37 @13:0
ref rbyte #0:2b6 @18:3a @18:5a
ref byte #0:2b9 @18:3c @1:0 0 +
ref w_hl #0:2ba @18:3e _lcd_putc
ref byte #0:2bc @18:41 @1c:0
ref byte #0:2bf @18:46 @1c:1
ref w_hl #0:2c1 @18:49 _lcd_gotoxy
ref w_hl #0:2c4 @18:4e _lcd_putc
ref byte #0:2c6 @18:51 @1c:0
ref byte #0:2c9 @18:56 @1c:1
ref w_hl #0:2ca @18:58 _lcd_gotoxy
ref byte #0:2cf @18:5b @1:0 0 +
ref byte #0:2e2 @1b:1 @16:0
ref byte #0:2e2 @1b:2 @19:0 0 +
ref w_hl #0:2e3 @1b:4 __movel_4_0
ref byte #0:2e4 @1b:7 _lcd_d2_putc 8 >> 255 &
ref byte #0:2e5 @1b:9 _lcd_d2_putc 255 &
ref w_hl #0:2e6 @1b:b __doprnt
objectdebug
dtx ; *** 'C:\c\uc51\bin\uc51.exe': uC/51 - ANSI C compiler
dtx ; *** Standard 'i8051', V1.26, Nov 29 2004 (C) WWW.WICKENHAEUSER.COM
dtx ; sourcefile: '..\..\lcd2\lcd_drv.c', time: Sat Jun 18 18:41:42 2005
dtx
dtx .hide
dtx .show
dtx XDS=0
dtx COS=1
dtx NES=2
dtx INS=2
dtx .macro __line
dtx lcall $0006 ; uC/51 debugger
dtx .endmacro
dtx .include <reg51.def>
dtx ; **** 8051 standard defs ***
dtx ; common registers to all 8051's
dtx .hide
dtx .show
dtx .hide
dtx .show
dtx
dtx .segment __lcd_setxy
dtx _lcd_setxy: ; void lcd_setxy(void) reentrant
dhl /* LCD_DRV.C */
dhl
dhl
dhl /* The driver's layer */
dhl
dhl #include <stdio.h>
dhl #include <stdarg.h>
dhl #include <reg51.h>
dhl
dhl #include "lcd_io.h"
dhl #include "lcd_drv.h"
dhl
dhl // This definition is not to be seen by default, because it needs <stdarg.h>
dhl // Declaring the byte-handler (iofunk()) as 'uint' is simply to prevent a compiler warning,
dhl // 'void' would be correct!
dhl extern int _doprnt( void (*iofunk)(uchar) reentrant, far char* pfmt, va_list (fap));
dhl
dhl
dhl /******************* internal Track XY cursor for NLs ***********************/
dhl static signed char near lcd_pos_x, lcd_pos_y;
dhl
dhl
dhl
dhl /************************ lcd_setxy **************************/
dhl static void lcd_setxy(void) reentrant { // local function!
dco @2:0 u:2 mov R5,#19
dco @2:2 u:2 mov R7,_lcd_pos_x
dco @2:4 u:1 setb C
dco @2:5 u:1 mov A,R7
dco @2:6 u:2 xrl A,#128
dco @2:8 u:3 xrl AR5,#128
dco @2:b u:1 subb A,R5
dco @2:c u:2 jc ?2
dhl uchar date;
dhl if(lcd_pos_x>19){ // Ensure that all is inside the visible rectangle
dco @2:e u:3 mov _lcd_pos_x,#-1
dhl lcd_pos_x=-1;
dhl lcd_pos_y++;
dco @2:11 u:2 inc _lcd_pos_y
dhl }
dtx ?2:
dhl if(lcd_pos_y>3){
dco @2:13 u:2 mov R5,#3
dco @2:15 u:2 mov R7,_lcd_pos_y
dco @2:17 u:1 setb C
dco @2:18 u:1 mov A,R7
dco @2:19 u:2 xrl A,#128
dco @2:1b u:3 xrl AR5,#128
dco @2:1e u:1 subb A,R5
dco @2:1f u:2 jc ?4
dtx
dco @2:21 u:1 clr A
dco @2:22 u:2 mov _lcd_pos_y,A
dhl lcd_pos_y=0;
dhl lcd_pos_x=-1;
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -