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

📄 csi.asm

📁 the csi control demo source for the NEC mcu
💻 ASM
字号:
; 78K/0 Series C Compiler V3.70 Assembler Source
;                                                Date:11 Oct 2005 Time:12:31:51

; Command   : -fcsi.pcc
; In-file   : csi.c
; Asm-file  : csi.asm
; Para-file : -cF054780
;             -yC:\NECTools32\DEV\
;             -a
;             -zp
;             csi.c

$PROCESSOR(F054780)
$DEBUG
$NODEBUGA
$KANJICODE SJIS
$TOL_INF	03FH, 0370H, 00H, 020H, 00H

$DGS	FIL_NAM, .file,		04EH,	0FFFEH,	03FH,	067H,	01H,	00H
$DGS	AUX_FIL, csi.c
$DGS	MOD_NAM, csi,		00H,	0FFFEH,	00H,	077H,	00H,	00H
$DGS	SEC_NAM, @@BITS,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@CNST,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@R_INIT,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@INIT,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@DATA,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@R_INIS,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@INIS,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@DATS,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@CALT,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@CODE,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@CALF,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@VECT18,	U,	U,	00H,	078H,	00H,	00H
$DGS	SEC_NAM, @@VECT36,	U,	U,	00H,	078H,	00H,	00H
$DGS	GLV_SYM, _CSI10_Init,	U,	U,	08001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	016H,	00H
$DGS	BEG_FUN, ??bf_CSI10_Init,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 016H,		00H,	016H
$DGS	END_FUN, ??ef_CSI10_Init,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 0BH
$DGS	GLV_SYM, _CSI10_ReceiveData,	U,	U,	08001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	01CH,	00H
$DGS	BEG_FUN, ??bf_CSI10_ReceiveData,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 023H,		00H,	01CH
$DGS	END_FUN, ??ef_CSI10_ReceiveData,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 05H
$DGS	GLV_SYM, _CSI10_SendData,	U,	U,	08001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	022H,	00H
$DGS	BEG_FUN, ??bf_CSI10_SendData,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 02AH,		00H,	022H
$DGS	END_FUN, ??ef_CSI10_SendData,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 05H
$DGS	GLV_SYM, _CSI10_Interrupt,	U,	U,	0E001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	028H,	00H
$DGS	BEG_FUN, ??bf_CSI10_Interrupt,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 032H,		00H,	028H
$DGS	END_FUN, ??ef_CSI10_Interrupt,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 014H
$DGS	GLV_SYM, _CSI11_Init,	U,	U,	08001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	02EH,	00H
$DGS	BEG_FUN, ??bf_CSI11_Init,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 04DH,		00H,	02EH
$DGS	END_FUN, ??ef_CSI11_Init,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 0EH
$DGS	GLV_SYM, _CSI11_ReceiveData,	U,	U,	08001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	034H,	00H
$DGS	BEG_FUN, ??bf_CSI11_ReceiveData,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 05DH,		00H,	034H
$DGS	END_FUN, ??ef_CSI11_ReceiveData,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 05H
$DGS	GLV_SYM, _CSI11_SendData,	U,	U,	08001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	03AH,	00H
$DGS	BEG_FUN, ??bf_CSI11_SendData,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 064H,		00H,	03AH
$DGS	END_FUN, ??ef_CSI11_SendData,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 05H
$DGS	GLV_SYM, _CSI11_Interrupt,	U,	U,	0E001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	048H,	00H
$DGS	BEG_FUN, ??bf_CSI11_Interrupt,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 06CH,		04H,	03EH
$DGS	BEG_BLK, ??bb00_CSI11_Interrupt,	U,	U,	00H,	064H,	01H,	00H
$DGS	AUX_BEG, 03H,		00H,	042H
$DGS	END_BLK, ??eb00_CSI11_Interrupt,	U,	U,	00H,	064H,	01H,	00H
$DGS	AUX_END, 06H
$DGS	BEG_BLK, ??bb01_CSI11_Interrupt,	U,	U,	00H,	064H,	01H,	00H
$DGS	AUX_BEG, 09H,		00H,	00H
$DGS	END_BLK, ??eb01_CSI11_Interrupt,	U,	U,	00H,	064H,	01H,	00H
$DGS	AUX_END, 0CH
$DGS	END_FUN, ??ef_CSI11_Interrupt,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 0DH
$DGS	GLV_SYM, _main,		U,	U,	08001H,	020H,	01H,	02H
$DGS	AUX_FUN, 00H,		U,	U,	04EH,	00H
$DGS	BEG_FUN, ??bf_main,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_BEG, 080H,		00H,	04EH
$DGS	END_FUN, ??ef_main,	U,	U,	00H,	065H,	01H,	00H
$DGS	AUX_END, 0AH
$DGS	GLV_SYM, _CSI10_SendDataBuf,	U,	U,	0CH,	020H,	01H,	03H
$DGS	AUX_STR, 00H,		00H,	05H,	05H,	00H,	00H,	00H
$DGS	GLV_SYM, _CSI10_ReceiveDataBuf,	U,	U,	0CH,	020H,	01H,	03H
$DGS	AUX_STR, 00H,		00H,	05H,	05H,	00H,	00H,	00H
$DGS	GLV_SYM, _CSI11_SendDataBuf,	U,	U,	0CH,	020H,	01H,	03H
$DGS	AUX_STR, 00H,		00H,	05H,	05H,	00H,	00H,	00H
$DGS	GLV_SYM, _CSI11_ReceiveDataBuf,	U,	U,	0CH,	020H,	01H,	03H
$DGS	AUX_STR, 00H,		00H,	05H,	05H,	00H,	00H,	00H
$DGS	GLV_SYM, _CSI10_SendBuf,	U,	U,	0CH,	020H,	00H,	01H
$DGS	GLV_SYM, _CSI10_ReceiveBuf,	U,	U,	0CH,	020H,	00H,	01H
$DGS	GLV_SYM, _CSI11_SendBuf,	U,	U,	0CH,	020H,	00H,	01H
$DGS	GLV_SYM, _CSI11_ReceiveBuf,	U,	U,	0CH,	020H,	00H,	01H
$DGS	GLV_SYM, _CSI10_ReceiveCount,	U,	U,	0CH,	020H,	00H,	00H
$DGS	GLV_SYM, _CSI10_SendCount,	U,	U,	0CH,	020H,	00H,	00H
$DGS	GLV_SYM, _CSI11_ReceiveCount,	U,	U,	0CH,	020H,	00H,	00H
$DGS	GLV_SYM, _CSI11_SendCount,	U,	U,	0CH,	020H,	00H,	00H
$DGS	GLV_SYM, _CSI10_ReceiveTemp,	U,	U,	0CH,	020H,	00H,	00H
$DGS	GLV_SYM, _CSI11_ReceiveTemp,	U,	U,	0CH,	020H,	00H,	00H
$DGS	GLV_SYM, _CSI10_SendEnd,	U,	U,	0CH,	020H,	00H,	00H
$DGS	GLV_SYM, _@vect18,	U,	U,	00H,	020H,	00H,	00H
$DGS	GLV_SYM, _@vect36,	U,	U,	00H,	020H,	00H,	00H

	PUBLIC	_CSI11_Interrupt
	PUBLIC	_CSI10_Interrupt
	PUBLIC	_CSI10_SendDataBuf
	PUBLIC	_CSI10_ReceiveDataBuf
	PUBLIC	_CSI11_SendDataBuf
	PUBLIC	_CSI11_ReceiveDataBuf
	PUBLIC	_CSI10_SendBuf
	PUBLIC	_CSI10_ReceiveBuf
	PUBLIC	_CSI11_SendBuf
	PUBLIC	_CSI11_ReceiveBuf
	PUBLIC	_CSI10_ReceiveCount
	PUBLIC	_CSI10_SendCount
	PUBLIC	_CSI11_ReceiveCount
	PUBLIC	_CSI11_SendCount
	PUBLIC	_CSI10_ReceiveTemp
	PUBLIC	_CSI11_ReceiveTemp
	PUBLIC	_CSI10_SendEnd
	PUBLIC	_CSI10_Init
	PUBLIC	_CSI10_ReceiveData
	PUBLIC	_CSI10_SendData
	PUBLIC	_CSI11_Init
	PUBLIC	_CSI11_ReceiveData
	PUBLIC	_CSI11_SendData
	PUBLIC	_main
	PUBLIC	_@vect18
	PUBLIC	_@vect36

@@BITS	BSEG

@@CNST	CSEG	UNITP

@@R_INIT	CSEG	UNITP
	DB	055H	; 85
	DB	050H	; 80
	DB	05H	; 5
	DB	011H	; 17
	DB	052H	; 82
	DB	055H	; 85
	DB	055H	; 85
	DB	055H	; 85
	DB	055H	; 85
	DB	055H	; 85
	DW	_CSI10_SendDataBuf
	DW	_CSI10_ReceiveDataBuf
	DW	_CSI11_SendDataBuf
	DW	_CSI11_ReceiveDataBuf
	DB	05H	; 5
	DB	05H	; 5
	DB	05H	; 5
	DB	05H	; 5
	DB	00H	; 0
	DB	(1)

@@INIT	DSEG	UNITP
_CSI10_SendDataBuf:	DS	(5)
_CSI11_SendDataBuf:	DS	(5)
_CSI10_SendBuf:	DS	(2)
_CSI10_ReceiveBuf:	DS	(2)
_CSI11_SendBuf:	DS	(2)
_CSI11_ReceiveBuf:	DS	(2)
_CSI10_ReceiveCount:	DS	(1)
_CSI10_SendCount:	DS	(1)
_CSI11_ReceiveCount:	DS	(1)
_CSI11_SendCount:	DS	(1)
_CSI10_SendEnd:	DS	(1)
	DS	(1)

@@DATA	DSEG	UNITP
_CSI10_ReceiveDataBuf:	DS	(5)
_CSI11_ReceiveDataBuf:	DS	(5)
_CSI10_ReceiveTemp:	DS	(1)
_CSI11_ReceiveTemp:	DS	(1)

@@R_INIS	CSEG	UNITP

@@INIS	DSEG	SADDRP

@@DATS	DSEG	SADDRP

@@CALT	CSEG	CALLT0

; line    21
; line    22
; line    24
; line    25
; line    27
; line    28
; line    29
; line    30
; line    32
; line    33
; line    34
; line    35
; line    12
; line    13
; line    14
; line    22

@@CODE	CSEG
_CSI10_Init:
$DGL	1,16
??bf_CSI10_Init:
; line    23
$DGL	0,2
	clr1	CSIM10.7					;[INF] 3, 8
; line    24
$DGL	0,3
	clr1	PM1.0						;[INF] 3, 8
; line    25
$DGL	0,4
	set1	P1.0						;[INF] 2, 4
; line    26
$DGL	0,5
	clr1	PM1.2						;[INF] 3, 8
; line    27
$DGL	0,6
	clr1	P1.2						;[INF] 2, 4
; line    28
$DGL	0,7
	set1	PM1.1						;[INF] 3, 8
; line    29
$DGL	0,8
	clr1	MK0H.2						;[INF] 3, 8
; line    30
$DGL	0,9
	mov	CSIC10,#00H	; 0 				;[INF] 3, 7
; line    31
$DGL	0,10
	mov	CSIM10,#050H	; 80 				;[INF] 3, 7
; line    32
$DGL	0,11
??ef_CSI10_Init:
	ret							;[INF] 1, 6
??ee_CSI10_Init:
; line    35
_CSI10_ReceiveData:
$DGL	1,22
??bf_CSI10_ReceiveData:
; line    36
$DGL	0,2
	set1	CSIM10.7					;[INF] 3, 8
; line    37
$DGL	0,3
	mov	a,SIO10						;[INF] 2, 4
	mov	!_CSI10_ReceiveTemp,a				;[INF] 3, 8
; line    39
$DGL	0,5
??ef_CSI10_ReceiveData:
	ret							;[INF] 1, 6
??ee_CSI10_ReceiveData:
; line    42
_CSI10_SendData:
$DGL	1,28
??bf_CSI10_SendData:
; line    43
$DGL	0,2
	set1	CSIM10.7					;[INF] 3, 8
; line    44
$DGL	0,3
	movw	ax,!_CSI10_SendBuf				;[INF] 3,10
	movw	de,ax						;[INF] 1, 4
	incw	ax						;[INF] 1, 4
	movw	!_CSI10_SendBuf,ax				;[INF] 3,10
	mov	a,[de]						;[INF] 1, 4
	mov	SOTB10,a					;[INF] 2, 5
; line    45
$DGL	0,4
	movw	de,#_CSI10_SendCount				;[INF] 3, 6
	mov	a,[de]						;[INF] 1, 4
	dec	a						;[INF] 1, 2
	mov	[de],a						;[INF] 1, 4
; line    46
$DGL	0,5
??ef_CSI10_SendData:
	ret							;[INF] 1, 6
??ee_CSI10_SendData:
; line    50
_CSI10_Interrupt:
$DGL	1,34
??bf_CSI10_Interrupt:
; line    68
$DGL	0,19
	mov	SOTB10,#055H	; 85 				;[INF] 3, 7
; line    69
$DGL	0,20
??ef_CSI10_Interrupt:
	reti							;[INF] 1, 6
??ee_CSI10_Interrupt:
; line    77
_CSI11_Init:
$DGL	1,40
??bf_CSI11_Init:
; line    78
$DGL	0,2
	clr1	CSIM11.7					;[INF] 3, 8
; line    79
$DGL	0,3
	clr1	PM0.4						;[INF] 3, 8
; line    80
$DGL	0,4
	set1	P0.4						;[INF] 2, 4
; line    81
$DGL	0,5
	clr1	PM0.2						;[INF] 3, 8
; line    82
$DGL	0,6
	clr1	P0.2						;[INF] 2, 4
; line    83
$DGL	0,7
	set1	PM0.3						;[INF] 3, 8
; line    87
$DGL	0,11
	clr1	MK1H.1						;[INF] 3, 8
; line    88
$DGL	0,12
	mov	CSIC11,#00H	; 0 				;[INF] 3, 7
; line    89
$DGL	0,13
	mov	CSIM11,#050H	; 80 				;[INF] 3, 7
; line    90
$DGL	0,14
??ef_CSI11_Init:
	ret							;[INF] 1, 6
??ee_CSI11_Init:
; line    93
_CSI11_ReceiveData:
$DGL	1,46
??bf_CSI11_ReceiveData:
; line    94
$DGL	0,2
	set1	CSIM11.7					;[INF] 3, 8
; line    95
$DGL	0,3
	mov	a,SIO11						;[INF] 2, 5
	mov	!_CSI11_ReceiveTemp,a				;[INF] 3, 8
; line    97
$DGL	0,5
??ef_CSI11_ReceiveData:
	ret							;[INF] 1, 6
??ee_CSI11_ReceiveData:
; line   100
_CSI11_SendData:
$DGL	1,52
??bf_CSI11_SendData:
; line   101
$DGL	0,2
	set1	CSIM11.7					;[INF] 3, 8
; line   102
$DGL	0,3
	movw	ax,!_CSI11_SendBuf				;[INF] 3,10
	movw	de,ax						;[INF] 1, 4
	incw	ax						;[INF] 1, 4
	movw	!_CSI11_SendBuf,ax				;[INF] 3,10
	mov	a,[de]						;[INF] 1, 4
	mov	SOTB11,a					;[INF] 2, 5
; line   103
$DGL	0,4
	movw	de,#_CSI11_SendCount				;[INF] 3, 6
	mov	a,[de]						;[INF] 1, 4
	dec	a						;[INF] 1, 2
	mov	[de],a						;[INF] 1, 4
; line   104
$DGL	0,5
??ef_CSI11_SendData:
	ret							;[INF] 1, 6
??ee_CSI11_SendData:
; line   108
_CSI11_Interrupt:
$DGL	1,58
	push	ax						;[INF] 1, 4
	push	de						;[INF] 1, 4
??bf_CSI11_Interrupt:
; line   109
$DGL	0,2
	mov	a,#00H	; 0 					;[INF] 2, 4
	cmp	a,!_CSI11_ReceiveCount				;[INF] 3, 8
	bnc	$?L0017						;[INF] 2, 6
; line   110
$DGL	0,3
??bb00_CSI11_Interrupt:
; line   111
$DGL	0,4
	movw	ax,!_CSI11_ReceiveBuf				;[INF] 3,10
	movw	de,ax						;[INF] 1, 4
	incw	ax						;[INF] 1, 4
	movw	!_CSI11_ReceiveBuf,ax				;[INF] 3,10
	mov	a,SIO11						;[INF] 2, 5
	mov	[de],a						;[INF] 1, 4
; line   112
$DGL	0,5
	movw	de,#_CSI11_ReceiveCount				;[INF] 3, 6
	mov	a,[de]						;[INF] 1, 4
	dec	a						;[INF] 1, 2
	mov	[de],a						;[INF] 1, 4
??eb00_CSI11_Interrupt:
?L0017:
; line   115
$DGL	0,8
	mov	a,#00H	; 0 					;[INF] 2, 4
	cmp	a,!_CSI11_SendCount				;[INF] 3, 8
	bnc	$?L0019						;[INF] 2, 6
; line   116
$DGL	0,9
??bb01_CSI11_Interrupt:
; line   117
$DGL	0,10
	movw	ax,!_CSI11_SendBuf				;[INF] 3,10
	movw	de,ax						;[INF] 1, 4
	incw	ax						;[INF] 1, 4
	movw	!_CSI11_SendBuf,ax				;[INF] 3,10
	mov	a,[de]						;[INF] 1, 4
	mov	SOTB11,a					;[INF] 2, 5
; line   118
$DGL	0,11
	movw	de,#_CSI11_SendCount				;[INF] 3, 6
	mov	a,[de]						;[INF] 1, 4
	dec	a						;[INF] 1, 2
	mov	[de],a						;[INF] 1, 4
??eb01_CSI11_Interrupt:
?L0019:
; line   120
$DGL	0,13
??ef_CSI11_Interrupt:
	pop	de						;[INF] 1, 4
	pop	ax						;[INF] 1, 4
	reti							;[INF] 1, 6
??ee_CSI11_Interrupt:
; line   128
_main:
$DGL	1,72
	di							;[INF] 2, 6
??bf_main:
; line   130
$DGL	0,3
	mov	PCC,#00H	; 0 				;[INF] 3, 7
; line   132
$DGL	0,5
	call	!_CSI10_Init					;[INF] 3, 7
; line   133
$DGL	0,6
	ei							;[INF] 2, 6
; line   134
$DGL	0,7
	call	!_CSI10_SendData				;[INF] 3, 7
; line   136
$DGL	0,9
?L0023:
	br	$?L0023						;[INF] 2, 6
; line   137
$DGL	0,10
??ef_main:
	ret							;[INF] 1, 6
??ee_main:

@@VECT18	CSEG	AT    0018H
_@vect18:
	DW	_CSI10_Interrupt

@@VECT36	CSEG	AT    0036H
_@vect36:
	DW	_CSI11_Interrupt

@@CALF	CSEG	FIXED
	END


; *** Code Information ***
;
; $FILE C:\NECTools32\customer_problem\visteon\CSI\csi.c
;
; $FUNC CSI10_Init(22)
;	void=(void)
;	CODE SIZE= 26 bytes, CLOCK_SIZE= 68 clocks, STACK_SIZE= 0 bytes
;
; $FUNC CSI10_ReceiveData(35)
;	void=(void)
;	CODE SIZE= 9 bytes, CLOCK_SIZE= 26 clocks, STACK_SIZE= 0 bytes
;
; $FUNC CSI10_SendData(42)
;	void=(void)
;	CODE SIZE= 21 bytes, CLOCK_SIZE= 67 clocks, STACK_SIZE= 0 bytes
;
; $FUNC CSI10_Interrupt(50)
;	void=(void)
;	CODE SIZE= 4 bytes, CLOCK_SIZE= 13 clocks, STACK_SIZE= 0 bytes
;
; $FUNC CSI11_Init(77)
;	void=(void)
;	CODE SIZE= 26 bytes, CLOCK_SIZE= 68 clocks, STACK_SIZE= 0 bytes
;
; $FUNC CSI11_ReceiveData(93)
;	void=(void)
;	CODE SIZE= 9 bytes, CLOCK_SIZE= 27 clocks, STACK_SIZE= 0 bytes
;
; $FUNC CSI11_SendData(100)
;	void=(void)
;	CODE SIZE= 21 bytes, CLOCK_SIZE= 67 clocks, STACK_SIZE= 0 bytes
;
; $FUNC CSI11_Interrupt(108)
;	void=(void)
;	CODE SIZE= 53 bytes, CLOCK_SIZE= 164 clocks, STACK_SIZE= 4 bytes
;
; $FUNC main(128)
;	void=(void)
;	CODE SIZE= 16 bytes, CLOCK_SIZE= 45 clocks, STACK_SIZE= 2 bytes
;
; $CALL CSI10_Init(132)
;	void=(void)
;
; $CALL CSI10_SendData(134)
;	void=(void)

; Target chip : uPD78F0547_80
; Device file : V2.10 

⌨️ 快捷键说明

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