⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lib24c16.rst

📁 eeprom program for 8051 and atmel at89c52 or At89s52
💻 RST
📖 第 1 页 / 共 3 页
字号:
   0109 5A                  379 	anl	a,r2
   010A FC                  380 	mov	r4,a
                            381 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:248: if (aux == 0) // MSB = 0
                            382 ;     genCmpEq
                            383 ;       Peephole 132    changed ljmp to sjmp
                            384 ;       Peephole 199    optimized misc jump sequence
   010B BC 00 04            385 	cjne    r4,#0x00,00102$
                            386 ;00114$:
                            387 ;       Peephole 200    removed redundant sjmp
   010E                     388 00115$:
                            389 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:249: SDA = 0; // then SDA = 0
                            390 ;     genAssign
   010E C2 91               391 	clr	_SDA
                            392 ;       Peephole 132    changed ljmp to sjmp
   0110 80 02               393 	sjmp    00103$
   0112                     394 00102$:
                            395 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:251: SDA = 1; // else MSB = 1, the SDA = 1
                            396 ;     genAssign
   0112 D2 91               397 	setb	_SDA
   0114                     398 00103$:
                            399 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:252: SCK = 1; // clock = 1
                            400 ;     genAssign
   0114 D2 90               401 	setb	_SCK
                            402 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:259: _endasm;
                            403 ;     genInline
   0116 00                  404 	                nop
   0117 00                  405 	                nop
   0118 00                  406 	                nop
   0119 00                  407 	                nop
   011A 00                  408 	                nop
                            409 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:260: SCK = 0; // clock = 0
                            410 ;     genAssign
   011B C2 90               411 	clr	_SCK
                            412 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:261: datum = datum << 1; // rotate for next bit
                            413 ;     genLeftShift
                            414 ;     genLeftShiftLiteral
                            415 ;     genlshOne
   011D EA                  416 	mov	a,r2
   011E 25 E0               417 	add	a,acc
   0120 FA                  418 	mov	r2,a
                            419 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:245: for (i = 0; i < 8; i++) // bit shifting cycle
                            420 ;     genPlus
                            421 ;     genPlusIncr
   0121 0B                  422 	inc	r3
                            423 ;       Peephole 132    changed ljmp to sjmp
   0122 80 DB               424 	sjmp    00104$
   0124                     425 00107$:
                            426 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:263: SDA = 1; // set port pin for ack
                            427 ;     genAssign
   0124 D2 91               428 	setb	_SDA
                            429 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:268: _endasm;
                            430 ;     genInline
   0126 00                  431 	        nop
   0127 00                  432 	        nop
   0128 00                  433 	        nop
                            434 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:269: SCK = 1; // clock ack
                            435 ;     genAssign
   0129 D2 90               436 	setb	_SCK
                            437 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:276: _endasm;
                            438 ;     genInline
   012B 00                  439 	        nop
   012C 00                  440 	        nop
   012D 00                  441 	        nop
   012E 00                  442 	        nop
   012F 00                  443 	        nop
                            444 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:277: SCK = 0; // clock = 0
                            445 ;     genAssign
   0130 C2 90               446 	clr	_SCK
   0132                     447 00108$:
   0132 22                  448 	ret
                            449 ;------------------------------------------------------------
                            450 ;Allocation info for local variables in function 'in'
                            451 ;------------------------------------------------------------
                            452 ;------------------------------------------------------------
                            453 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:293: char in (void)
                            454 ;	-----------------------------------------
                            455 ;	 function in
                            456 ;	-----------------------------------------
   0133                     457 _in:
                            458 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:296: char aux = 0; // auxiliary storage
                            459 ;     genAssign
   0133 7A 00               460 	mov	r2,#0x00
                            461 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:297: SDA = 1; // insure port pin = 1 for input
                            462 ;     genAssign
   0135 D2 91               463 	setb	_SDA
                            464 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:298: for (i = 0; i < 8; i++) // bit shifting cycle
                            465 ;     genAssign
   0137 7B 00               466 	mov	r3,#0x00
   0139                     467 00104$:
                            468 ;     genCmpLt
                            469 ;     genCmp
   0139 C3                  470 	clr	c
   013A EB                  471 	mov	a,r3
   013B 64 80               472 	xrl	a,#0x80
   013D 94 88               473 	subb	a,#0x88
                            474 ;     genIfxJump
                            475 ;       Peephole 108    removed ljmp by inverse jump logic
   013F 50 1C               476 	jnc     00107$
   0141                     477 00113$:
                            478 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:300: SCK = 0; // clock = 0
                            479 ;     genAssign
   0141 C2 90               480 	clr	_SCK
                            481 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:308: _endasm;
                            482 ;     genInline
   0143 00                  483 	                nop
   0144 00                  484 	                nop
   0145 00                  485 	                nop
   0146 00                  486 	                nop
   0147 00                  487 	                nop
   0148 00                  488 	                nop
                            489 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:309: SCK = 1; // clock = 1
                            490 ;     genAssign
   0149 D2 90               491 	setb	_SCK
                            492 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:310: aux = aux << 1; // load bit position
                            493 ;     genLeftShift
                            494 ;     genLeftShiftLiteral
                            495 ;     genlshOne
   014B EA                  496 	mov	a,r2
   014C 25 E0               497 	add	a,acc
   014E FA                  498 	mov	r2,a
                            499 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:311: if (SDA) // check SDA data from port pin
                            500 ;     genIfx
                            501 ;     genIfxJump
                            502 ;       Peephole 111    removed ljmp by inverse jump logic
   014F 30 91 05            503 	jnb     _SDA,00102$
   0152                     504 00114$:
                            505 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:312: aux = aux | 0x01; // if port pin = 1, set LSB (bit position)
                            506 ;     genOr
   0152 43 02 01            507 	orl	ar2,#0x01
                            508 ;       Peephole 132    changed ljmp to sjmp
   0155 80 03               509 	sjmp    00106$
   0157                     510 00102$:
                            511 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:314: aux = aux & 0xFE; // else port pin = ,clear LSB (bit position)
                            512 ;     genAnd
   0157 53 02 FE            513 	anl	ar2,#0xFE
   015A                     514 00106$:
                            515 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:298: for (i = 0; i < 8; i++) // bit shifting cycle
                            516 ;     genPlus
                            517 ;     genPlusIncr
   015A 0B                  518 	inc	r3
                            519 ;       Peephole 132    changed ljmp to sjmp
   015B 80 DC               520 	sjmp    00104$
   015D                     521 00107$:
                            522 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:316: SCK = 0; // clock = 0
                            523 ;     genAssign
   015D C2 90               524 	clr	_SCK
                            525 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:317: return (aux); // return data received
                            526 ;     genRet
   015F 8A 82               527 	mov	dpl,r2
   0161                     528 00108$:
   0161 22                  529 	ret
                            530 ;------------------------------------------------------------
                            531 ;Allocation info for local variables in function 'stop'
                            532 ;------------------------------------------------------------
                            533 ;------------------------------------------------------------
                            534 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:332: void stop (void)
                            535 ;	-----------------------------------------
                            536 ;	 function stop
                            537 ;	-----------------------------------------
   0162                     538 _stop:
                            539 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:334: SDA = 0; // stop condition, data = 0
                            540 ;     genAssign
   0162 C2 91               541 	clr	_SDA
                            542 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:341: _endasm;
                            543 ;     genInline
   0164 00                  544 	        nop
   0165 00                  545 	        nop
   0166 00                  546 	        nop
   0167 00                  547 	        nop
   0168 00                  548 	        nop
                            549 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:342: SCK = 1; // clock = 1
                            550 ;     genAssign
   0169 D2 90               551 	setb	_SCK
                            552 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:349: _endasm;
                            553 ;     genInline
   016B 00                  554 	        nop
   016C 00                  555 	        nop
   016D 00                  556 	        nop
   016E 00                  557 	        nop
   016F 00                  558 	        nop
                            559 ;C:/Maxx/Proyectos/APublicar/lib24c16.c:350: SDA = 1; // data = 1
                            560 ;     genAssign
   0170 D2 91               561 	setb	_SDA
   0172                     562 00101$:
   0172 22                  563 	ret
                            564 	.area CSEG    (CODE)
                            565 	.area XINIT   (CODE)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -