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

📄 lp.asm

📁 51单片机,采用简单整系数低通算法设计的低通滤波器.汇编语言
💻 ASM
字号:
ECG_100_005:
;		jb ADCDATA00.4,Find_Pace
;		jb ADCDATA10.4,F_Pace 
;		jb ADCDATA20.4,F_Pace 
;		jb ADCDATA30.4,F_Pace  
		;****二阶低通100Hz, 增益:4,Y=X0+2X1+X2;
										;Y=2X1
		clr C
		mov A,ECG_X1L
		rlc A
		mov ECG_YL,A
		mov A,ECG_X1M
		rlc A
		mov ECG_YM,A
		mov A,ECG_X1H
		rlc A
		mov ECG_YH,A

										;Y=Y+X0
		mov A,ECG_YL		
		add A,ECG_X0L
		mov ECG_YL,A
		mov A,ECG_YM		
		addc A,ECG_X0M
		mov ECG_YM,A
		mov A,ECG_YH		
		addc A,ECG_X0H
		mov ECG_YH,A
										;Y=Y+X2
		mov A,ECG_YL
		add A,ECG_X2L
		mov ECG_YL,A
		mov A,ECG_YM
		addc A,ECG_X2M
		mov ECG_YM,A
		mov A,ECG_YH
		addc A,ECG_X2H
		mov ECG_YH,A
										;Y=Y/4
		lcall ECGY_DIV2
		lcall ECGY_DIV2

		;******高通0.2Hz****
												;YB=(1-1/256)YB
		clr C
		mov A,ECG_YB0
		subb A,ECG_YBL
		mov ECG_YB0,A
		mov A,ECG_YBL		
		subb A,ECG_YBM
		mov ECG_YBL,A
		mov A,ECG_YBM
		subb A,ECG_YBH
		mov ECG_YBM,A
		mov A,ECG_YBH
		jb Acc.7,ECG_SUBBFF
		subb A,#00H
		sjmp ECG_Next1
ECG_SUBBFF:
		subb A,#0FFH
ECG_Next1:
		mov ECG_YBH,A
												;YB=(1-1/256)YB+1/256*Y
		mov A,ECG_YB0
		add A,ECG_YL
		mov ECG_YB0,A
		mov A,ECG_YBL
		addc A,ECG_YM
		mov ECG_YBL,A
		mov A,ECG_YBM
		addc A,ECG_YH
		mov ECG_YBM,A
		mov A,ECG_YH
		jb Acc.7,ECG_ADDFF
		mov A,ECG_YBH
		addc A,#00H
		sjmp ECG_Next2
ECG_ADDFF:
		mov A,ECG_YBH
		addc A,#0FFH
ECG_Next2:
		mov ECG_YBH,A
												;Y0=Y-YB
		clr C
		mov A,ECG_YL
		subb A,ECG_YBL
		mov ECG_Y0L,A
		mov A,ECG_YM
		subb A,ECG_YBM
		mov ECG_Y0M,A
		mov A,ECG_YH
		subb A,ECG_YBH
		mov ECG_Y0H,A

		;处理Y使其(00-FF)
		mov A,ECG_Y0L
		add A,ECG_YLL
		mov ECG,A
		mov A,ECG_Y0M
		addc A,#00H
		jb Acc.7,Inc_ECG_YL
		jnz Dec_ECG_YL
		ret
Inc_ECG_YL:
		inc ECG_YLL
		mov ECG,#00H
		ret
Dec_ECG_YL:
		dec ECG_YLL
		mov ECG,#0FFH
		ret

ECGY_DIV2:
		mov A,ECG_YH
		rlc A
		mov A,ECG_YH
		rrc A
		mov ECG_YH,A
		mov A,ECG_YM
		rrc A
		mov ECG_YM,A
		mov A,ECG_YL
		rrc A
		mov ECG_YL,A
		ret

⌨️ 快捷键说明

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