;--------------------------------------------------------
; File Created by ChiponCC : aolisn inc.
; Version 3.0.4#6752 (Jul  6 2017 15:09:47) (MSVC)
; This file was generated Tue Apr 03 20:58:56 2018
;--------------------------------------------------------
; chipon port for the 16-bit core
;--------------------------------------------------------
;	.file	"../debug_touch.c"
	.radix dec
	.include "KF8S1025.inc"
;--------------------------------------------------------
; external declarations
;--------------------------------------------------------
	.extern	_init_mcu
	.extern	__KF8spsw_LIBf_init_touch_
	.extern	__KF8spsw_LIBf_touch_process_
	.extern	__KF8spsw_Lib_SET_MCU_Parameter
	.extern	_read_data_eep_tsw_
	.extern	_write_eep_tsw_
	.extern	_delay_ms
	.extern	_delay_us
	.extern	__R2PCL
	.extern	_PSW_bits
	.extern	_P0_bits
	.extern	_P2_bits
	.extern	_P1_bits
	.extern	_P3_bits
	.extern	_INTCTL_bits
	.extern	_EIF1_bits
	.extern	_T1CTL_bits
	.extern	_T2CTL_bits
	.extern	_PWMCTL_bits
	.extern	_CMCTL1_bits
	.extern	_ADCCTL0_bits
	.extern	_OPTR_bits
	.extern	_TR0_bits
	.extern	_TR2_bits
	.extern	_TR1_bits
	.extern	_TR3_bits
	.extern	_EIE1_bits
	.extern	_PCTL_bits
	.extern	_OSCCTL_bits
	.extern	_ANSEL_bits
	.extern	_PUR_bits
	.extern	_IOCL_bits
	.extern	_BADDRH_bits
	.extern	_ADCCTL1_bits
	.extern	_T3L_bits
	.extern	_CTCTL_bits
	.extern	_OSCLDOCAL_bits
	.extern	__KF8_Disturb_Protect_Circle_
	.extern	__KF8_Up_BaseLine_Circle_
	.extern	__KF8_LIBi_channel_flag_
	.extern	__KF8_LIBi_Date_Change_
	.extern	__KF8_LIBc_channel_
	.extern	__KF8_LIBi_buff_hit_
	.extern	__KF8_LIBi_buff_baseline_
	.extern	__KF8_LIBi_buff_refline_
	.extern	__KF8_LIBc_touch_count_
	.extern	_Arr_erom_SW_
	.extern	_CHS_AMOUNT
	.extern	_TCS_AMOUNT
	.extern	__KF8_Inside_Reference_Channel_Disturb_Threshold_Set_
	.extern	__KF8_Disturb_Protect_Circle_Define
	.extern	__KF8_Up_BaseLine_Circle_Define
	.extern	__KF8_Inside_Reference_Channel_Order
	.extern	__KF8_Config_Finger_Threshold
	.extern	_CONFIG_NO_FINGER_THRESHOLD
	.extern	__KF8_TOUCH_CH_EN
	.extern	_T0
	.extern	_PCL
	.extern	_PSW
	.extern	_P0
	.extern	_P2
	.extern	_P1
	.extern	_P3
	.extern	_PCH
	.extern	_INTCTL
	.extern	_EIF1
	.extern	_T1L
	.extern	_T1H
	.extern	_T1CTL
	.extern	_T2
	.extern	_T2CTL
	.extern	_PWM1L
	.extern	_PWM1H
	.extern	_PWMCTL
	.extern	_PP1
	.extern	_CMCTL1
	.extern	_VRECAL
	.extern	_ADCDATAH
	.extern	_ADCCTL0
	.extern	_OPTR
	.extern	_TR0
	.extern	_TR2
	.extern	_TR1
	.extern	_TR3
	.extern	_EIE1
	.extern	_PCTL
	.extern	_OSCCTL
	.extern	_OSCCAL0
	.extern	_ANSEL
	.extern	_PP2
	.extern	_PWM2L
	.extern	_PWM2H
	.extern	_PUR
	.extern	_IOCL
	.extern	_OSCCAL1
	.extern	_BADDRH
	.extern	_BADDRL
	.extern	_EECTL1
	.extern	_EECTL2
	.extern	_ADCDATAL
	.extern	_ADCCTL1
	.extern	_T3L
	.extern	_CTCTL
	.extern	_T2CCR
	.extern	_OSCLDOCAL
	.extern	_T1U

	.extern STK12
	.extern STK11
	.extern STK10
	.extern STK09
	.extern STK08
	.extern STK07
	.extern STK06
	.extern STK05
	.extern STK04
	.extern STK03
	.extern STK02
	.extern STK01
	.extern STK00
;--------------------------------------------------------
; global declarations
;--------------------------------------------------------
	.global	_TOUCH_DEBUG_SEND_OUT
	.global	_TOUCH_DEBUG_TRS_DEAL
	.global	_TOUCH_DEBUG_TRS_BAIHUALV
	.global	_TOUCH_CH_TRS_EN
	.global	_T_buf
	.global	_i_T_D
	.global	_sentbuf1
	.global	_sentbuf2
	.global	_sentbuf3
	.global	_sentbuf4
	.global	_Date_Baihualv_Get_V

;--------------------------------------------------------
; global definitions
;--------------------------------------------------------
UD_debug_touch_0	.udata
_T_buf	.res	1

UD_debug_touch_1	.udata
_i_T_D	.res	1

UD_debug_touch_2	.udata
_sentbuf1	.res	1

UD_debug_touch_3	.udata
_sentbuf2	.res	1

UD_debug_touch_4	.udata
_sentbuf3	.res	1

UD_debug_touch_5	.udata
_sentbuf4	.res	1

UD_debug_touch_6	.udata
_Date_Baihualv_Get_V	.res	2

;--------------------------------------------------------
; absolute symbol definitions
;--------------------------------------------------------
;--------------------------------------------------------
; compiler-defined variables
;--------------------------------------------------------
UDL_debug_touch_0	.udata
r0x100A	.res	1
UDL_debug_touch_1	.udata
r0x100B	.res	1
UDL_debug_touch_2	.udata
r0x1008	.res	1
UDL_debug_touch_3	.udata
r0x1009	.res	1
UDL_debug_touch_4	.udata
r0x1006	.res	1
UDL_debug_touch_5	.udata
r0x1007	.res	1
;--------------------------------------------------------
; initialized data
;--------------------------------------------------------

ID_debug_touch_0	.idata
_TOUCH_CH_TRS_EN
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00
	.db	0x00

;--------------------------------------------------------
; overlayable items in internal ram 
;--------------------------------------------------------
;	.udata_ovr


func._TOUCH_DEBUG_SEND_OUT	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  _TOUCH_DEBUG_SEND_OUT	;Function start
; 2 exit points
;has an exit
;functions called:
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;3 compiler assigned registers:
;   STK00
;   r0x1006
;   r0x1007
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
_TOUCH_DEBUG_SEND_OUT	;Function start
; 2 exit points
;	op : =
;	.line	647; "../debug_touch.c"	CLK_SET_IN;
	SET	_TR0_bits, 1
;	op : =
;	.line	648; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : SEND
;	op : CALL
;	.line	649; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : GET_VALUE_AT_ADDRESS
;	.line	652; "../debug_touch.c"	if(CLK_GET_STATE)
	JB	_P0_bits, 1
	JMP	_00149_DS_
;	op : SEND
;	op : CALL
;	.line	654; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : GET_VALUE_AT_ADDRESS
;	.line	655; "../debug_touch.c"	if(!CLK_GET_STATE)
	JNB	_P0_bits, 1
	JMP	_00150_DS_
;	op : RETURN
;	.line	656; "../debug_touch.c"	return;
	JMP	_00170_DS_
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00149_DS_
;	.line	658; "../debug_touch.c"	else if(!CLK_GET_STATE)
	JNB	_P0_bits, 1
	JMP	_00146_DS_
;	op : RETURN
;	.line	660; "../debug_touch.c"	return;
	JMP	_00170_DS_
;	op : LABEL
;	op : RETURN
_00146_DS_
;	.line	663; "../debug_touch.c"	return;
	JMP	_00170_DS_
;	op : LABEL
;	op : =
_00150_DS_
;	.line	665; "../debug_touch.c"	CLK_SET_OUT;
	CLR	_TR0_bits, 1
;	op : =
;	.line	667; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	668; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	670; "../debug_touch.c"	CLK_SET_HIGH;		//上升沿
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	671; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
;	.line	673; "../debug_touch.c"	if(!DAT_GET_STATE)
	PAGESEL	$
;	.line	675; "../debug_touch.c"	return;
	JB	_P0_bits, 0
;	.line	678; "../debug_touch.c"	CLK_SET_LOW;			//下降沿
	JMP	_00170_DS_
	CLR	_P0_bits, 1
;	.line	681; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	683; "../debug_touch.c"	DAT_SET_OUT;
	CLR	_TR0_bits, 0
;	op : =
;	.line	686; "../debug_touch.c"	j=5;
	MOV	R0,# 0x05
	BANKSEL	r0x1006
	MOV	r0x1006, R0
;	op : =
;	.line	688; "../debug_touch.c"	for(step=0;step<5;step++)
	BANKSEL	r0x1007
	CLR	r0x1007
;	op : LABEL
;	op : <
;unsigned compare: left < lit(0x5=5), size=1
_00166_DS_
	MOV	R0,# 0x05
	BANKSEL	r0x1007
	SUB	R0, r0x1007
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00169_DS_
;	op : >
;swapping arguments (AOP_TYPEs 1/2)
;unsigned compare: left >= lit(0x5=5), size=1
;	.line	690; "../debug_touch.c"	switch(step)
	MOV	R0,# 0x05
	BANKSEL	r0x1007
	SUB	R0, r0x1007
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00158_DS_
;	op : JUMPTABLE
	MOV	R0,#high _00185_DS_
	MOV	PCH, R0
	MOV	R0,#_00185_DS_
	BANKSEL	r0x1007
	ADD	R0, r0x1007
	JNB	PSW, 0
	INC	PCH
	MOV	PCL, R0
_00185_DS_
	JMP	_00153_DS_
	JMP	_00154_DS_
	JMP	_00155_DS_
	JMP	_00156_DS_
	JMP	_00157_DS_
;	op : LABEL
;	op : =
_00153_DS_
;	.line	694; "../debug_touch.c"	j=5;   T_buf=0x04;
	MOV	R0,# 0x05
	BANKSEL	r0x1006
	MOV	r0x1006, R0
;	op : =
	MOV	R0,# 0x04
	BANKSEL	_T_buf
	MOV	_T_buf, R0
;	op : GOTO
;	.line	695; "../debug_touch.c"	}break;
	JMP	_00158_DS_
;	op : LABEL
;	op : =
_00154_DS_
;	.line	698; "../debug_touch.c"	j=8;   T_buf=sentbuf1;
	MOV	R0,# 0x08
	BANKSEL	r0x1006
	MOV	r0x1006, R0
;	op : =
	BANKSEL	_sentbuf1
	MOVZ	R0, _sentbuf1
	BANKSEL	_T_buf
	MOV	_T_buf, R0
;	op : GOTO
;	.line	699; "../debug_touch.c"	}break;
	JMP	_00158_DS_
;	op : LABEL
;	op : =
_00155_DS_
;	.line	702; "../debug_touch.c"	j=8;   T_buf=sentbuf2;
	MOV	R0,# 0x08
	BANKSEL	r0x1006
	MOV	r0x1006, R0
;	op : =
	BANKSEL	_sentbuf2
	MOVZ	R0, _sentbuf2
	BANKSEL	_T_buf
	MOV	_T_buf, R0
;	op : GOTO
;	.line	703; "../debug_touch.c"	}break;
	JMP	_00158_DS_
;	op : LABEL
;	op : =
_00156_DS_
;	.line	706; "../debug_touch.c"	j=8;   T_buf=sentbuf3;
	MOV	R0,# 0x08
	BANKSEL	r0x1006
	MOV	r0x1006, R0
;	op : =
	BANKSEL	_sentbuf3
	MOVZ	R0, _sentbuf3
	BANKSEL	_T_buf
	MOV	_T_buf, R0
;	op : GOTO
;	.line	707; "../debug_touch.c"	}break;
	JMP	_00158_DS_
;	op : LABEL
;	op : =
_00157_DS_
;	.line	710; "../debug_touch.c"	j=8;   T_buf=sentbuf4;
	MOV	R0,# 0x08
	BANKSEL	r0x1006
	MOV	r0x1006, R0
;	op : =
	BANKSEL	_sentbuf4
	MOVZ	R0, _sentbuf4
	BANKSEL	_T_buf
	MOV	_T_buf, R0
;	op : LABEL
;	op : =
_00158_DS_
;	.line	714; "../debug_touch.c"	for(i_T_D=0;i_T_D<j;i_T_D++)
	BANKSEL	_i_T_D
	CLR	_i_T_D
;	op : LABEL
;	op : <
_00162_DS_
	BANKSEL	r0x1006
	MOVZ	R0, r0x1006
	BANKSEL	_i_T_D
	SUB	R0, _i_T_D
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00165_DS_
;	op : BITWISEAND
;	.line	716; "../debug_touch.c"	if(T_buf&0x01)
	BANKSEL	_T_buf
	JB	_T_buf, 0
	JMP	_00160_DS_
;	op : =
;	.line	717; "../debug_touch.c"	DAT_SET_HIGH;
	SET	_P0_bits, 0
;	op : GOTO
	JMP	_00161_DS_
;	op : LABEL
;	op : =
_00160_DS_
;	.line	719; "../debug_touch.c"	DAT_SET_LOW;
	CLR	_P0_bits, 0
;	op : LABEL
;	op : =
_00161_DS_
;	.line	721; "../debug_touch.c"	CLK_SET_HIGH;
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	722; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	724; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	725; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : RIGHT_OP
;	.line	727; "../debug_touch.c"	T_buf=T_buf>>1;
	CLR	PSW, 0
	BANKSEL	_T_buf
	RRC	_T_buf
;	op : +
;	.line	714; "../debug_touch.c"	for(i_T_D=0;i_T_D<j;i_T_D++)
	BANKSEL	_i_T_D
	INC	_i_T_D
;	op : GOTO
	JMP	_00162_DS_
;	op : LABEL
;	op : SEND
;	op : CALL
_00165_DS_
;	.line	730; "../debug_touch.c"	Touch_Delay2;
	MOV	R0,# 0x6e
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : +
;	.line	688; "../debug_touch.c"	for(step=0;step<5;step++)
	BANKSEL	r0x1007
	INC	r0x1007
;	op : GOTO
	JMP	_00166_DS_
;	op : LABEL
;	op : =
_00169_DS_
;	.line	734; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : SEND
;	op : CALL
;	.line	735; "../debug_touch.c"	Touch_Delay2;	//编程器判断需要时间
	MOV	R0,# 0x6e
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	737; "../debug_touch.c"	CLK_SET_HIGH;
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	738; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : SEND
;	op : CALL
;	.line	739; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : SEND
;	op : CALL
;	.line	740; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	743; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	744; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	746; "../debug_touch.c"	CLK_SET_IN;
	SET	_TR0_bits, 1
;	op : =
;	.line	747; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : LABEL
;	op : ENDFUNCTION
_00170_DS_
	CRET	
; exit point of _TOUCH_DEBUG_SEND_OUT



func._TOUCH_DEBUG_TRS_DEAL	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  _TOUCH_DEBUG_TRS_DEAL	;Function start
; 2 exit points
;has an exit
;functions called:
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;3 compiler assigned registers:
;   STK00
;   r0x1008
;   r0x1009
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
_TOUCH_DEBUG_TRS_DEAL	;Function start
; 2 exit points
;	op : INLINEASM
	MOV R1,#High(__KF8_TOUCH_CH_EN+0)
	MOV R0,#(0)
	ADD R0,#Low(__KF8_TOUCH_CH_EN+0)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCL
	CALL __R2PCL
	PAGESEL $
	ADD R0,#(_TOUCH_CH_TRS_EN+0)
	MOV R1,#0x01
	BANKSEL _TOUCH_CH_TRS_EN
	ST [R0],R1
	
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R0,__KF8_LIBc_channel_
	ADD R0,#Low(__KF8_TOUCH_CH_EN+0)
	MOV R1,#High(__KF8_TOUCH_CH_EN+0)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCL
	CALL __R2PCL
	PAGESEL $
	ADD R0,#(_TOUCH_CH_TRS_EN+0)
	BANKSEL _TOUCH_CH_TRS_EN
	LD R1,[R0]
	XOR R1,#0x00
	JNB PSW,2
	JMP Label_x_y_z_a
	
;	op : =
;	.line	392; "../debug_touch.c"	CLK_SET_IN;
	SET	_TR0_bits, 1
;	op : =
;	.line	393; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : SEND
;	op : CALL
;	.line	394; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : GET_VALUE_AT_ADDRESS
;	.line	398; "../debug_touch.c"	if(CLK_GET_STATE)
	JB	_P0_bits, 1
	JMP	_00078_DS_
;	op : SEND
;	op : CALL
;	.line	400; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : GET_VALUE_AT_ADDRESS
;	.line	401; "../debug_touch.c"	if(!CLK_GET_STATE)
	JNB	_P0_bits, 1
	JMP	_00079_DS_
;	op : RETURN
;	.line	402; "../debug_touch.c"	return;
	JMP	_00116_DS_
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00078_DS_
;	.line	404; "../debug_touch.c"	else if(!CLK_GET_STATE)
	JNB	_P0_bits, 1
	JMP	_00075_DS_
;	op : RETURN
;	.line	406; "../debug_touch.c"	return;
	JMP	_00116_DS_
;	op : LABEL
;	op : RETURN
_00075_DS_
;	.line	409; "../debug_touch.c"	return;
	JMP	_00116_DS_
;	op : LABEL
;	op : =
_00079_DS_
;	.line	411; "../debug_touch.c"	CLK_SET_OUT;
	CLR	_TR0_bits, 1
;	op : =
;	.line	413; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	414; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	416; "../debug_touch.c"	CLK_SET_HIGH;		//上升沿
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	418; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
;	.line	420; "../debug_touch.c"	if(!DAT_GET_STATE)
	PAGESEL	$
;	.line	422; "../debug_touch.c"	return;
	JB	_P0_bits, 0
;	.line	425; "../debug_touch.c"	CLK_SET_LOW;			//下降沿
	JMP	_00116_DS_
	CLR	_P0_bits, 1
;	.line	429; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	431; "../debug_touch.c"	DAT_SET_OUT;
	CLR	_TR0_bits, 0
;	op : =
;	.line	433; "../debug_touch.c"	j=5;
	MOV	R0,# 0x05
	BANKSEL	r0x1008
	MOV	r0x1008, R0
;	op : =
;	.line	435; "../debug_touch.c"	for(step=0;step<5;step++)
	BANKSEL	r0x1009
	CLR	r0x1009
;	op : LABEL
;	op : <
;unsigned compare: left < lit(0x5=5), size=1
_00108_DS_
	MOV	R0,# 0x05
	BANKSEL	r0x1009
	SUB	R0, r0x1009
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00111_DS_
;	op : >
;swapping arguments (AOP_TYPEs 1/2)
;unsigned compare: left >= lit(0x5=5), size=1
;	.line	437; "../debug_touch.c"	switch(step)
	MOV	R0,# 0x05
	BANKSEL	r0x1009
	SUB	R0, r0x1009
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00087_DS_
;	op : JUMPTABLE
	MOV	R0,#high _00138_DS_
	MOV	PCH, R0
	MOV	R0,#_00138_DS_
	BANKSEL	r0x1009
	ADD	R0, r0x1009
	JNB	PSW, 0
	INC	PCH
	MOV	PCL, R0
_00138_DS_
	JMP	_00082_DS_
	JMP	_00083_DS_
	JMP	_00084_DS_
	JMP	_00085_DS_
	JMP	_00086_DS_
;	op : LABEL
;	op : =
_00082_DS_
;	.line	441; "../debug_touch.c"	j=5;
	MOV	R0,# 0x05
	BANKSEL	r0x1008
	MOV	r0x1008, R0
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	ADD R0,#Low(__KF8_TOUCH_CH_EN+0)
	MOV R1,#High(__KF8_TOUCH_CH_EN+0)
	JNB PSW,0
	INC R1
	MOV PCH,R1
	PAGESEL __R2PCL
	CALL __R2PCL
	PAGESEL $
	BANKSEL _T_buf
	MOV _T_buf,R0
	
;	op : GOTO
;	.line	460; "../debug_touch.c"	}break;
	JMP	_00087_DS_
;	op : LABEL
;	op : =
_00083_DS_
;	.line	464; "../debug_touch.c"	j=8;
	MOV	R0,# 0x08
	BANKSEL	r0x1008
	MOV	r0x1008, R0
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	CLR PSW,0
	RLCR __KF8_LIBc_channel_
	BANKSEL __KF8_LIBi_buff_baseline_
	ADD R0,#(__KF8_LIBi_buff_baseline_+0)
	LD R1,[R0]
	BANKSEL _T_buf
	MOV _T_buf,R1
	
;	op : GOTO
;	.line	479; "../debug_touch.c"	}break;
	JMP	_00087_DS_
;	op : LABEL
;	op : =
_00084_DS_
;	.line	483; "../debug_touch.c"	j=8;
	MOV	R0,# 0x08
	BANKSEL	r0x1008
	MOV	r0x1008, R0
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	CLR PSW,0
	RLCR __KF8_LIBc_channel_
	BANKSEL __KF8_LIBi_buff_baseline_
	ADD R0,#(__KF8_LIBi_buff_baseline_+1)
	LD R1,[R0]
	BANKSEL _T_buf
	MOV _T_buf,R1
	
;	op : GOTO
;	.line	499; "../debug_touch.c"	}break;
	JMP	_00087_DS_
;	op : LABEL
;	op : =
_00085_DS_
;	.line	503; "../debug_touch.c"	j=8;
	MOV	R0,# 0x08
	BANKSEL	r0x1008
	MOV	r0x1008, R0
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	CLR PSW,0
	RLCR __KF8_LIBc_channel_
	BANKSEL __KF8_LIBi_buff_hit_
	ADD R0,#(__KF8_LIBi_buff_hit_+0)
	LD R1,[R0]
	BANKSEL _T_buf
	MOV _T_buf,R1
	
;	op : GOTO
;	.line	518; "../debug_touch.c"	}break;
	JMP	_00087_DS_
;	op : LABEL
;	op : =
_00086_DS_
;	.line	522; "../debug_touch.c"	j=8;
	MOV	R0,# 0x08
	BANKSEL	r0x1008
	MOV	r0x1008, R0
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	CLR PSW,0
	RLCR __KF8_LIBc_channel_
	BANKSEL __KF8_LIBi_buff_hit_
	ADD R0,#(__KF8_LIBi_buff_hit_+1)
	LD R1,[R0]
	BANKSEL _T_buf
	MOV _T_buf,R1
	
;	op : LABEL
;	op : =
_00087_DS_
;	.line	540; "../debug_touch.c"	for(i_T_D=0;i_T_D<j;i_T_D++)
	BANKSEL	_i_T_D
	CLR	_i_T_D
;	op : LABEL
;	op : <
_00104_DS_
	BANKSEL	r0x1008
	MOVZ	R0, r0x1008
	BANKSEL	_i_T_D
	SUB	R0, _i_T_D
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00107_DS_
;	op : BITWISEAND
;	.line	542; "../debug_touch.c"	if(T_buf&0x01)
	BANKSEL	_T_buf
	JB	_T_buf, 0
	JMP	_00089_DS_
;	op : =
;	.line	543; "../debug_touch.c"	DAT_SET_HIGH;
	SET	_P0_bits, 0
;	op : GOTO
	JMP	_00090_DS_
;	op : LABEL
;	op : =
_00089_DS_
;	.line	545; "../debug_touch.c"	DAT_SET_LOW;
	CLR	_P0_bits, 0
;	op : LABEL
;	op : =
_00090_DS_
;	.line	547; "../debug_touch.c"	CLK_SET_HIGH;
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	548; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	550; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	551; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : RIGHT_OP
;	.line	553; "../debug_touch.c"	T_buf=T_buf>>1;
	CLR	PSW, 0
	BANKSEL	_T_buf
	RRC	_T_buf
;	op : +
;	.line	540; "../debug_touch.c"	for(i_T_D=0;i_T_D<j;i_T_D++)
	BANKSEL	_i_T_D
	INC	_i_T_D
;	op : GOTO
	JMP	_00104_DS_
;	op : LABEL
;	op : SEND
;	op : CALL
_00107_DS_
;	.line	556; "../debug_touch.c"	Touch_Delay2;
	MOV	R0,# 0x6e
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : +
;	.line	435; "../debug_touch.c"	for(step=0;step<5;step++)
	BANKSEL	r0x1009
	INC	r0x1009
;	op : GOTO
	JMP	_00108_DS_
;	op : LABEL
;	op : =
_00111_DS_
;	.line	560; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : SEND
;	op : CALL
;	.line	561; "../debug_touch.c"	Touch_Delay2;	//编程器判断需要时间
	MOV	R0,# 0x6e
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	563; "../debug_touch.c"	CLK_SET_HIGH;
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	564; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : SEND
;	op : CALL
;	.line	565; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : SEND
;	op : CALL
;	.line	566; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : GET_VALUE_AT_ADDRESS
;	.line	569; "../debug_touch.c"	if(DAT_GET_STATE)
	JB	_P0_bits, 0
	JMP	_00102_DS_
;	op : =
;	.line	571; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : =
;	.line	572; "../debug_touch.c"	T_buf=0;
	BANKSEL	_T_buf
	CLR	_T_buf
;	op : SEND
;	op : CALL
;	.line	573; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	574; "../debug_touch.c"	for(i_T_D=0;i_T_D<6;i_T_D++)
	BANKSEL	_i_T_D
	CLR	_i_T_D
;	op : LABEL
;	op : <
;unsigned compare: left < lit(0x6=6), size=1
_00112_DS_
	MOV	R0,# 0x06
	BANKSEL	_i_T_D
	SUB	R0, _i_T_D
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00103_DS_
;	op : =
;	.line	576; "../debug_touch.c"	CLK_SET_HIGH;
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	577; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : EQ_OP
;	.line	579; "../debug_touch.c"	if(i_T_D!=5)
	BANKSEL	_i_T_D
	MOVZ	R0, _i_T_D
;	.line	581; "../debug_touch.c"	T_buf=T_buf>>1;
	XOR	R0,# 0x05
	JNB	PSW, 2
	JMP	_00099_DS_
	CLR	PSW, 0
	BANKSEL	_T_buf
	RRC	_T_buf
;	op : GET_VALUE_AT_ADDRESS
;	.line	582; "../debug_touch.c"	if(DAT_GET_STATE)
	JB	_P0_bits, 0
	JMP	_00100_DS_
;	op : |
;	.line	583; "../debug_touch.c"	T_buf=T_buf|0x10;
	BANKSEL	_T_buf
	SET	_T_buf, 4
;	op : GOTO
	JMP	_00100_DS_
;	op : LABEL
;	op : <
;unsigned compare: left < lit(0x10=16), size=1
_00099_DS_
;	.line	587; "../debug_touch.c"	if(T_buf<16)   //传输错误的，防下非影响其他数据
	MOV	R0,# 0x10
	BANKSEL	_T_buf
	SUB	R0, _T_buf
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00100_DS_
;	op : GET_VALUE_AT_ADDRESS
;	.line	589; "../debug_touch.c"	if(DAT_GET_STATE)
	JB	_P0_bits, 0
	JMP	_00094_DS_
;	op : INLINEASM
	BANKSEL _T_buf
	MOV R0,_T_buf
	ADD R0,#(_TOUCH_CH_TRS_EN+0)
	MOV R1,#0x01
	BANKSEL _TOUCH_CH_TRS_EN
	ST [R0],R1
	
;	op : GOTO
	JMP	_00100_DS_
;	op : LABEL
;	op : INLINEASM
_00094_DS_
	BANKSEL _T_buf
	MOV R0,_T_buf
	ADD R0,#(_TOUCH_CH_TRS_EN+0)
	MOV R1,#0x00
	BANKSEL _TOUCH_CH_TRS_EN
	ST [R0],R1
	
;	op : LABEL
;	op : =
_00100_DS_
;	.line	615; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	616; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : +
;	.line	574; "../debug_touch.c"	for(i_T_D=0;i_T_D<6;i_T_D++)
	BANKSEL	_i_T_D
	INC	_i_T_D
;	op : GOTO
	JMP	_00112_DS_
;	op : LABEL
;	op : =
_00102_DS_
;	.line	621; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	622; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : LABEL
;	op : =
_00103_DS_
;	.line	625; "../debug_touch.c"	CLK_SET_IN;
	SET	_TR0_bits, 1
;	op : =
;	.line	626; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : INLINEASM
Label_x_y_z_a:
	
;	op : LABEL
;	op : ENDFUNCTION
_00116_DS_
;	.line	634; "../debug_touch.c"	if(1);
	CRET	
; exit point of _TOUCH_DEBUG_TRS_DEAL



func._TOUCH_DEBUG_TRS_BAIHUALV	.code
;***
;  PostBlock Stats: dbName = C
;***
;entry:  _TOUCH_DEBUG_TRS_BAIHUALV	;Function start
; 2 exit points
;has an exit
;functions called:
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;   _delay_us
;3 compiler assigned registers:
;   STK00
;   r0x100A
;   r0x100B
;; Starting PostCode block
;	op : LABEL
;	op : FUNCTION
_TOUCH_DEBUG_TRS_BAIHUALV	;Function start
; 2 exit points
;	op : INLINEASM
	MOV R1,#High(__KF8_TOUCH_CH_EN+0)
	MOV R0,#(0)
	ADD R0,#Low(__KF8_TOUCH_CH_EN+0)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCL
	CALL __R2PCL
	PAGESEL $
	ADD R0,#(_TOUCH_CH_TRS_EN+0)
	MOV R1,#0x01
	BANKSEL _TOUCH_CH_TRS_EN
	ST [R0],R1
	
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R0,__KF8_LIBc_channel_
	ADD R0,#Low(__KF8_TOUCH_CH_EN+0)
	MOV R1,#High(__KF8_TOUCH_CH_EN+0)
	JNB PSW,0
	INC R1
	PAGESEL __R2PCL
	CALL __R2PCL
	PAGESEL $
	ADD R0,#(_TOUCH_CH_TRS_EN+0)
	BANKSEL _TOUCH_CH_TRS_EN
	LD R1,[R0]
	XOR R1,#0x00
	JNB PSW,2
	JMP Label_x_y_z_a_1
	
;	op : =
;	.line	67; "../debug_touch.c"	CLK_SET_IN;
	SET	_TR0_bits, 1
;	op : =
;	.line	68; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : SEND
;	op : CALL
;	.line	69; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : GET_VALUE_AT_ADDRESS
;	.line	73; "../debug_touch.c"	if(CLK_GET_STATE)
	JB	_P0_bits, 1
	JMP	_00007_DS_
;	op : SEND
;	op : CALL
;	.line	75; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : GET_VALUE_AT_ADDRESS
;	.line	76; "../debug_touch.c"	if(!CLK_GET_STATE)
	JNB	_P0_bits, 1
	JMP	_00008_DS_
;	op : RETURN
;	.line	77; "../debug_touch.c"	return;
	JMP	_00045_DS_
;	op : LABEL
;	op : GET_VALUE_AT_ADDRESS
_00007_DS_
;	.line	79; "../debug_touch.c"	else if(!CLK_GET_STATE)
	JNB	_P0_bits, 1
	JMP	_00004_DS_
;	op : RETURN
;	.line	81; "../debug_touch.c"	return;
	JMP	_00045_DS_
;	op : LABEL
;	op : RETURN
_00004_DS_
;	.line	84; "../debug_touch.c"	return;
	JMP	_00045_DS_
;	op : LABEL
;	op : =
_00008_DS_
;	.line	86; "../debug_touch.c"	CLK_SET_OUT;
	CLR	_TR0_bits, 1
;	op : =
;	.line	88; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	89; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	91; "../debug_touch.c"	CLK_SET_HIGH;		//上升沿
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	93; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
;	.line	95; "../debug_touch.c"	if(!DAT_GET_STATE)
	PAGESEL	$
;	.line	97; "../debug_touch.c"	return;
	JB	_P0_bits, 0
;	.line	100; "../debug_touch.c"	CLK_SET_LOW;			//下降沿
	JMP	_00045_DS_
	CLR	_P0_bits, 1
;	.line	104; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	106; "../debug_touch.c"	DAT_SET_OUT;
	CLR	_TR0_bits, 0
;	op : =
;	.line	108; "../debug_touch.c"	j=5;
	MOV	R0,# 0x05
	BANKSEL	r0x100A
	MOV	r0x100A, R0
;	op : =
;	.line	110; "../debug_touch.c"	for(step=0;step<5;step++)
	BANKSEL	r0x100B
	CLR	r0x100B
;	op : LABEL
;	op : <
;unsigned compare: left < lit(0x5=5), size=1
_00037_DS_
	MOV	R0,# 0x05
	BANKSEL	r0x100B
	SUB	R0, r0x100B
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00040_DS_
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	CLR PSW,0
	RLCR __KF8_LIBc_channel_
	BANKSEL __KF8_LIBi_Date_Change_
	ADD R0,#(__KF8_LIBi_Date_Change_+0)
	LD R1,[R0]
	BANKSEL _Date_Baihualv_Get_V
	MOV _Date_Baihualv_Get_V,R1
	INC R0
	BANKSEL __KF8_LIBi_Date_Change_
	LD R1,[R0]
	BANKSEL _Date_Baihualv_Get_V
	MOV _Date_Baihualv_Get_V+1,R1
	
;	op : >
;swapping arguments (AOP_TYPEs 1/2)
;unsigned compare: left >= lit(0x5=5), size=1
;	.line	130; "../debug_touch.c"	switch(step)
	MOV	R0,# 0x05
	BANKSEL	r0x100B
	SUB	R0, r0x100B
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00016_DS_
;	op : JUMPTABLE
	MOV	R0,#high _00067_DS_
	MOV	PCH, R0
	MOV	R0,#_00067_DS_
	BANKSEL	r0x100B
	ADD	R0, r0x100B
	JNB	PSW, 0
	INC	PCH
	MOV	PCL, R0
_00067_DS_
	JMP	_00011_DS_
	JMP	_00012_DS_
	JMP	_00013_DS_
	JMP	_00014_DS_
	JMP	_00015_DS_
;	op : LABEL
;	op : =
_00011_DS_
;	.line	134; "../debug_touch.c"	j=5;
	MOV	R0,# 0x05
	BANKSEL	r0x100A
	MOV	r0x100A, R0
;	op : INLINEASM
	BANKSEL __KF8_LIBc_channel_
	MOV R0, __KF8_LIBc_channel_
	ADD R0,#Low(__KF8_TOUCH_CH_EN+0)
	MOV R1,#High(__KF8_TOUCH_CH_EN+0)
	JNB PSW,0
	INC R1
	MOV PCH,R1
	PAGESEL __R2PCL
	CALL __R2PCL
	PAGESEL $
	BANKSEL _T_buf
	MOV _T_buf,R0
	
;	op : GOTO
;	.line	153; "../debug_touch.c"	}break;
	JMP	_00016_DS_
;	op : LABEL
;	op : =
_00012_DS_
;	.line	157; "../debug_touch.c"	j=8;
	MOV	R0,# 0x08
	BANKSEL	r0x100A
	MOV	r0x100A, R0
;	op : INLINEASM
	BANKSEL _Date_Baihualv_Get_V
	MOV R1,_Date_Baihualv_Get_V
	JB _Date_Baihualv_Get_V+1,7
	JMP $+2
	CPL R1
	INC R1
	BANKSEL _T_buf
	MOV _T_buf,R1
	
;	op : GOTO
;	.line	172; "../debug_touch.c"	}break;
	JMP	_00016_DS_
;	op : LABEL
;	op : =
_00013_DS_
;	.line	176; "../debug_touch.c"	j=8;
	MOV	R0,# 0x08
	BANKSEL	r0x100A
	MOV	r0x100A, R0
;	op : INLINEASM
	BANKSEL _Date_Baihualv_Get_V
	MOV R1,_Date_Baihualv_Get_V+1
	JB R1,7
	JMP Show_temp_DS_000
	CPL R1
	MOV R0,_Date_Baihualv_Get_V
	CPL R0
	INC R0
	JNB PSW,2
	INC R1
Show_temp_DS_000:
	BANKSEL _T_buf
	MOV _T_buf,R1
	
;	op : GOTO
;	.line	199; "../debug_touch.c"	}break;
	JMP	_00016_DS_
;	op : LABEL
;	op : =
_00014_DS_
;	.line	203; "../debug_touch.c"	j=8;
	MOV	R0,# 0x08
	BANKSEL	r0x100A
	MOV	r0x100A, R0
;	op : INLINEASM
	BANKSEL _Date_Baihualv_Get_V
	MOV R1,_Date_Baihualv_Get_V
	JB _Date_Baihualv_Get_V+1,7
	JMP $+2
	CPL R1
	INC R1
	BANKSEL _T_buf
	MOV _T_buf,R1
	
;	op : GOTO
;	.line	218; "../debug_touch.c"	}break;
	JMP	_00016_DS_
;	op : LABEL
;	op : =
_00015_DS_
;	.line	222; "../debug_touch.c"	j=8;
	MOV	R0,# 0x08
	BANKSEL	r0x100A
	MOV	r0x100A, R0
;	op : INLINEASM
	BANKSEL _Date_Baihualv_Get_V
	MOV R1,_Date_Baihualv_Get_V+1
	JB R1,7
	JMP Show_temp_DS_001
	CPL R1
	MOV R0,_Date_Baihualv_Get_V
	CPL R0
	INC R0
	JNB PSW,2
	INC R1
	INC R1
Show_temp_DS_001:
	BANKSEL _T_buf
	MOV _T_buf,R1
	
;	op : LABEL
;	op : =
_00016_DS_
;	.line	249; "../debug_touch.c"	for(i_T_D=0;i_T_D<j;i_T_D++)
	BANKSEL	_i_T_D
	CLR	_i_T_D
;	op : LABEL
;	op : <
_00033_DS_
	BANKSEL	r0x100A
	MOVZ	R0, r0x100A
	BANKSEL	_i_T_D
	SUB	R0, _i_T_D
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00036_DS_
;	op : BITWISEAND
;	.line	251; "../debug_touch.c"	if(T_buf&0x01)
	BANKSEL	_T_buf
	JB	_T_buf, 0
	JMP	_00018_DS_
;	op : =
;	.line	252; "../debug_touch.c"	DAT_SET_HIGH;
	SET	_P0_bits, 0
;	op : GOTO
	JMP	_00019_DS_
;	op : LABEL
;	op : =
_00018_DS_
;	.line	254; "../debug_touch.c"	DAT_SET_LOW;
	CLR	_P0_bits, 0
;	op : LABEL
;	op : =
_00019_DS_
;	.line	256; "../debug_touch.c"	CLK_SET_HIGH;
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	257; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	259; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	260; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : RIGHT_OP
;	.line	262; "../debug_touch.c"	T_buf=T_buf>>1;
	CLR	PSW, 0
	BANKSEL	_T_buf
	RRC	_T_buf
;	op : +
;	.line	249; "../debug_touch.c"	for(i_T_D=0;i_T_D<j;i_T_D++)
	BANKSEL	_i_T_D
	INC	_i_T_D
;	op : GOTO
	JMP	_00033_DS_
;	op : LABEL
;	op : SEND
;	op : CALL
_00036_DS_
;	.line	265; "../debug_touch.c"	Touch_Delay2;
	MOV	R0,# 0x6e
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : +
;	.line	110; "../debug_touch.c"	for(step=0;step<5;step++)
	BANKSEL	r0x100B
	INC	r0x100B
;	op : GOTO
	JMP	_00037_DS_
;	op : LABEL
;	op : =
_00040_DS_
;	.line	269; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : SEND
;	op : CALL
;	.line	270; "../debug_touch.c"	Touch_Delay2;	//编程器判断需要时间
	MOV	R0,# 0x6e
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	272; "../debug_touch.c"	CLK_SET_HIGH;
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	273; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : SEND
;	op : CALL
;	.line	274; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : SEND
;	op : CALL
;	.line	275; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : GET_VALUE_AT_ADDRESS
;	.line	278; "../debug_touch.c"	if(DAT_GET_STATE)
	JB	_P0_bits, 0
	JMP	_00031_DS_
;	op : =
;	.line	280; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : =
;	.line	281; "../debug_touch.c"	T_buf=0;
	BANKSEL	_T_buf
	CLR	_T_buf
;	op : SEND
;	op : CALL
;	.line	282; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : =
;	.line	283; "../debug_touch.c"	for(i_T_D=0;i_T_D<6;i_T_D++)
	BANKSEL	_i_T_D
	CLR	_i_T_D
;	op : LABEL
;	op : <
;unsigned compare: left < lit(0x6=6), size=1
_00041_DS_
	MOV	R0,# 0x06
	BANKSEL	_i_T_D
	SUB	R0, _i_T_D
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00032_DS_
;	op : =
;	.line	285; "../debug_touch.c"	CLK_SET_HIGH;
	SET	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	286; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : EQ_OP
;	.line	288; "../debug_touch.c"	if(i_T_D!=5)
	BANKSEL	_i_T_D
	MOVZ	R0, _i_T_D
;	.line	290; "../debug_touch.c"	T_buf=T_buf>>1;
	XOR	R0,# 0x05
	JNB	PSW, 2
	JMP	_00028_DS_
	CLR	PSW, 0
	BANKSEL	_T_buf
	RRC	_T_buf
;	op : GET_VALUE_AT_ADDRESS
;	.line	291; "../debug_touch.c"	if(DAT_GET_STATE)
	JB	_P0_bits, 0
	JMP	_00029_DS_
;	op : |
;	.line	292; "../debug_touch.c"	T_buf=T_buf|0x10;
	BANKSEL	_T_buf
	SET	_T_buf, 4
;	op : GOTO
	JMP	_00029_DS_
;	op : LABEL
;	op : <
;unsigned compare: left < lit(0x10=16), size=1
_00028_DS_
;	.line	296; "../debug_touch.c"	if(T_buf<16)   //传输错误的，防下非影响其他数据
	MOV	R0,# 0x10
	BANKSEL	_T_buf
	SUB	R0, _T_buf
;comparing bytes at offset 0
	JNB	PSW, 0
	JMP	_00029_DS_
;	op : GET_VALUE_AT_ADDRESS
;	.line	298; "../debug_touch.c"	if(DAT_GET_STATE)
	JB	_P0_bits, 0
	JMP	_00023_DS_
;	op : INLINEASM
	BANKSEL _T_buf
	MOV R0,_T_buf
	ADD R0,#(_TOUCH_CH_TRS_EN+0)
	MOV R1,#0x01
	BANKSEL _TOUCH_CH_TRS_EN
	ST [R0],R1
	
;	op : GOTO
	JMP	_00029_DS_
;	op : LABEL
;	op : INLINEASM
_00023_DS_
	BANKSEL _T_buf
	MOV R0,_T_buf
	ADD R0,#(_TOUCH_CH_TRS_EN+0)
	MOV R1,#0x00
	BANKSEL _TOUCH_CH_TRS_EN
	ST [R0],R1
	
;	op : LABEL
;	op : =
_00029_DS_
;	.line	324; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	325; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : +
;	.line	283; "../debug_touch.c"	for(i_T_D=0;i_T_D<6;i_T_D++)
	BANKSEL	_i_T_D
	INC	_i_T_D
;	op : GOTO
	JMP	_00041_DS_
;	op : LABEL
;	op : =
_00031_DS_
;	.line	330; "../debug_touch.c"	CLK_SET_LOW;
	CLR	_P0_bits, 1
;	op : SEND
;	op : CALL
;	.line	331; "../debug_touch.c"	Touch_Delay1;
	MOV	R0,# 0x05
	BANKSEL	STK00
	MOV	STK00, R0
	MOV	R0,# 0x00
	PAGESEL	_delay_us
	CALL	_delay_us
	PAGESEL	$
;	op : LABEL
;	op : =
_00032_DS_
;	.line	334; "../debug_touch.c"	CLK_SET_IN;
	SET	_TR0_bits, 1
;	op : =
;	.line	335; "../debug_touch.c"	DAT_SET_IN;
	SET	_TR0_bits, 0
;	op : INLINEASM
Label_x_y_z_a_1:
	
;	op : LABEL
;	op : ENDFUNCTION
_00045_DS_
	CRET	
; exit point of _TOUCH_DEBUG_TRS_BAIHUALV


;	code size estimation:
;	  577+  121 =   698 instructions ( 1638 byte)


	.end
