📄 ac15-2.lis
字号:
02D4 ; uchar i,command;
02D4 ; DDRC=0x03;
02D4 83E0 ldi R24,3
02D6 84BB out 0x14,R24
02D8 .dbline 215
02D8 ; SDA_1;Some_NOP();
02D8 A99A sbi 0x15,1
02DA .dbline 215
02DA .dbline 215
02DA 0000 nop
02DC .dbline 215
02DC 0000 nop
02DE .dbline 215
02DE 0000 nop
02E0 .dbline 215
02E0 0000 nop
02E2 .dbline 215
02E2 0000 nop
02E4 .dbline 215
02E4 0000 nop
02E6 .dbline 215
02E6 0000 nop
02E8 .dbline 215
02E8 0000 nop
02EA .dbline 215
02EA .dbline 216
02EA ; SCL_0;Some_NOP();
02EA A898 cbi 0x15,0
02EC .dbline 216
02EC .dbline 216
02EC 0000 nop
02EE .dbline 216
02EE 0000 nop
02F0 .dbline 216
02F0 0000 nop
02F2 .dbline 216
02F2 0000 nop
02F4 .dbline 216
02F4 0000 nop
02F6 .dbline 216
02F6 0000 nop
02F8 .dbline 216
02F8 0000 nop
02FA .dbline 216
02FA 0000 nop
02FC .dbline 216
02FC .dbline 217
02FC ; start();
02FC 62DF xcall _start
02FE .dbline 218
02FE ; command=160;
02FE 40EA ldi R20,160
0300 .dbline 219
0300 ; shift8(command);
0300 042F mov R16,R20
0302 B9DF xcall _shift8
0304 .dbline 220
0304 ; ack();
0304 A3DF xcall _ack
0306 .dbline 221
0306 ; shift8(a);
0306 062F mov R16,R22
0308 B6DF xcall _shift8
030A .dbline 222
030A ; ack();
030A A0DF xcall _ack
030C .dbline 223
030C ; start();
030C 5ADF xcall _start
030E .dbline 224
030E ; command=161;
030E 41EA ldi R20,161
0310 .dbline 225
0310 ; shift8(command);
0310 042F mov R16,R20
0312 B1DF xcall _shift8
0314 .dbline 226
0314 ; ack();
0314 9BDF xcall _ack
0316 .dbline 228
0316 ;
0316 ; SDA_1;Some_NOP();
0316 A99A sbi 0x15,1
0318 .dbline 228
0318 .dbline 228
0318 0000 nop
031A .dbline 228
031A 0000 nop
031C .dbline 228
031C 0000 nop
031E .dbline 228
031E 0000 nop
0320 .dbline 228
0320 0000 nop
0322 .dbline 228
0322 0000 nop
0324 .dbline 228
0324 0000 nop
0326 .dbline 228
0326 0000 nop
0328 .dbline 228
0328 .dbline 229
0328 ; for(i=0;i<8;i++)
0328 4427 clr R20
032A 26C0 xjmp L58
032C L55:
032C .dbline 230
032C ; {
032C .dbline 231
032C ; DDRC=0x01;
032C 81E0 ldi R24,1
032E 84BB out 0x14,R24
0330 .dbline 232
0330 ; com_data=com_data<<1;
0330 20900100 lds R2,_com_data
0334 220C lsl R2
0336 20920100 sts _com_data,R2
033A .dbline 233
033A ; SCL_1;Some_NOP();
033A A89A sbi 0x15,0
033C .dbline 233
033C .dbline 233
033C 0000 nop
033E .dbline 233
033E 0000 nop
0340 .dbline 233
0340 0000 nop
0342 .dbline 233
0342 0000 nop
0344 .dbline 233
0344 0000 nop
0346 .dbline 233
0346 0000 nop
0348 .dbline 233
0348 0000 nop
034A .dbline 233
034A 0000 nop
034C .dbline 233
034C .dbline 234
034C ; if(PIN_SDA==0)com_data&=0xfe;
034C 9999 sbic 0x13,1
034E 05C0 rjmp L59
0350 .dbline 234
0350 822D mov R24,R2
0352 8E7F andi R24,254
0354 80930100 sts _com_data,R24
0358 05C0 xjmp L60
035A L59:
035A .dbline 235
035A ; else com_data|=0x01;
035A 80910100 lds R24,_com_data
035E 8160 ori R24,1
0360 80930100 sts _com_data,R24
0364 L60:
0364 .dbline 236
0364 A898 cbi 0x15,0
0366 .dbline 236
0366 .dbline 236
0366 0000 nop
0368 .dbline 236
0368 0000 nop
036A .dbline 236
036A 0000 nop
036C .dbline 236
036C 0000 nop
036E .dbline 236
036E 0000 nop
0370 .dbline 236
0370 0000 nop
0372 .dbline 236
0372 0000 nop
0374 .dbline 236
0374 0000 nop
0376 .dbline 236
0376 .dbline 237
0376 L56:
0376 .dbline 229
0376 4395 inc R20
0378 L58:
0378 .dbline 229
0378 4830 cpi R20,8
037A C0F2 brlo L55
037C .dbline 238
037C ; SCL_0;Some_NOP();
037C ; }
037C ; stop();
037C 49DF xcall _stop
037E .dbline 239
037E ; return(com_data);
037E 00910100 lds R16,_com_data
0382 .dbline -2
0382 L54:
0382 0E940000 xcall pop_gset2
0386 .dbline 0 ; func end
0386 0895 ret
0388 .dbsym r command 20 c
0388 .dbsym r i 20 c
0388 .dbsym r a 22 c
0388 .dbend
0388 .dbfunc e wr_24c01 _wr_24c01 fV
0388 ; command -> R10
0388 ; b -> R20
0388 ; a -> R22
.even
0388 _wr_24c01::
0388 0E940000 xcall push_gset3
038C 422F mov R20,R18
038E 602F mov R22,R16
0390 .dbline -1
0390 .dbline 243
0390 ; }
0390 ; //********将RAM中b地址单元的数据写入24C01A中a地址单元中***********
0390 ; void wr_24c01(char a,char b)
0390 ; {
0390 .dbline 245
0390 ; uchar command;
0390 ; DDRC=0x03;
0390 83E0 ldi R24,3
0392 84BB out 0x14,R24
0394 .dbline 246
0394 ; SDA_1;Some_NOP();
0394 A99A sbi 0x15,1
0396 .dbline 246
0396 .dbline 246
0396 0000 nop
0398 .dbline 246
0398 0000 nop
039A .dbline 246
039A 0000 nop
039C .dbline 246
039C 0000 nop
039E .dbline 246
039E 0000 nop
03A0 .dbline 246
03A0 0000 nop
03A2 .dbline 246
03A2 0000 nop
03A4 .dbline 246
03A4 0000 nop
03A6 .dbline 246
03A6 .dbline 247
03A6 ; SCL_0;Some_NOP();
03A6 A898 cbi 0x15,0
03A8 .dbline 247
03A8 .dbline 247
03A8 0000 nop
03AA .dbline 247
03AA 0000 nop
03AC .dbline 247
03AC 0000 nop
03AE .dbline 247
03AE 0000 nop
03B0 .dbline 247
03B0 0000 nop
03B2 .dbline 247
03B2 0000 nop
03B4 .dbline 247
03B4 0000 nop
03B6 .dbline 247
03B6 0000 nop
03B8 .dbline 247
03B8 .dbline 248
03B8 ; start();
03B8 04DF xcall _start
03BA .dbline 249
03BA ; command=160;
03BA 80EA ldi R24,160
03BC A82E mov R10,R24
03BE .dbline 250
03BE ; shift8(command);
03BE 082F mov R16,R24
03C0 5ADF xcall _shift8
03C2 .dbline 251
03C2 ; ack();
03C2 44DF xcall _ack
03C4 .dbline 252
03C4 ; shift8(a);
03C4 062F mov R16,R22
03C6 57DF xcall _shift8
03C8 .dbline 253
03C8 ; ack();
03C8 41DF xcall _ack
03CA .dbline 254
03CA ; shift8(b);
03CA 042F mov R16,R20
03CC 54DF xcall _shift8
03CE .dbline 255
03CE ; ack();
03CE 3EDF xcall _ack
03D0 .dbline 256
03D0 ; stop();
03D0 1FDF xcall _stop
03D2 .dbline 257
03D2 ; Some_NOP();
03D2 .dbline 257
03D2 0000 nop
03D4 .dbline 257
03D4 0000 nop
03D6 .dbline 257
03D6 0000 nop
03D8 .dbline 257
03D8 0000 nop
03DA .dbline 257
03DA 0000 nop
03DC .dbline 257
03DC 0000 nop
03DE .dbline 257
03DE 0000 nop
03E0 .dbline 257
03E0 0000 nop
03E2 .dbline 257
03E2 .dbline -2
03E2 L61:
03E2 0E940000 xcall pop_gset3
03E6 .dbline 0 ; func end
03E6 0895 ret
03E8 .dbsym r command 10 c
03E8 .dbsym r b 20 c
03E8 .dbsym r a 22 c
03E8 .dbend
03E8 .dbfunc e delay_iic _delay_iic fV
03E8 ; i -> R20,R21
03E8 ; n -> R16,R17
.even
03E8 _delay_iic::
03E8 0E940000 xcall push_gset1
03EC .dbline -1
03EC .dbline 261
03EC ; }
03EC ; //**************延时子函数***********
03EC ; void delay_iic(int n)
03EC ; {
03EC .dbline 263
03EC 41E0 ldi R20,1
03EE 50E0 ldi R21,0
03F0 02C0 xjmp L66
03F2 L63:
03F2 .dbline 263
03F2 .dbline 263
03F2 .dbline 263
03F2 L64:
03F2 .dbline 263
03F2 4F5F subi R20,255 ; offset = 1
03F4 5F4F sbci R21,255
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -