📄 io_drv.lst
字号:
97 {
98 1 Byte i;
99 1
100 1 for (i=0; i<8; i++)
101 1 {
102 2 LCD_RW = 0;
103 2 if (bByte & 0x80) LCD_DA = 1;
104 2 else LCD_DA = 0;
105 2 bByte <<= 1;
106 2 LCD_RW = 1;
107 2 }
108 1 }
109
110 /*F**************************************************************************
111 * NAME: HT1621_getLSB
112 *----------------------------------------------------------------------------
113 * PARAMS:
114 * 写入一个字节数据info
115 * return:
116 *----------------------------------------------------------------------------
117 * PURPOSE:
118 *----------------------------------------------------------------------------
119 * EXAMPLE:
120 *----------------------------------------------------------------------------
121 * NOTE:
122 *----------------------------------------------------------------------------
123 * REQUIREMENTS:
124 *****************************************************************************/
125
126 void HT1621_getLSB(Byte bByte)
127 {
128 1 Byte i;
129 1
130 1 for (i=0; i<8; i++)
131 1 {
132 2 LCD_RW = 0;
133 2 if (bByte & 0x01) LCD_DA = 1;
134 2 else LCD_DA = 0;
135 2 bByte >>= 1;
136 2 LCD_RW = 1;
137 2 }
138 1 }
139
C51 COMPILER V8.01 IO_DRV 08/07/2006 11:16:11 PAGE 10
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION _getByteLSB (BEGIN)
; SOURCE LINE # 33
;---- Variable 'bByte' assigned to Register 'R7' ----
; SOURCE LINE # 34
; SOURCE LINE # 37
;---- Variable 'i' assigned to Register 'R6' ----
0000 E4 CLR A
0001 FE MOV R6,A
0002 ?C0001:
; SOURCE LINE # 38
; SOURCE LINE # 39
0002 C2B5 CLR P3_5
; SOURCE LINE # 40
0004 EF MOV A,R7
0005 30E004 JNB ACC.0,?C0004
0008 D2B6 SETB P3_6
000A 8002 SJMP ?C0005
000C ?C0004:
; SOURCE LINE # 41
000C C2B6 CLR P3_6
000E ?C0005:
; SOURCE LINE # 42
000E EF MOV A,R7
000F C3 CLR C
0010 13 RRC A
0011 FF MOV R7,A
; SOURCE LINE # 43
0012 D2B5 SETB P3_5
; SOURCE LINE # 44
0014 0E INC R6
0015 BE08EA CJNE R6,#08H,?C0001
; SOURCE LINE # 45
0018 ?C0006:
0018 22 RET
; FUNCTION _getByteLSB (END)
; FUNCTION dts_scanByte (BEGIN)
; SOURCE LINE # 63
; SOURCE LINE # 64
; SOURCE LINE # 66
;---- Variable 'bByte' assigned to Register 'R7' ----
0000 7F0B MOV R7,#0BH
; SOURCE LINE # 68
;---- Variable 'i' assigned to Register 'R6' ----
0002 E4 CLR A
0003 FE MOV R6,A
0004 ?C0007:
; SOURCE LINE # 69
0004 C2B5 CLR P3_5
; SOURCE LINE # 70
0006 30B40F JNB P3_4,?C0010
; SOURCE LINE # 71
;---- Variable 'temp' assigned to Register 'R5' ----
0009 7D80 MOV R5,#080H
; SOURCE LINE # 72
000B ED MOV A,R5
000C A806 MOV R0,AR6
000E 08 INC R0
000F 8003 SJMP ?C0025
C51 COMPILER V8.01 IO_DRV 08/07/2006 11:16:11 PAGE 11
0011 ?C0024:
0011 A2E7 MOV C,ACC.7
0013 13 RRC A
0014 ?C0025:
0014 D8FB DJNZ R0,?C0024
; SOURCE LINE # 73
0016 4207 ORL AR7,A
; SOURCE LINE # 74
0018 ?C0010:
; SOURCE LINE # 75
0018 D2B5 SETB P3_5
; SOURCE LINE # 76
001A 0E INC R6
001B BE08E6 CJNE R6,#08H,?C0007
001E ?C0008:
; SOURCE LINE # 77
001E EF MOV A,R7
001F 33 RLC A
0020 95E0 SUBB A,ACC
0022 FE MOV R6,A
; SOURCE LINE # 78
0023 ?C0011:
0023 22 RET
; FUNCTION dts_scanByte (END)
; FUNCTION _HT1621_getMSB (BEGIN)
; SOURCE LINE # 96
;---- Variable 'bByte' assigned to Register 'R7' ----
; SOURCE LINE # 97
; SOURCE LINE # 100
;---- Variable 'i' assigned to Register 'R6' ----
0000 E4 CLR A
0001 FE MOV R6,A
0002 ?C0012:
; SOURCE LINE # 101
; SOURCE LINE # 102
0002 C281 CLR P0_1
; SOURCE LINE # 103
0004 EF MOV A,R7
0005 30E704 JNB ACC.7,?C0015
0008 D280 SETB P0_0
000A 8002 SJMP ?C0016
000C ?C0015:
; SOURCE LINE # 104
000C C280 CLR P0_0
000E ?C0016:
; SOURCE LINE # 105
000E EF MOV A,R7
000F 25E0 ADD A,ACC
0011 FF MOV R7,A
; SOURCE LINE # 106
0012 D281 SETB P0_1
; SOURCE LINE # 107
0014 0E INC R6
0015 BE08EA CJNE R6,#08H,?C0012
; SOURCE LINE # 108
0018 ?C0017:
0018 22 RET
; FUNCTION _HT1621_getMSB (END)
; FUNCTION _HT1621_getLSB (BEGIN)
; SOURCE LINE # 126
C51 COMPILER V8.01 IO_DRV 08/07/2006 11:16:11 PAGE 12
;---- Variable 'bByte' assigned to Register 'R7' ----
; SOURCE LINE # 127
; SOURCE LINE # 130
;---- Variable 'i' assigned to Register 'R6' ----
0000 E4 CLR A
0001 FE MOV R6,A
0002 ?C0018:
; SOURCE LINE # 131
; SOURCE LINE # 132
0002 C281 CLR P0_1
; SOURCE LINE # 133
0004 EF MOV A,R7
0005 30E004 JNB ACC.0,?C0021
0008 D280 SETB P0_0
000A 8002 SJMP ?C0022
000C ?C0021:
; SOURCE LINE # 134
000C C280 CLR P0_0
000E ?C0022:
; SOURCE LINE # 135
000E EF MOV A,R7
000F C3 CLR C
0010 13 RRC A
0011 FF MOV R7,A
; SOURCE LINE # 136
0012 D281 SETB P0_1
; SOURCE LINE # 137
0014 0E INC R6
0015 BE08EA CJNE R6,#08H,?C0018
; SOURCE LINE # 138
0018 ?C0023:
0018 22 RET
; FUNCTION _HT1621_getLSB (END)
C51 COMPILER V8.01 IO_DRV 08/07/2006 11:16:11 PAGE 13
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P0 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0080H 1
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
P3 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B0H 1
Uint32 . . . . . . . . . . . . . . . . TYPEDEF ----- U_LONG ----- 4
Uint16 . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
P0_0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0080H 1
P0_1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0081H 1
Int32. . . . . . . . . . . . . . . . . TYPEDEF ----- LONG ----- 4
Int16. . . . . . . . . . . . . . . . . TYPEDEF ----- INT ----- 2
Byte . . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
P3_4 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
P3_5 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
P3_6 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B6H 1
_getByteLSB. . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
bByte. . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0006H 1
_HT1621_getLSB . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
bByte. . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0006H 1
_HT1621_getMSB . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
bByte. . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0006H 1
Float16. . . . . . . . . . . . . . . . TYPEDEF ----- FLOAT ----- 4
dts_scanByte . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0006H 1
bByte. . . . . . . . . . . . . . . . * REG * DATA CHAR 0007H 1
temp . . . . . . . . . . . . . . . . * REG * DATA CHAR 0005H 1
Uchar. . . . . . . . . . . . . . . . . TYPEDEF ----- U_CHAR ----- 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 111 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -