资源简介
之前上传过驱动TMC2600的代码(函数),现在共享一下整个工程文件。整个工程文件的功能比较多,代码也不是很规范,只是实现功能的版本,交了任务之后就再没修改过。请慎重下载!特别提醒,SystemTim.c文件是使用中断功能实现一个定时任务处理的功能,控制传感器实现测厚功能。慎重下载,代码绝对可用,拒绝差评!
原理图不能上传,我会分享到我的博客中,确实有需要的朋友,可以对照博客理解代码。
代码片段和文件信息
#include “SystemTim.h“
#include “CommonFunc.h“
void Array_Copy(double* x double* y u8 len)
{
for(u8 i = 0; i < len; i++)
{
y[i] = x[i];
}
}
/****************************************************
函数名:Get_ArrayAvg(double* Hz int start int end)
参数:数组Hz、开始的下标位置start、结束位置end
功能:计算数组Hz下标从start到end的平均值
返回值:计算得到的平均值
****************************************************/
double Get_ArrayAvg(double* Hz int start int end)
{
double Avg = 0;
for(u8 i = start; i < end + 1; i++)
{
Avg = Avg + Hz[i];
}
Avg = Avg/(end - start + 1);
return Avg;
}
/****************************************************
函数名:Selection_Sort(double* Hz u8 N)
参数:数组Hz、常数N
功能:对数组Hz进行从大到小排序,N未数组的长度
返回值:返回排序状态
****************************************************/
u8 Selection_Sort(double* Hz u8 N)
{
u8 ijt;
double temp;
for(i = 0; i {
t = i;
for(j = i+1; j < N; j++)
{
if(Hz[j]>Hz[t])
t = j;
}
if(t != i)
{
temp = Hz[t];
Hz[t] = Hz[i];
Hz[i] = temp;
}
}
return 1;
}
/*********************************************************************/
/****************************************************
函数名:WindowFilter(double* Hzdouble Hz0)
参数:数组Hz、新的测量频率Hz0
功能:对数组Hz进行滤波,每次去掉最大或最小值
返回值:数组Hz的平均值AvgValue
****************************************************/
double WindowFilter(double* Hzdouble Hz0double AvgValueu8 len)
{
double temp1temp2;
Selection_Sort(Hzlen);
if(!((Hz0 < Hz[4])||(Hz0 > Hz[0])))
{
temp1 = Hz[0] - AvgValue;
temp2 = AvgValue - Hz[4];
if(temp1 > temp2)
{
AvgValue = AvgValue + (Hz0- Hz[0])/5;
Hz[0] = Hz0;
}
else
{
AvgValue = AvgValue + (Hz0- Hz[4])/5;
Hz[4] = Hz0;
}
}
return AvgValue;
}
/*********************************************************************/
/**********************************************************************
函数名:ArrayTakeOut(double* Arrayu8 Ndouble* NewArrayu8 startu8 n)
参数:原始数组Array[]、原始数组长度N、
新数组NewArray[]、提取数组的起始位置、提取数组的长度
功能:从一个数组中提取一组数据到另一个数组中去
返回值:无返回值、产生一个新的数组
**********************************************************************/
u8 ArrayTakeOut(double* Arrayu8 Ndouble* NewArrayu8 startu8 n)
{
if(start + n <= N)
{
for(u8 i = start; i < start + n; i++)
{
NewArray[i-start] = Array[i];
}
}
else
{
return 0;
}
return 1;
}
/***************************************************/
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2686 2018-03-07 21:11 SoftwareDesign-v2.1-最终代码-180320\Algorithm\CommonFunc.c
文件 385 2018-03-04 18:11 SoftwareDesign-v2.1-最终代码-180320\Algorithm\CommonFunc.h
文件 1949 2018-01-16 10:27 SoftwareDesign-v2.1-最终代码-180320\Algorithm\CurveFitted.c
文件 131 2018-01-16 10:27 SoftwareDesign-v2.1-最终代码-180320\Algorithm\CurveFitted.h
文件 4543 2018-03-15 10:56 SoftwareDesign-v2.1-最终代码-180320\Algorithm\Driver_Control.c
文件 598 2017-11-12 18:53 SoftwareDesign-v2.1-最终代码-180320\Algorithm\Driver_Control.h
文件 11250 2018-03-20 21:27 SoftwareDesign-v2.1-最终代码-180320\Algorithm\Probe_Calibrate.c
文件 933 2018-03-20 20:29 SoftwareDesign-v2.1-最终代码-180320\Algorithm\Probe_Calibrate.h
文件 6611 2018-03-20 21:27 SoftwareDesign-v2.1-最终代码-180320\Algorithm\SystemTim.c
文件 781 2018-03-20 20:29 SoftwareDesign-v2.1-最终代码-180320\Algorithm\SystemTim.h
文件 109142 2016-04-15 21:57 SoftwareDesign-v2.1-最终代码-180320\Core\core_cm4.h
文件 22735 2016-04-15 21:57 SoftwareDesign-v2.1-最终代码-180320\Core\core_cm4_simd.h
文件 17146 2016-04-15 21:57 SoftwareDesign-v2.1-最终代码-180320\Core\core_cmFunc.h
文件 20513 2016-04-15 21:57 SoftwareDesign-v2.1-最终代码-180320\Core\core_cmInstr.h
文件 29605 2016-04-15 21:57 SoftwareDesign-v2.1-最终代码-180320\Core\startup_stm32f40_41xxx.s
文件 3710 2017-12-30 22:23 SoftwareDesign-v2.1-最终代码-180320\Driver\Adc.c
文件 902 2017-10-23 09:58 SoftwareDesign-v2.1-最终代码-180320\Driver\Adc.H
文件 1653 2018-02-27 23:09 SoftwareDesign-v2.1-最终代码-180320\Driver\Delay.c
文件 216 2017-10-21 11:44 SoftwareDesign-v2.1-最终代码-180320\Driver\Delay.h
文件 11470 2017-11-12 19:31 SoftwareDesign-v2.1-最终代码-180320\Driver\Driver_Init.c
文件 1695 2017-11-12 19:33 SoftwareDesign-v2.1-最终代码-180320\Driver\Driver_Init.h
文件 1950 2017-11-05 14:42 SoftwareDesign-v2.1-最终代码-180320\Driver\Encode.c
文件 260 2017-10-31 16:31 SoftwareDesign-v2.1-最终代码-180320\Driver\Encode.h
文件 467 2017-10-20 20:51 SoftwareDesign-v2.1-最终代码-180320\Driver\GPIO.c
文件 2663 2017-11-20 10:26 SoftwareDesign-v2.1-最终代码-180320\Driver\GPIO.h
文件 2298 2018-01-01 20:19 SoftwareDesign-v2.1-最终代码-180320\Driver\GPIO_Init.c
文件 477 2018-01-01 20:19 SoftwareDesign-v2.1-最终代码-180320\Driver\GPIO_Init.h
文件 2726 2017-10-21 11:47 SoftwareDesign-v2.1-最终代码-180320\Driver\IIC.c
文件 864 2017-10-20 20:42 SoftwareDesign-v2.1-最终代码-180320\Driver\IIC.h
文件 356 2017-10-31 11:14 SoftwareDesign-v2.1-最终代码-180320\Driver\IWDG.c
............此处省略108个文件信息
- 上一篇:ZYNQ7021 串口UART0
- 下一篇:EI检索论文模板
评论
共有 条评论