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

📄 24cxx.asm

📁 DSP部分功能测试 串口
💻 ASM
📖 第 1 页 / 共 2 页
字号:
	LACK	8224
	OR	* 
	SACL	* ,AR1
	.line	9
;>>>> 	  	delay(2* T_EEDLY ); //for (k = 17;k > 0;k--){  }         // 软件延时5.1us //
	LACK	4
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	10
;>>>> 	  	SDA_H; //       // (IOPC1)SDA=1 //
	LARK	AR3,28826
	LACK	257
	OR	* 
	SACL	* ,AR1
	.line	11
;>>>> 	  	delay(2* T_EEDLY ); //for (k = 17;k > 0;k--){  }         // 软件延时5.1us// 
;>>>> 	//  	SCL_L; //    // SCL=0 //
	LACK	4
	SACL	*+
	CALL	_delay
	MAR	*-
EPI0_7:
	.line	13
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	243,000000000H,1

	.sym	_II2CStart,_II2CStart,32,2,0
	.globl	_II2CStart

	.func	248
;>>>> 	void II2CStart()
;>>>> 		int k;
******************************************************
* FUNCTION DEF : _II2CStart
******************************************************
_II2CStart:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,2
	LAR	AR0,*0+,AR3

	.sym	_k,1,4,1,16
	.line	4
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* 
	.line	5
;>>>> 		SDADIR_O;
	LACK	2312
	OR	* 
	SACL	* ,AR1
	.line	6
;>>>> 		delay(2* T_EEDLY );
	LACK	4
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	7
;>>>> 		SDA_H;
	LARK	AR3,28826
	LACK	257
	OR	* 
	SACL	* 
	.line	8
;>>>> 		SCL_H;
	LACK	8224
	OR	* 
	SACL	* ,AR1
	.line	9
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	10
;>>>> 		SDA_L;
	LARK	AR3,28826
	LACK	65534
	AND	* 
	SACL	* ,AR1
	.line	11
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	12
;>>>> 		SCL_L;
;>>>> 	//	delay(5);
;>>>> 	//	SDA_H;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* ,AR1
EPI0_8:
	.line	16
	SBRK	3
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	263,000000000H,2

	.sym	_II2CSendByte,_II2CSendByte,32,2,0
	.globl	_II2CSendByte

	.func	269
;>>>> 	void II2CSendByte(int data)
******************************************************
* FUNCTION DEF : _II2CSendByte
******************************************************
_II2CSendByte:

LF9	.set	0

	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,4
	LAR	AR0,*0+,AR3

	.sym	_data,-3+LF9,4,9,16
	.sym	_flag,1,4,1,16
	.sym	_sz,2,4,1,16
	.sym	_k,3,4,1,16
	.line	2
;>>>> 		int flag,sz,k;
	.line	4
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* 
	.line	5
;>>>> 		SDADIR_O;
	LACK	2312
	OR	* 
	SACL	* ,AR2
	.line	7
;>>>> 		for(flag = 0x0080;flag != 0x00;flag = flag/2)
	LACK	128
	LARK	AR2,1
	MAR	*0+
	SACL	* 
	SSXM
	LAC	* 
	BZ	L9
	MAR	* ,AR3
L8:
	.line	9
;>>>> 			SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* ,AR1
	.line	10
;>>>> 			delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR2
	.line	11
;>>>> 			sz = data & flag;
	SSXM
	LARK	AR2,1
	MAR	*0+
	LAC	* 
	SBRK	4-LF9
	AND	* 
	ADRK	5-LF9
	SACL	* 
	.line	12
;>>>> 			if(sz == 0)
	LAC	* 
	BNZ	L10
	.line	14
;>>>> 				SDA_L;
;>>>> 			else
	LARK	AR3,28826
	LACK	65534
	MAR	* ,AR3
	AND	* 
	SACL	* 
	B	L11
L10:
	.line	18
;>>>> 				SDA_H;
	LARK	AR3,28826
	LACK	257
	MAR	* ,AR3
	OR	* 
	SACL	* 
L11:
	.line	20
;>>>> 			delay( T_EEDLY );
	MAR	* ,AR1
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	21
;>>>> 			SCL_H ;
	LARK	AR3,28826
	LACK	8224
	OR	* 
	SACL	* ,AR1
	.line	22
;>>>> 	 		delay(2* T_EEDLY );
	LACK	4
	SACL	*+
	CALL	_delay
	MAR	*-
	.line	7
	LACK	2
	SACL	*+,AR2
	SSXM
	LARK	AR2,1
	MAR	*0+
	LAC	* ,AR1
	CALL	I$$DIV
	MAR	* ,AR2
	SACL	* 
	SSXM
	LAC	* ,AR3
	BNZ	L8
L9:
	.line	24
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	MAR	* ,AR3
	AND	* 
	SACL	* ,AR1
EPI0_9:
	.line	25
	SBRK	5
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	293,000000000H,4

	.sym	_II2CRecAck,_II2CRecAck,36,2,0
	.globl	_II2CRecAck

	.func	298
;>>>> 	int II2CRecAck()
;>>>> 		int k;
******************************************************
* FUNCTION DEF : _II2CRecAck
******************************************************
_II2CRecAck:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,2
	LAR	AR0,*0+,AR3

	.sym	_k,1,4,1,16
	.line	4
;>>>> 		SCL_L;	
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* ,AR1
	.line	5
;>>>> 		delay( T_EEDLY );
;>>>> 		//
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-
	.line	7
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	8
;>>>> 		SCL_H;
	LARK	AR3,28826
	LACK	8224
	OR	* 
	SACL	* ,AR1
	.line	9
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	10
;>>>> 		SDADIR_I;
	LARK	AR3,28826
	LACK	65270
	AND	* 
	SACL	* ,AR1
	.line	11
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	12
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* 
	.line	13
;>>>> 		k = PB & 0x01;
	LACK	1
	AND	* ,AR2
	LARK	AR2,1
	MAR	*0+
	SACL	* 
	.line	14
;>>>> 		return(k);
	SSXM
	LAC	* 
EPI0_10:
	.line	15
	MAR	* ,AR1
	SBRK	3
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	312,000000000H,2

	.sym	_II2CRecByte,_II2CRecByte,36,2,0
	.globl	_II2CRecByte

	.func	318
;>>>> 	int II2CRecByte()
******************************************************
* FUNCTION DEF : _II2CRecByte
******************************************************
_II2CRecByte:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,4
	LAR	AR0,*0+,AR2

	.sym	_k,1,4,1,16
	.sym	_flag,2,4,1,16
	.sym	_sz,3,4,1,16
	.line	3
;>>>> 		int k = 0;
;>>>> 		int flag;
;>>>> 		int sz;
	LACK	0
	LARK	AR2,1
	MAR	*0+
	SACL	*+,AR3
	.line	7
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* 
	.line	8
;>>>> 		SDADIR_I;
	LACK	65270
	AND	* 
	SACL	* ,AR2
	.line	9
;>>>> 		for(flag = 0x0080;flag != 0x00; flag = flag/2)
	LACK	128
	SACL	* 
	SSXM
	LAC	* 
	BZ	L13
	MAR	* ,AR1
L12:
	.line	11
;>>>> 			delay(2* T_EEDLY );
	LACK	4
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	12
;>>>> 			SCL_H;
	LARK	AR3,28826
	LACK	8224
	OR	* 
	SACL	* ,AR1
	.line	13
;>>>> 			delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	14
;>>>> 			sz = PB & 0x0001;
	LARK	AR3,28826
	LACK	1
	AND	* ,AR2
	LARK	AR2,3
	MAR	*0+
	SACL	* 
	.line	15
;>>>> 			if(sz == 0x0001)
	SSXM
	LAC	* 
	SUBK	1
	BNZ	L14
	.line	16
;>>>> 				k = k | flag;
	MAR	*-
	LAC	*-
	OR	* 
	SACL	* 
L14:
	.line	17
;>>>> 			delay( T_EEDLY );
	MAR	* ,AR1
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	18
;>>>> 			SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* ,AR1
	.line	9
	LACK	2
	SACL	*+,AR2
	SSXM
	LARK	AR2,2
	MAR	*0+
	LAC	* ,AR1
	CALL	I$$DIV
	MAR	* ,AR2
	SACL	* 
	SSXM
	LAC	* ,AR1
	BNZ	L12
L13:
	.line	20
;>>>> 		return(k);
	MAR	* ,AR2
	MAR	*-
	LAC	* 
EPI0_11:
	.line	21
	MAR	* ,AR1
	SBRK	5
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	338,000000000H,4

	.sym	_II2CAck,_II2CAck,32,2,0
	.globl	_II2CAck

	.func	343
;>>>> 	void II2CAck()
******************************************************
* FUNCTION DEF : _II2CAck
******************************************************
_II2CAck:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR3

	.line	3
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* ,AR1
	.line	4
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	5
;>>>> 		SDADIR_O;
	LARK	AR3,28826
	LACK	2312
	OR	* 
	SACL	* ,AR1
	.line	6
;>>>> 		delay(0);
	LACK	0
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	7
;>>>> 		SDA_L;
	LARK	AR3,28826
	LACK	65534
	AND	* 
	SACL	* ,AR1
	.line	8
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	9
;>>>> 		SCL_H;
	LARK	AR3,28826
	LACK	8224
	OR	* 
	SACL	* ,AR1
	.line	10
;>>>> 		delay(2* T_EEDLY );
	LACK	4
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	11
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* ,AR1
EPI0_12:
	.line	13
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	355,000000000H,1

	.sym	_II2CNoAck,_II2CNoAck,32,2,0
	.globl	_II2CNoAck

	.func	360
;>>>> 	void II2CNoAck()
******************************************************
* FUNCTION DEF : _II2CNoAck
******************************************************
_II2CNoAck:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR3

	.line	3
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* ,AR1
	.line	4
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	5
;>>>> 		SDADIR_O;
	LARK	AR3,28826
	LACK	2312
	OR	* 
	SACL	* ,AR1
	.line	6
;>>>> 		delay(0);
	LACK	0
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	7
;>>>> 		SDA_H;
	LARK	AR3,28826
	LACK	257
	OR	* 
	SACL	* ,AR1
	.line	8
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	9
;>>>> 		SCL_H;
	LARK	AR3,28826
	LACK	8224
	OR	* 
	SACL	* ,AR1
	.line	10
;>>>> 		delay(2* T_EEDLY );
	LACK	4
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	11
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* ,AR1
EPI0_13:
	.line	13
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	372,000000000H,1

	.sym	_II2CStop,_II2CStop,32,2,0
	.globl	_II2CStop

	.func	376
;>>>> 	void II2CStop()
******************************************************
* FUNCTION DEF : _II2CStop
******************************************************
_II2CStop:
	POPD	*+
	SAR	AR0,*+
	SAR	AR1,*
	LARK	AR0,1
	LAR	AR0,*0+,AR3

	.line	4
;>>>> 		SCL_L;
	LARK	AR3,28826
	LACK	65503
	AND	* 
	SACL	* 
	.line	5
;>>>> 		SDADIR_O;
	LACK	2312
	OR	* 
	SACL	* ,AR1
	.line	6
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	7
;>>>> 		SDA_L;
	LARK	AR3,28826
	LACK	65534
	AND	* 
	SACL	* ,AR1
	.line	8
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	9
;>>>> 		SCL_H;
	LARK	AR3,28826
	LACK	8224
	OR	* 
	SACL	* ,AR1
	.line	10
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-,AR3
	.line	11
;>>>> 		SDA_H;
	LARK	AR3,28826
	LACK	257
	OR	* 
	SACL	* ,AR1
	.line	12
;>>>> 		delay( T_EEDLY );
	LACK	2
	SACL	*+
	CALL	_delay
	MAR	*-
EPI0_14:
	.line	13
	SBRK	2
	LAR	AR0,*-
	PSHD	*
	RET

	.endfunc	388,000000000H,1

	.sym	_read_LC256,_read_LC256,36,2,0
	.globl	_read_LC256

	.func	608
;>>>> 	int read_LC256(int *array,int adress,int control,int n)  // 读数据映绦

⌨️ 快捷键说明

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