📄 iic_master.lis
字号:
0348 .dbline 253
0348 0000 nop
034A .dbline 253
034A 0000 nop
034C .dbline 253
034C .dbline 254
034C 0000 nop
034E .dbline 254
034E 0000 nop
0350 .dbline 254
0350 0000 nop
0352 .dbline 254
0352 0000 nop
0354 .dbline 254
0354 0000 nop
0356 .dbline 254
0356 0000 nop
0358 .dbline 254
0358 0000 nop
035A .dbline 254
035A 0000 nop
035C .dbline 254
035C 0000 nop
035E .dbline 254
035E 0000 nop
0360 .dbline 254
0360 0000 nop
0362 .dbline 254
0362 0000 nop
0364 .dbline 254
0364 0000 nop
0366 .dbline 254
0366 0000 nop
0368 .dbline 254
0368 0000 nop
036A .dbline 254
036A 0000 nop
036C .dbline 254
036C .dbline 255
036C A898 cbi 0x15,0
036E .dbline 256
036E 000F lsl R16
0370 .dbline 257
0370 L30:
0370 .dbline 243
0370 4395 inc R20
0372 L32:
0372 .dbline 243
0372 4830 cpi R20,8
0374 08F4 brsh X0
0376 D4CF xjmp L29
0378 X0:
0378 .dbline 258
0378 ; IIC_SCL_H;
0378 ; IIC_delay();
0378 ; IIC_delay();
0378 ; IIC_SCL_L;
0378 ; IIC_data <<= 1;
0378 ; }
0378 ; IIC_SDA_I;
0378 A198 cbi 0x14,1
037A .dbline 259
037A ; IIC_SDA_H;
037A A99A sbi 0x15,1
037C .dbline 260
037C ; IIC_delay();
037C 0000 nop
037E .dbline 260
037E 0000 nop
0380 .dbline 260
0380 0000 nop
0382 .dbline 260
0382 0000 nop
0384 .dbline 260
0384 0000 nop
0386 .dbline 260
0386 0000 nop
0388 .dbline 260
0388 0000 nop
038A .dbline 260
038A 0000 nop
038C .dbline 260
038C 0000 nop
038E .dbline 260
038E 0000 nop
0390 .dbline 260
0390 0000 nop
0392 .dbline 260
0392 0000 nop
0394 .dbline 260
0394 0000 nop
0396 .dbline 260
0396 0000 nop
0398 .dbline 260
0398 0000 nop
039A .dbline 260
039A 0000 nop
039C .dbline 260
039C .dbline 261
039C ; IIC_delay();
039C 0000 nop
039E .dbline 261
039E 0000 nop
03A0 .dbline 261
03A0 0000 nop
03A2 .dbline 261
03A2 0000 nop
03A4 .dbline 261
03A4 0000 nop
03A6 .dbline 261
03A6 0000 nop
03A8 .dbline 261
03A8 0000 nop
03AA .dbline 261
03AA 0000 nop
03AC .dbline 261
03AC 0000 nop
03AE .dbline 261
03AE 0000 nop
03B0 .dbline 261
03B0 0000 nop
03B2 .dbline 261
03B2 0000 nop
03B4 .dbline 261
03B4 0000 nop
03B6 .dbline 261
03B6 0000 nop
03B8 .dbline 261
03B8 0000 nop
03BA .dbline 261
03BA 0000 nop
03BC .dbline 261
03BC .dbline 262
03BC ; IIC_SCL_H;
03BC A89A sbi 0x15,0
03BE .dbline 263
03BE ; IIC_delay();
03BE 0000 nop
03C0 .dbline 263
03C0 0000 nop
03C2 .dbline 263
03C2 0000 nop
03C4 .dbline 263
03C4 0000 nop
03C6 .dbline 263
03C6 0000 nop
03C8 .dbline 263
03C8 0000 nop
03CA .dbline 263
03CA 0000 nop
03CC .dbline 263
03CC 0000 nop
03CE .dbline 263
03CE 0000 nop
03D0 .dbline 263
03D0 0000 nop
03D2 .dbline 263
03D2 0000 nop
03D4 .dbline 263
03D4 0000 nop
03D6 .dbline 263
03D6 0000 nop
03D8 .dbline 263
03D8 0000 nop
03DA .dbline 263
03DA 0000 nop
03DC .dbline 263
03DC 0000 nop
03DE .dbline 263
03DE .dbline 264
03DE ; IIC_delay();
03DE 0000 nop
03E0 .dbline 264
03E0 0000 nop
03E2 .dbline 264
03E2 0000 nop
03E4 .dbline 264
03E4 0000 nop
03E6 .dbline 264
03E6 0000 nop
03E8 .dbline 264
03E8 0000 nop
03EA .dbline 264
03EA 0000 nop
03EC .dbline 264
03EC 0000 nop
03EE .dbline 264
03EE 0000 nop
03F0 .dbline 264
03F0 0000 nop
03F2 .dbline 264
03F2 0000 nop
03F4 .dbline 264
03F4 0000 nop
03F6 .dbline 264
03F6 0000 nop
03F8 .dbline 264
03F8 0000 nop
03FA .dbline 264
03FA 0000 nop
03FC .dbline 264
03FC 0000 nop
03FE .dbline 264
03FE .dbline 265
03FE ; if (IIC_DATA)
03FE 999B sbis 0x13,1
0400 03C0 rjmp L35
0402 .dbline 266
0402 ; {
0402 .dbline 267
0402 ; IIC_SCL_L;
0402 A898 cbi 0x15,0
0404 .dbline 268
0404 ; return FALSE;
0404 02E0 ldi R16,2
0406 02C0 xjmp L28
0408 L35:
0408 .dbline 271
0408 ; }
0408 ; else
0408 ; {
0408 .dbline 272
0408 ; IIC_SCL_L;
0408 A898 cbi 0x15,0
040A .dbline 273
040A ; return TRUE;
040A 01E0 ldi R16,1
040C .dbline -2
040C L28:
040C 0E940000 xcall pop_gset1
0410 .dbline 0 ; func end
0410 0895 ret
0412 .dbsym l temp 1 c
0412 .dbsym r i 20 c
0412 .dbsym r IIC_data 16 c
0412 .dbend
0412 .dbfunc e IICReceive _IICReceive fc
0412 ; i -> R16
0412 ; r -> R18
.even
0412 _IICReceive::
0412 .dbline -1
0412 .dbline 286
0412 ; }
0412 ; }
0412 ;
0412 ; /*********************************************************************************************************
0412 ; ** 函数名称: IICReceive
0412 ; ** 功能描述: 读取一个字节
0412 ; ** 输 入: 无
0412 ; ** 输 出: 读取的字节
0412 ; ** 全局变量: 无
0412 ; ** 调用模块: 无
0412 ; ********************************************************************************************************/
0412 ; uchar IICReceive(void)
0412 ; {
0412 .dbline 289
0412 ; uchar i,r;
0412 ;
0412 ; r = 0;
0412 2227 clr R18
0414 .dbline 290
0414 ; IIC_SDA_I;
0414 A198 cbi 0x14,1
0416 .dbline 291
0416 ; IIC_SDA_H;
0416 A99A sbi 0x15,1
0418 .dbline 292
0418 ; for (i = 0; i < 8; i++)
0418 0027 clr R16
041A 29C0 xjmp L41
041C L38:
041C .dbline 293
041C ; {
041C .dbline 294
041C ; r = r * 2;
041C 82E0 ldi R24,2
041E 829F mul R24,R18
0420 202D mov R18,R0
0422 .dbline 295
0422 ; IIC_SCL_H;
0422 A89A sbi 0x15,0
0424 .dbline 296
0424 ; IIC_delay();
0424 0000 nop
0426 .dbline 296
0426 0000 nop
0428 .dbline 296
0428 0000 nop
042A .dbline 296
042A 0000 nop
042C .dbline 296
042C 0000 nop
042E .dbline 296
042E 0000 nop
0430 .dbline 296
0430 0000 nop
0432 .dbline 296
0432 0000 nop
0434 .dbline 296
0434 0000 nop
0436 .dbline 296
0436 0000 nop
0438 .dbline 296
0438 0000 nop
043A .dbline 296
043A 0000 nop
043C .dbline 296
043C 0000 nop
043E .dbline 296
043E 0000 nop
0440 .dbline 296
0440 0000 nop
0442 .dbline 296
0442 0000 nop
0444 .dbline 296
0444 .dbline 297
0444 ; IIC_delay();
0444 0000 nop
0446 .dbline 297
0446 0000 nop
0448 .dbline 297
0448 0000 nop
044A .dbline 297
044A 0000 nop
044C .dbline 297
044C 0000 nop
044E .dbline 297
044E 0000 nop
0450 .dbline 297
0450 0000 nop
0452 .dbline 297
0452 0000 nop
0454 .dbline 297
0454 0000 nop
0456 .dbline 297
0456 0000 nop
0458 .dbline 297
0458 0000 nop
045A .dbline 297
045A 0000 nop
045C .dbline 297
045C 0000 nop
045E .dbline 297
045E 0000 nop
0460 .dbline 297
0460 0000 nop
0462 .dbline 297
0462 0000 nop
0464 .dbline 297
0464 .dbline 298
0464 ; if (IIC_DATA)
0464 999B sbis 0x13,1
0466 01C0 rjmp L42
0468 .dbline 299
0468 ; {
0468 .dbline 300
0468 ; r++;
0468 2395 inc R18
046A .dbline 301
046A ; }
046A L42:
046A .dbline 302
046A A898 cbi 0x15,0
046C .dbline 303
046C L39:
046C .dbline 292
046C 0395 inc R16
046E L41:
046E .dbline 292
046E 0830 cpi R16,8
0470 08F4 brsh X1
0472 D4CF xjmp L38
0474 X1:
0474 .dbline 304
0474 ; IIC_SCL_L;
0474 ; }
0474 ; return r;
0474 022F mov R16,R18
0476 .dbline -2
0476 L37:
0476 .dbline 0 ; func end
0476 0895 ret
0478 .dbsym r i 16 c
0478 .dbsym r r 18 c
0478 .dbend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -