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

📄 e93lc56.lst

📁 HT48F MCU系列2K位EEPROM Data Memory的读写 - 使用C语言
💻 LST
字号:
文件:E93LC56.c    盛群编译器版本 2.86 页次1



;  30: {
  30  0000              @READ .SECTION 'CODE'
  30  0000              PUBLIC _READ
  30  0000              _READ PROC

;  29: UC READ(UC EEADDR)
  29  0000              PUBLIC READ0
  29  0000  00          LOCAL READ0 DB ? ; EEADDR

;  33: 	_cs = 1;
  33  0000  3202        SET [02H].4

;  35: 	Shift(cREAD,4);				//OP Code
  35  0001  0FC0        MOV A,0c0h
  35  0002  0080     R  MOV Shift0,A
  35  0003  0F04        MOV A,04h
  35  0004  0080     R  MOV Shift1,A
  35  0005  2000     R  CALL _Shift

;  36: 	Shift(EEADDR,8);			//Address
  36  0006  0700     R  MOV A,READ0
  36  0007  0080     R  MOV Shift0,A
  36  0008  0F08        MOV A,08h
  36  0009  0080     R  MOV Shift1,A
  36  000A  2000     R  CALL _Shift

;  37: 	EEDATA = Shift(0x00,8);
  37  000B  0F00        MOV A,00h
  37  000C  0080     R  MOV Shift0,A
  37  000D  0F08        MOV A,08h
  37  000E  0080     R  MOV Shift1,A
  37  000F  2000     R  CALL _Shift
  37  0010  0080     R  MOV CR1,A

;  39: 	_cs = 0;
  39  0011  3602        CLR [02H].4

;  41: 	return EEDATA;
  41  0012  0700     R  MOV A,CR1
  41  0013              L1:
  41  0013  0003        RET
  41  0001  00          LOCAL b0_1 DB ?

;  31: 	UC EEDATA;
  31  0002  00          LOCAL CR1 DB ? ; EEDATA
  31  0014              _READ ENDP

;  49: {
  49  0000              @ERASE .SECTION 'CODE'
  49  0000              PUBLIC _ERASE
  49  0000              _ERASE PROC

;  48: void ERASE(UC EEADDR)
  48  0000              PUBLIC ERASE0
  48  0000  00          LOCAL ERASE0 DB ? ; EEADDR

;  50: 	_cs = 1;
文件:E93LC56.c    盛群编译器版本 2.86 页次2 

  50  0000  3202        SET [02H].4

;  52: 	Shift(cERASE,4);			//OP Code
  52  0001  0FE0        MOV A,0e0h
  52  0002  0080     R  MOV Shift0,A
文件:E93LC56.C    盛群编译器版本 2.86 页次2

  52  0003  0F04        MOV A,04h
  52  0004  0080     R  MOV Shift1,A
  52  0005  2000     R  CALL _Shift

;  53: 	Shift(EEADDR,8);			//Address
  53  0006  0700     R  MOV A,ERASE0
  53  0007  0080     R  MOV Shift0,A
  53  0008  0F08        MOV A,08h
  53  0009  0080     R  MOV Shift1,A
  53  000A  2000     R  CALL _Shift

;  55: 	_cs = 0;
  55  000B  3602        CLR [02H].4

;  57: 	ChkBusy();
  57  000C  2000     R  CALL _ChkBusy
  57  000D              L2:
  57  000D  0003        RET
  57  0001  00          LOCAL b0_2 DB ?
  57  000E              _ERASE ENDP

;  65: {
  65  0000              @WRITE .SECTION 'CODE'
  65  0000              PUBLIC _WRITE
  65  0000              _WRITE PROC

;  64: void WRITE(UC EEADDR, UC EEDATA)
  64  0000              PUBLIC WRITE0
  64  0000  00          LOCAL WRITE0 DB ? ; EEADDR
  64  0000              PUBLIC WRITE1
  64  0001  00          LOCAL WRITE1 DB ? ; EEDATA

;  66: 	_cs = 1;
  66  0000  3202        SET [02H].4

;  68: 	Shift(cWRITE,4);			//OP Code
  68  0001  0FA0        MOV A,0a0h
  68  0002  0080     R  MOV Shift0,A
  68  0003  0F04        MOV A,04h
  68  0004  0080     R  MOV Shift1,A
  68  0005  2000     R  CALL _Shift

;  69: 	Shift(EEADDR,8);			//Address
  69  0006  0700     R  MOV A,WRITE0
  69  0007  0080     R  MOV Shift0,A
  69  0008  0F08        MOV A,08h
  69  0009  0080     R  MOV Shift1,A
  69  000A  2000     R  CALL _Shift

;  70: 	Shift(EEDATA,8);			//Address	
  70  000B  0700     R  MOV A,WRITE1
  70  000C  0080     R  MOV Shift0,A
  70  000D  0F08        MOV A,08h
文件:E93LC56.c    盛群编译器版本 2.86 页次3 

  70  000E  0080     R  MOV Shift1,A
  70  000F  2000     R  CALL _Shift

;  72: 	_cs = 0;
  72  0010  3602        CLR [02H].4

;  74: 	ChkBusy();
  74  0011  2000     R  CALL _ChkBusy
  74  0012              L3:
  74  0012  0003        RET
  74  0002  00          LOCAL b0_3 DB ?
  74  0013              _WRITE ENDP

;  82: {
文件:E93LC56.C    盛群编译器版本 2.86 页次3

  82  0000              @EWEN .SECTION 'CODE'
  82  0000              PUBLIC _EWEN
  82  0000              _EWEN PROC

;  83: 	_cs = 1;
  83  0000  3202        SET [02H].4

;  85: 	Shift(cEWEN,4);			//OP Code
  85  0001  0F90        MOV A,090h
  85  0002  0080     R  MOV Shift0,A
  85  0003  0F04        MOV A,04h
  85  0004  0080     R  MOV Shift1,A
  85  0005  2000     R  CALL _Shift

;  86: 	Shift(0x80,8);
  86  0006  0F80        MOV A,080h
  86  0007  0080     R  MOV Shift0,A
  86  0008  0F08        MOV A,08h
  86  0009  0080     R  MOV Shift1,A
  86  000A  2000     R  CALL _Shift

;  88: 	_cs = 0;
  88  000B  3602        CLR [02H].4
  88  000C              L4:
  88  000C  0003        RET
  88  0000  00          LOCAL b0_4 DB ?
  88  000D              _EWEN ENDP

;  96: {
  96  0000              @EWDS .SECTION 'CODE'
  96  0000              PUBLIC _EWDS
  96  0000              _EWDS PROC

;  97: 	_cs = 1;
  97  0000  3202        SET [02H].4

;  99: 	Shift(cEWDS,4);			//OP Code
  99  0001  0F80        MOV A,080h
  99  0002  0080     R  MOV Shift0,A
  99  0003  0F04        MOV A,04h
  99  0004  0080     R  MOV Shift1,A
  99  0005  2000     R  CALL _Shift

; 100: 	Shift(0x00,8);
文件:E93LC56.c    盛群编译器版本 2.86 页次4 

 100  0006  0F00        MOV A,00h
 100  0007  0080     R  MOV Shift0,A
 100  0008  0F08        MOV A,08h
 100  0009  0080     R  MOV Shift1,A
 100  000A  2000     R  CALL _Shift

; 102: 	_cs = 0;
 102  000B  3602        CLR [02H].4
 102  000C              L5:
 102  000C  0003        RET
 102  0000  00          LOCAL b0_5 DB ?
 102  000D              _EWDS ENDP

; 110: {
 110  0000              @ERAL .SECTION 'CODE'
 110  0000              PUBLIC _ERAL
 110  0000              _ERAL PROC

; 111: 	_cs = 1;
 111  0000  3202        SET [02H].4

; 113: 	Shift(cERAL,4);				//OP Code
 113  0001  0F90        MOV A,090h
 113  0002  0080     R  MOV Shift0,A
 113  0003  0F04        MOV A,04h
文件:E93LC56.C    盛群编译器版本 2.86 页次4

 113  0004  0080     R  MOV Shift1,A
 113  0005  2000     R  CALL _Shift

; 114: 	Shift(0x00,8);				//Address
 114  0006  0F00        MOV A,00h
 114  0007  0080     R  MOV Shift0,A
 114  0008  0F08        MOV A,08h
 114  0009  0080     R  MOV Shift1,A
 114  000A  2000     R  CALL _Shift

; 116: 	_cs = 0;
 116  000B  3602        CLR [02H].4

; 118: 	ChkBusy();
 118  000C  2000     R  CALL _ChkBusy
 118  000D              L6:
 118  000D  0003        RET
 118  0000  00          LOCAL b0_6 DB ?
 118  000E              _ERAL ENDP

; 126: {
 126  0000              @WRAL .SECTION 'CODE'
 126  0000              PUBLIC _WRAL
 126  0000              _WRAL PROC

; 125: void WRAL(UC EEDATA)
 125  0000              PUBLIC WRAL0
 125  0000  00          LOCAL WRAL0 DB ? ; EEDATA

; 127: 	_cs = 1;
 127  0000  3202        SET [02H].4

; 129: 	Shift(cWRAL,4);				//OP Code
文件:E93LC56.c    盛群编译器版本 2.86 页次5 

 129  0001  0F80        MOV A,080h
 129  0002  0080     R  MOV Shift0,A
 129  0003  0F04        MOV A,04h
 129  0004  0080     R  MOV Shift1,A
 129  0005  2000     R  CALL _Shift

; 130: 	Shift(0x80,8);
 130  0006  0F80        MOV A,080h
 130  0007  0080     R  MOV Shift0,A
 130  0008  0F08        MOV A,08h
 130  0009  0080     R  MOV Shift1,A
 130  000A  2000     R  CALL _Shift

; 131: 	Shift(EEDATA,8);			//Address	
 131  000B  0700     R  MOV A,WRAL0
 131  000C  0080     R  MOV Shift0,A
 131  000D  0F08        MOV A,08h
 131  000E  0080     R  MOV Shift1,A
 131  000F  2000     R  CALL _Shift

; 133: 	_cs = 0;
 133  0010  3602        CLR [02H].4

; 135: 	ChkBusy();
 135  0011  2000     R  CALL _ChkBusy
 135  0012              L7:
 135  0012  0003        RET
 135  0001  00          LOCAL b0_7 DB ?
 135  0013              _WRAL ENDP

; 143: {
 143  0000              @Shift .SECTION 'CODE'
 143  0000              PUBLIC _Shift
 143  0000              _Shift PROC

; 142: UC Shift(UC buf, UC cnt)
文件:E93LC56.C    盛群编译器版本 2.86 页次5

 142  0000              PUBLIC Shift0
 142  0000  00          LOCAL Shift0 DB ? ; buf
 142  0000              PUBLIC Shift1
 142  0001  00          LOCAL Shift1 DB ? ; cnt
 142  0000              L9:

; 146: 		if(buf & cTestb7)
 146  0000  3800     R  SNZ Shift0.7
 146  0001  2800     R  JMP L12

; 147: 			_di = 1;
 147  0002  3302        SET [02H].6
 147  0003  2800     R  JMP L13
 147  0004              L12:

; 149: 			_di = 0;
 149  0004  3702        CLR [02H].6
 149  0005              L13:

; 151: 		_sk = 1;
 151  0005  3282        SET [02H].5

; 153: 		_rl(&buf);
文件:E93LC56.c    盛群编译器版本 2.86 页次6 

 153  0006  1880     R  RL Shift0

; 154: 		if(_do)
 154  0007  3B82        SNZ [02H].7
 154  0008  2800     R  JMP L14

; 155: 			buf |= cSetb0;
 155  0009  3000     R  SET Shift0.0
 155  000A  2800     R  JMP L15
 155  000B              L14:

; 157: 			buf &= cClrb0;
 157  000B  3400     R  CLR Shift0.0
 157  000C              L15:

; 159: 		_sk = 0;
 159  000C  3682        CLR [02H].5
 159  000D              L10:

; 161: 	}while(--cnt);
 161  000D  1500     R  DECA Shift1
 161  000E  0080     R  MOV b0_8,A
 161  000F  0700     R  MOV A,b0_8
 161  0010  0080     R  MOV Shift1,A
 161  0011  1080     R  SZ b0_8
 161  0012  2800     R  JMP L9

; 163: 	return buf;
 163  0013  0700     R  MOV A,Shift0
 163  0014              L8:
 163  0014  0003        RET
 163  0002  00          LOCAL b0_8 DB ?
 163  0015              _Shift ENDP

; 171: {
 171  0000              @ChkBusy .SECTION 'CODE'
 171  0000              PUBLIC _ChkBusy
 171  0000              _ChkBusy PROC

; 172: 	_cs = 1;
 172  0000  3202        SET [02H].4
文件:E93LC56.C    盛群编译器版本 2.86 页次6

 172  0001  2800     R  JMP L18
 172  0002              L17:

; 176: 		_nop();
 176  0002  0000        NOP

; 177: 		_nop();
 177  0003  0000        NOP

; 178: 		_sk = 1;
 178  0004  3282        SET [02H].5

; 179: 		_nop();
 179  0005  0000        NOP

; 180: 		if(_do)
 180  0006  3B82        SNZ [02H].7
文件:E93LC56.c    盛群编译器版本 2.86 页次7 

 180  0007  2800     R  JMP L20

; 181: 			break;
 181  0008  2800     R  JMP L19
 181  0009              L20:

; 183: 		_nop();
 183  0009  0000        NOP

; 184: 		_sk = 0;
 184  000A  3682        CLR [02H].5
 184  000B              L18:

; 174: 	while(1)
 174  000B  2800     R  JMP L17
 174  000C              L19:

; 187: 	_sk = 0;
 187  000C  3682        CLR [02H].5

; 188: 	_cs = 0;
 188  000D  3602        CLR [02H].4
 188  000E              L16:
 188  000E  0003        RET
 188  000F              _ChkBusy ENDP


        0 Errors

⌨️ 快捷键说明

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