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

📄 function.asm.bak

📁 cc2500的跳频发送程式,有需要的朋友可以参考一下哟
💻 BAK
字号:
;***********************************************************************
;F: File Name:	function.asm.
;F: Build Date:	2006/11/3.	
;F:
;F:
;F:
;***********************************************************************



;*****************************************************************
;F: Function Name: F_ClrAllRAM.
;F:
;F:
;F:
;F:
;******************************************************************
F_ClrAllRAM:
	lds	R_WrkReg1,0;
	mvl	R_WrkReg1;
	mvh	R_WrkReg1;
	mvu	R_WrkReg1;
L_LoopClr:
	lds	R_WrkReg1,0;
	sta#	@HL;
	cphl	0ffh;
	jmp	L_LoopClr;
	rts;
;******************************************************************
;F: Function Name: F_InitalPort.
;F: 
;F:
;F:
;F:
;F:
;*******************************************************************
F_InitalPort:
	lds	R_WrkReg1,D_RFLED;
	lcp	R_RFLEDBuf,R_WrkReg1;
	lds	R_WrkReg1,D_LowBatLED;
	lcp	R_LowBatLEDBuf,R_WrkReg1;

	lds	R_WrkReg1,0;
	opa	R_WrkReg1;
	spa	1111b;
	lds	R_WrkReg1,D_CSn;
	opa	R_WrkReg1;
	sta	R_PortA;
	
	lds	R_WrkReg1,0;
	opb	R_WrkReg1;
	spb	0000b;
	
	opc	R_WrkReg1;
	spc	10000b;
	
	opd	R_WrkReg1;
	spd	10000b;
;======================================
;======================================
	nop;
	nop;
	nop;
	ipd	R_WrkReg1;
	sta	R_AddrCode;

	tmsx	001111111b;   15.625ms interrupt.
	sf	80h;          Enable the re-load function.
	sie*	D_Tmr1IntEnable+D_PreIntEnable;				
	rts;		
;*********************************************************************
;F: Function Name: F_ScanKey.
;F:
;F:
;F:
;F:
;*********************************************************************
F_ScanKey:
	subi	R_KeyStep,D_DelStep;
	jz	L_DelStepPro;
	subi	R_KeyStep,D_WaitStep;
	jz	L_WaitStepPro;
	subi	R_KeyStep,D_RelaseStep;
	jz	L_RelaseStepPro;
L_ChkStepPro:
	ipc	R_IntWrk;
	jz	L_ScanKeyRet;

	lds	R_KeyStep,D_DelStep;
	jmp	L_ScanKeyRet;
;=============================================
;=============================================
L_DelStepPro:
	lds	R_KeyStep,D_WaitStep;
	ipc	R_IntWrk;
	jb0	L_K1Is;
	jb1	L_K2Is;
	jb2	L_K3Is;
	jb3	L_K4Is;
	jmp	L_ErrKey;
L_K1Is:
	lds	R_KeyVal,1;
	jmp	L_ScanKeyRet;
L_K2Is:
	lds	R_KeyVal,2;
	jmp	L_ScanKeyRet;
L_K3Is:
	lds	R_KeyVal,4;
	jmp	L_ScanKeyRet;
L_K4Is:
	lds	R_KeyVal,8;
	jmp	L_ScanKeyRet;
;=============================================
;=============================================
L_WaitStepPro:	
	ipc	R_IntWrk;
	jnz	L_ScanKeyRet;
	
	lds	R_KeyStep,D_RelaseStep;
	jmp	L_ScanKeyRet;
;=============================================
;=============================================	
L_RelaseStepPro:
	ipc	R_IntWrk;
	jz	L_ErrKey;

	lds	R_KeyStep,D_WaitStep;
	jmp	L_ScanKeyRet;
L_ErrKey:
	lds	R_KeyStep,0;
L_ScanKeyRet:
	rts;
;**********************************************************************	
;F: Function Name: F_ChkLowBatter.
;F:
;F:
;F:
;F:
;**********************************************************************
F_ChkLowBatter:
	ipb	R_WrkReg1;
	jb2	L_NoLowBat;
L_LowBatIs:
	lds	R_WrkReg1,0
	lcp	R_LowBatLEDBuf,R_WrkReg1;
	rts;
L_NoLowBat:
	lds	R_WrkReg1,D_LowBatLED;
		

⌨️ 快捷键说明

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