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

📄 etc.h

📁 此程序为DP256的ETC实验程序,已经通过实验证明
💻 H
字号:

#ifndef __ETC_H__
#define __ETC_H__

#ifdef ETC_GLOBALS
    #define ETC_EXT
#else
    #define ETC_EXT extern
#endif//#ifdef ETC_GLOBALS

ETC_EXT	L_U8	ETC_nCapture_mp;
ETC_EXT	L_U16	ETC_tiCapture_mp;
ETC_EXT	L_U16	ETC_tiCapture_mp0;

#define	WhlDa_tiSample		ETC_tiCapture_mp//speed sample time in ms
#define	WhlDa_nPulse		ETC_nCapture_mp//nPulse counted within the sample time

#define	ETC_IC_TIME_MAX		62500	//1000ms
#define	ETC_IC_TIME_MIN		25000	//400ms
#define ETC_IC_COUNTER_MAX	200u

#define	ETC_IC_DLY_DIS	0u
#define	ETC_IC_DLY_MIN	1u
#define	ETC_IC_DLY_MID	2u
#define	ETC_IC_DLY_MAX	3u

#define ETC_TIMER_PRESCAL_1		0
#define ETC_TIMER_PRESCAL_2		1
#define ETC_TIMER_PRESCAL_4		2
#define ETC_TIMER_PRESCAL_8		3
#define ETC_TIMER_PRESCAL_16	4
#define ETC_TIMER_PRESCAL_32	5
#define ETC_TIMER_PRESCAL_64	6
#define ETC_TIMER_PRESCAL_128	7

#define	ETC_IC0_EN		0u//1u
#define	ETC_IC1_EN		0u
#define	ETC_IC2_EN		4u
#define	ETC_IC3_EN		0u
#define	ETC_IC4_EN		0u
#define	ETC_IC5_EN		0u
#define	ETC_IC6_EN		0u
#define	ETC_IC7_EN		0u

#define	ETC_IC_DISABLE		0u
#define	ETC_IC_EDGE_RE		1u
#define	ETC_IC_EDGE_FE		2u
#define	ETC_IC_EDGE_BE		3u

#define	ETC_IC0_EDGE		ETC_IC_DISABLE//ETC_IC_EDGE_RE
#define	ETC_IC1_EDGE		ETC_IC_DISABLE
#define	ETC_IC2_EDGE		(ETC_IC_EDGE_RE << 4)
#define	ETC_IC3_EDGE		ETC_IC_DISABLE
#define	ETC_IC4_EDGE		ETC_IC_DISABLE
#define	ETC_IC5_EDGE		ETC_IC_DISABLE
#define	ETC_IC6_EDGE		ETC_IC_DISABLE
#define	ETC_IC7_EDGE		ETC_IC_DISABLE
#define	ETC_IC_EDGE			(ETC_IC0_EDGE | ETC_IC1_EDGE | ETC_IC2_EDGE | ETC_IC3_EDGE | ETC_IC4_EDGE | ETC_IC5_EDGE | ETC_IC6_EDGE | ETC_IC7_EDGE)

#define	ETC_IC_EN		(ETC_IC0_EN | ETC_IC1_EN | ETC_IC2_EN | ETC_IC3_EN | ETC_IC4_EN | ETC_IC5_EN | ETC_IC6_EN | ETC_IC7_EN)

#define	ETC_CXF			TFLG1_C2F//TFLG1_C0F


void	ETC_Init(void);
void	ETC_ICInit(void);
L_U16	ETC_GetICTime(void);
void	ETC_Timer_Enable(void);
void	ETC_Timer_Disable(void);
L_U16	ETC_GetSampleTime(void);

#define	SWTITCH_TEST_MODE	0

#if	SWTITCH_TEST_MODE 	== 1
	#define	SWITCHTEST_PIN0		PORTK_BIT0
	#define	SWITCHTEST_PIN0_MSK	DDRK_DDK0
	#define	SWITCHTEST_PIN1		PORTK_BIT1
	#define	SWITCHTEST_PIN1_MSK	DDRK_DDK1
	#define	SWITCHTEST_PIN2		PORTK_BIT2
	#define	SWITCHTEST_PIN2_MSK	DDRK_DDK2
	#define	SWITCHTEST_PIN3		PORTK_BIT3
	#define	SWITCHTEST_PIN3_MSK	DDRK_DDK3
#endif

#define	ETC_DEBUG_MODE	0
#if	ETC_DEBUG_MODE 	== 1
#define	ETC_TEST_PIN	PTP_PTP3
#define	ETC_TEST_PIN_MSK	DDRP_DDRP3
ETC_EXT	L_U8	ETC_tiCycle;
#endif
#endif

⌨️ 快捷键说明

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