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

📄 library.lst

📁 Library for the 8051 microcontroller. such as math routine, hexBCD, LCD, Keyboard, I2C, Remote, Ke
💻 LST
字号:

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 1





       MCS-51 Family Macro Assembler   A S E M - 5 1   V 1.3
       =====================================================



	Source File:	E:\MiCrOConTroller\Coba_M-IDE\I2CROUTINE\LIBRARY.asm
	Object File:	E:\MiCrOConTroller\Coba_M-IDE\I2CROUTINE\LIBRARY.hex
	List File:	E:\MiCrOConTroller\Coba_M-IDE\I2CROUTINE\LIBRARY.lst



 Line  I  Addr  Code            Source

    1:				;************************************************************************
    2:				;		I2C Protocol Library
    3:				;
    4:				;	Written by:	Ajay Bhargav
    5:				;	Email:		bhargav.ajay@gmail.com
    6:				;	URL:		http://www.rickeyworld.info
    7:				;	Description:	I2C Subroutines for I2C communication
    8:				;			these subroutines covers start, stop, send, recieve
    9:				;			etc. They can be used by anyone and can be changed
   10:				;			and distributed.
   11:				;
   12:				;	IMPORTANT:	Some I2C devices may be slow so you need to add one
   13:				;			or two nops where ever it required.
   14:				;
   15:				;	NOTE:		This library works ony with single master multi-slave
   16:				;			configuration. If you find any problem mail me.
   17:				;************************************************************************
   18:
   19:
   20:				;************************************************************************
   21:				;		Ports Used for I2C Communication
   22:				;************************************************************************
   23:		B      0080		sda equ P0.0
   24:		B      0081		scl equ P0.1
   25:
   26:				;************************************************************************
   27:				;		Start Condition for I2C Communication
   28:				;************************************************************************
   29:
   30:	  0000			startc:
   31:	  0000	C2 81			clr scl
   32:	  0002	D2 80			setb sda
   33:	  0004	00			nop
   34:	  0005	00			nop
   35:	  0006	D2 81			setb scl
   36:	  0008	00			nop
   37:	  0009	00			nop
   38:	  000A	C2 80			clr sda
   39:	  000C	22			ret
   40:
   41:				;************************************************************************
   42:				;			Stop Condition For I2C Bus
   43:				;************************************************************************

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 2



 Line  I  Addr  Code            Source

   44:
   45:	  000D			stop:
   46:	  000D	00			nop
   47:	  000E	00			nop
   48:	  000F	C2 80			clr sda
   49:	  0011	D2 81			setb scl
   50:	  0013	00			nop
   51:	  0014	00			nop
   52:	  0015	D2 80			setb sda
   53:	  0017	00			nop
   54:	  0018	00			nop
   55:	  0019	C2 81			clr scl
   56:	  001B	22			ret
   57:
   58:				;************************************************************************
   59:				;		Sending Data to slave on I2C bus
   60:				;		       with Acknowledgement
   61:				;************************************************************************
   62:
   63:	  001C			send:
   64:	  001C	7F 08			mov r7,#08
   65:	  001E			back:
   66:	  001E	C2 81			clr scl
   67:	  0020	00			nop
   68:	  0021	00			nop
   69:	  0022	00			nop
   70:	  0023	33			rlc a
   71:	  0024	92 80			mov sda,c
   72:	  0026	D2 81			setb scl
   73:	  0028	00			nop
   74:	  0029	00			nop
   75:	  002A	00			nop
   76:	  002B	C2 81			clr scl
   77:	  002D	00			nop
   78:	  002E	00			nop
   79:	  002F	00			nop
   80:	  0030	DF EC			djnz r7,back
   81:	  0032	D2 80			setb sda
   82:	  0034	D2 81			setb scl
   83:	  0036	00			nop
   84:	  0037	00			nop
   85:	  0038	00			nop
   86:	  0039	00			nop
   87:	  003A	C2 81			clr scl
   88:	  003C	00			nop
   89:	  003D	00			nop
   90:	  003E	00			nop
   91:	  003F	22			ret
   92:
   93:				;************************************************************************
   94:				;		Receiving Data from slave on I2C bus
   95:				;		       with Acknowledgement
   96:				;************************************************************************
   97:
   98:	  0040			recv:
   99:	  0040	7F 08			mov r7,#08

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 3



 Line  I  Addr  Code            Source

  100:	  0042			back2:
  101:	  0042	D2 80			setb sda
  102:	  0044	D2 81			setb scl
  103:	  0046	00			nop
  104:	  0047	00			nop
  105:	  0048	00			nop
  106:	  0049	A2 80			mov c,sda
  107:	  004B	33			rlc a
  108:	  004C	C2 81			clr scl
  109:	  004E	00			nop
  110:	  004F	00			nop
  111:	  0050	00			nop
  112:	  0051	DF EF			djnz r7,back2
  113:	  0053	D2 80			setb sda
  114:	  0055	C2 81			clr scl
  115:	  0057	00			nop
  116:	  0058	00			nop
  117:	  0059	00			nop
  118:	  005A	C2 80			clr sda
  119:	  005C	D2 81			setb scl
  120:	  005E	00			nop
  121:	  005F	00			nop
  122:	  0060	00			nop
  123:	  0061	C2 81			clr scl
  124:	  0063	00			nop
  125:	  0064	00			nop
  126:	  0065	00			nop
  127:	  0066	F6			mov @r0,a
  128:	  0067	08			inc r0
  129:	  0068	22			ret
  130:				END





                     register banks used:  ---

                     no errors




ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 4





	       L I S T   O F   S Y M B O L S
	       =============================


SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
??ASEM_51			  NUMBER    8051
??VERSION			  NUMBER    0130
AC				  BIT	      D6
ACC				  DATA	      E0
B				  DATA	      F0
BACK				  CODE	    001E	  65
BACK2				  CODE	    0042	 100
CY				  BIT	      D7
DPH				  DATA	      83
DPL				  DATA	      82
EA				  BIT	      AF
ES				  BIT	      AC
ET0				  BIT	      A9
ET1				  BIT	      AB
EX0				  BIT	      A8
EX1				  BIT	      AA
EXTI0				  CODE	    0003
EXTI1				  CODE	    0013
F0				  BIT	      D5
IE				  DATA	      A8
IE0				  BIT	      89
IE1				  BIT	      8B
INT0				  BIT	      B2
INT1				  BIT	      B3
IP				  DATA	      B8
IT0				  BIT	      88
IT1				  BIT	      8A
OV				  BIT	      D2
P				  BIT	      D0
P0				  DATA	      80
P1				  DATA	      90
P2				  DATA	      A0
P3				  DATA	      B0
PCON				  DATA	      87
PS				  BIT	      BC
PSW				  DATA	      D0
PT0				  BIT	      B9
PT1				  BIT	      BB
PX0				  BIT	      B8
PX1				  BIT	      BA
RB8				  BIT	      9A
RD				  BIT	      B7
RECV				  CODE	    0040	  98
REN				  BIT	      9C
RESET				  CODE	    0000
RI				  BIT	      98
RS0				  BIT	      D3
RS1				  BIT	      D4
RXD				  BIT	      B0
SBUF				  DATA	      99

ASEM-51 V1.3                                         Copyright (c) 2002 by W.W. Heinz                                         PAGE 5



SYMBOL				  TYPE     VALUE	LINE
------------------------------------------------------------
SCL				  NUMBER    0081	  24
SCON				  DATA	      98
SDA				  NUMBER    0080	  23
SEND				  CODE	    001C	  63
SINT				  CODE	    0023
SM0				  BIT	      9F
SM1				  BIT	      9E
SM2				  BIT	      9D
SP				  DATA	      81
STARTC				  CODE	    0000	  30
STOP				  CODE	    000D	  45
T0				  BIT	      B4
T1				  BIT	      B5
TB8				  BIT	      9B
TCON				  DATA	      88
TF0				  BIT	      8D
TF1				  BIT	      8F
TH0				  DATA	      8C
TH1				  DATA	      8D
TI				  BIT	      99
TIMER0				  CODE	    000B
TIMER1				  CODE	    001B
TL0				  DATA	      8A
TL1				  DATA	      8B
TMOD				  DATA	      89
TR0				  BIT	      8C
TR1				  BIT	      8E
TXD				  BIT	      B1
WR				  BIT	      B6

⌨️ 快捷键说明

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