📄 float_main.c
字号:
//**********************************************************************
//功能 : 软件看门狗程序
//作者 : lihj
//创建日期 : 2004-06-13
//版本 : V1.0
//修改记录 :
//***********************************************************************
//系统参数配置
#define TS 5 //信号采样周期定义,单位是100ms
#define TF 20 //滤波时间常数定义,单位是100ms
//全局变量定义
float g_fPreInput; //上一周期的采样值
float g_fQ;
//内部函数声明
float Filter(float);
//外部函数声明
float Sample(void);
void HardIni(void);
//主循环
void main(void)
{
float CurSigVal; //当前信号值
int i;
//硬件初始化
HardIni();
//全局变量初始化
g_fPreInput = 0;
g_fQ = (float)TF/(TF+TS);
while(1)
{
CurSigVal = Filter(Sample());
for(i=0;i<20000;i++); //待机一段时间
}
}
//一阶惯性滤波
float Filter(float CurInput)
{
float t;
t = g_fPreInput*g_fQ + CurInput*(1-g_fQ);
g_fPreInput = t;
return t;
}
//硬件初始化接口
void HardIni(void)
{
}
//信号采样接口
float Sample(void)
{
return 1.0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -