📄 eerw.lst
字号:
122 0004 L12:
; 124: scl=1;
124 0004 3194 SET [014H].3
; 125: BYTE<<=1;
125 0005 340A CLR [0AH].0
125 0006 1A80 R RLC CR3
; 126: BYTE|=sda;
126 0007 1F00 R CLR b0_7
126 0008 3C18 SZ [018H].0
126 0009 3000 R SET b0_7.0
126 000A 0700 R MOV A,b0_7
126 000B 0580 R ORM A,CR3
; 127: scl=0;
127 000C 3594 CLR [014H].3
127 000D L13:
; 122: for(i=0;i<8;i++)
122 000D 1480 R INC CR4
122 000E L15:
122 000E 0700 R MOV A,CR4
122 000F 0A08 SUB A,08h
122 0010 380A SNZ [0ah].0
122 0011 2800 R JMP L12
; 129: sda_c=0; //设置成输出模式
129 0012 3419 CLR [019H].0
; 130: Ack();
130 0013 2000 R CALL _Ack
; 131: return(BYTE);
131 0014 0700 R MOV A,CR3
131 0015 L11:
131 0015 0003 RET
131 0000 00 LOCAL b0_7 DB ?
文件:EERW.C 盛群编译器版本 2.86 页次8
; 120: uchar i,BYTE=0;
120 0001 00 LOCAL CR3 DB ? ; BYTE
120 0002 00 LOCAL CR4 DB ? ; i
120 0016 _Read ENDP
; 136: {
136 0000 @delay_ms .SECTION 'CODE'
136 0000 PUBLIC _delay_ms
136 0000 _delay_ms PROC
; 135: void delay_ms(unsigned char n)
135 0000 PUBLIC delay_ms0
135 0000 00 LOCAL delay_ms0 DB ? ; n
; 138: for(;n!=0;n--)
138 0000 2800 R JMP L20
138 0001 L17:
文件:EERW.c 盛群编译器版本 2.86 页次8
; 140: for(temp=1120;temp!=0;temp--) ;
140 0001 0F60 MOV A,060h
140 0002 0080 R MOV CR5,A
140 0003 2800 R JMP L24
140 0004 L21:
140 0004 L22:
140 0004 1580 R DEC CR5
140 0005 L24:
140 0005 1080 R SZ CR5
140 0006 2800 R JMP L21
140 0007 L18:
; 138: for(;n!=0;n--)
138 0007 1580 R DEC delay_ms0
138 0008 L20:
138 0008 1080 R SZ delay_ms0
138 0009 2800 R JMP L17
138 000A L16:
138 000A 0003 RET
; 137: unsigned int temp;
137 0001 00 LOCAL CR5 DB ? ; temp
137 000B _delay_ms ENDP
; 145: {
145 0000 @iic_write .SECTION 'CODE'
145 0000 PUBLIC _iic_write
145 0000 _iic_write PROC
; 144: void iic_write(uchar Wr_Address,uchar WrData_Address,uchar data )
144 0000 PUBLIC iic_write0
144 0000 00 LOCAL iic_write0 DB ? ; Wr_Address
144 0000 PUBLIC iic_write1
144 0001 00 LOCAL iic_write1 DB ? ; WrData_Address
文件:EERW.C 盛群编译器版本 2.86 页次9
144 0000 PUBLIC iic_write2
144 0002 00 LOCAL iic_write2 DB ? ; data
; 146: start();
146 0000 2000 R CALL _start
; 147: send(Wr_Address);
147 0001 0700 R MOV A,iic_write0
147 0002 0080 R MOV send0,A
147 0003 2000 R CALL _send
; 148: testack();
148 0004 2000 R CALL _testack
; 149: send(WrData_address);
149 0005 0700 R MOV A,_WrData_address
149 0006 0080 R MOV send0,A
149 0007 2000 R CALL _send
; 150: testack();
150 0008 2000 R CALL _testack
; 151: send(data); //发送数据
文件:EERW.c 盛群编译器版本 2.86 页次9
151 0009 0700 R MOV A,iic_write2
151 000A 0080 R MOV send0,A
151 000B 2000 R CALL _send
; 152: testack();
152 000C 2000 R CALL _testack
; 153: stp();
153 000D 2000 R CALL _stp
; 154: delay_ms(10);
154 000E 0F0A MOV A,0ah
154 000F 0080 R MOV delay_ms0,A
154 0010 2000 R CALL _delay_ms
154 0011 L25:
154 0011 0003 RET
154 0012 _iic_write ENDP
; 158: {
158 0000 @iic_read .SECTION 'CODE'
158 0000 PUBLIC _iic_read
158 0000 _iic_read PROC
; 157: uchar iic_read(uchar Wr_Address,uchar WrData_Address )
157 0000 PUBLIC iic_read0
157 0000 00 LOCAL iic_read0 DB ? ; Wr_Address
157 0000 PUBLIC iic_read1
157 0001 00 LOCAL iic_read1 DB ? ; WrData_Address
; 160: start();
160 0000 2000 R CALL _start
; 161: send(Wr_Address); //发送设备地址0A0H
161 0001 0700 R MOV A,iic_read0
161 0002 0080 R MOV send0,A
161 0003 2000 R CALL _send
; 162: testack();
162 0004 2000 R CALL _testack
; 163: send(WrData_address); //发送数据地址
163 0005 0700 R MOV A,_WrData_address
163 0006 0080 R MOV send0,A
文件:EERW.C 盛群编译器版本 2.86 页次10
163 0007 2000 R CALL _send
; 164: testack();
164 0008 2000 R CALL _testack
; 165: start();
165 0009 2000 R CALL _start
; 166: send(0xa1); //设置从机为读模式,读模式第0位是1 0A1h
166 000A 0FA1 MOV A,0a1h
166 000B 0080 R MOV send0,A
166 000C 2000 R CALL _send
; 167: testack();
167 000D 2000 R CALL _testack
文件:EERW.c 盛群编译器版本 2.86 页次10
; 168: a =Read();
168 000E 2000 R CALL _Read
168 000F 0080 R MOV CR6,A
; 169: NoAck();
169 0010 2000 R CALL _NoAck
; 170: stp();
170 0011 2000 R CALL _stp
; 171: return a ;
171 0012 0700 R MOV A,CR6
171 0013 L26:
171 0013 0003 RET
; 159: unsigned char a ;
159 0002 00 LOCAL CR6 DB ? ; a
159 0014 _iic_read ENDP
; 178: {
178 0000 @MAIN .SECTION 'CODE'
178 0000 _main PROC
178 0000 begin:
; 180: _pac=0x00; //set pa output
180 0000 1F13 CLR __pac
; 181: _pbc=0x00;
181 0001 1F15 CLR __pbc
; 182: _pdc=0x00;
182 0002 1F19 CLR __pdc
; 183: iic_write(0xa0 , 0x00 , 65) ;
183 0003 0FA0 MOV A,0a0h
183 0004 0080 R MOV iic_write0,A
183 0005 0F00 MOV A,00h
183 0006 0080 R MOV iic_write1,A
183 0007 0F41 MOV A,041h
183 0008 0080 R MOV iic_write2,A
183 0009 2000 R CALL _iic_write
; 184: delay_ms(100) ;
184 000A 0F64 MOV A,064h
184 000B 0080 R MOV delay_ms0,A
184 000C 2000 R CALL _delay_ms
; 185: iic_write(0xA0 , 0x10 ,95);
185 000D 0FA0 MOV A,0a0h
185 000E 0080 R MOV iic_write0,A
185 000F 0F10 MOV A,010h
185 0010 0080 R MOV iic_write1,A
185 0011 0F5F MOV A,05fh
185 0012 0080 R MOV iic_write2,A
185 0013 2000 R CALL _iic_write
; 186: delay_ms(100) ;
186 0014 0F64 MOV A,064h
186 0015 0080 R MOV delay_ms0,A
文件:EERW.c 盛群编译器版本 2.86 页次11
文件:EERW.C 盛群编译器版本 2.86 页次11
186 0016 2000 R CALL _delay_ms
; 187: iic_write(0xA0 , 0x20 , 180);
187 0017 0FA0 MOV A,0a0h
187 0018 0080 R MOV iic_write0,A
187 0019 0F20 MOV A,020h
187 001A 0080 R MOV iic_write1,A
187 001B 0FB4 MOV A,0b4h
187 001C 0080 R MOV iic_write2,A
187 001D 2000 R CALL _iic_write
; 188: delay_ms(100) ;
188 001E 0F64 MOV A,064h
188 001F 0080 R MOV delay_ms0,A
188 0020 2000 R CALL _delay_ms
; 189: ration_setsgl = (iic_read(0xA0 , 0x10));
189 0021 0FA0 MOV A,0a0h
189 0022 0080 R MOV iic_read0,A
189 0023 0F10 MOV A,010h
189 0024 0080 R MOV iic_read1,A
189 0025 2000 R CALL _iic_read
189 0026 0080 R MOV _ration_setsgl,A
; 191: if(ration_setsgl<=35)ration_setsgl = 98 ;
191 0027 0F23 MOV A,023h
191 0028 0200 R SUB A,_ration_setsgl
191 0029 380A SNZ [0ah].0
191 002A 2800 R JMP L28
191 002B 0F62 MOV A,062h
191 002C 0080 R MOV _ration_setsgl,A
191 002D L28:
; 193: ration_setdou = (iic_read(0xA0,0x20)) ;
193 002D 0FA0 MOV A,0a0h
193 002E 0080 R MOV iic_read0,A
193 002F 0F20 MOV A,020h
193 0030 0080 R MOV iic_read1,A
193 0031 2000 R CALL _iic_read
193 0032 0080 R MOV _ration_setdou,A
; 195: if(ration_setdou<=100)ration_setdou = 174 ;
195 0033 0F64 MOV A,064h
195 0034 0200 R SUB A,_ration_setdou
195 0035 380A SNZ [0ah].0
195 0036 2800 R JMP L30
195 0037 0FAE MOV A,0aeh
195 0038 0080 R MOV _ration_setdou,A
195 0039 L30:
; 197: temp_set = (iic_read(0xA0 , 0x00 )) ;
197 0039 0FA0 MOV A,0a0h
197 003A 0080 R MOV iic_read0,A
197 003B 0F00 MOV A,00h
197 003C 0080 R MOV iic_read1,A
197 003D 2000 R CALL _iic_read
197 003E 0080 R MOV _temp_set,A
; 198: if(ErrorBit)temp_set=62; //如果写入有问题,默认102度
文件:EERW.c 盛群编译器版本 2.86 页次12
198 003F 3800 R SNZ _ErrorBit
198 0040 2800 R JMP L35
198 0041 0F3E MOV A,03eh
198 0042 0080 R MOV _temp_set,A
198 0043 L34:
198 0043 L35:
文件:EERW.C 盛群编译器版本 2.86 页次12
; 199: while(1) ;
199 0043 2800 R JMP L34
199 0044 L27:
; 201: }
201 0044 2800 R JMP $
201 0045 _main ENDP
201 0045 PUBLIC _ration_setdou
201 0000 @ration_setdou .SECTION 'DATA'
; 14: unsigned char ration_setdou ;
14 0000 00 _ration_setdou DB ? ; ration_setdou
14 0001 PUBLIC _ration_setsgl
14 0000 @ration_setsgl .SECTION 'DATA'
; 13: unsigned char ration_setsgl ;
13 0000 00 _ration_setsgl DB ? ; ration_setsgl
13 0001 PUBLIC _temp_set
13 0000 @temp_set .SECTION 'DATA'
; 12: unsigned char temp_set ; //set temperature variable of the whole
12 0000 00 _temp_set DB ? ; temp_set
12 0001 PUBLIC _WrData_address
12 0000 @WrData_address .SECTION 'DATA'
; 11: uchar WrData_address;
11 0000 00 _WrData_address DB ? ; WrData_address
11 0001 PUBLIC _Wr_Address
11 0000 @Wr_Address .SECTION 'DATA'
; 10: uchar Wr_Address;
10 0000 00 _Wr_Address DB ? ; Wr_Address
10 0000 BITDATASEC .SECTION 'DATA'
10 0000 PUBLIC _ErrorBit
; 16: bit ErrorBit ;
16 0000 00 _ErrorBit DBIT ; ErrorBit
; 177: void main (void)
177 0000 STARTSEC .SECTION 'CODE'
177 0000 STARTUP:
177 0000 0003 RET
177 0000 @CODE .SECTION AT 0 'CODE'
177 0000 2800 R JMP begin
177 0001 @DUMMY PROC
177 0001 2000 R CALL _main
177 0002 @DUMMY ENDP
177 0002 ROMBANK 0 @DUMMYNOP
177 0000 @DUMMYNOP .SECTION AT 07ffh 'CODE'
177 0000 0000 nop
文件:EERW.c 盛群编译器版本 2.86 页次13
0 Errors
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -