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

📄 ad_data_manage.c

📁 24位AD压力实验板 protell99se打开
💻 C
字号:

#include <msp430x14x.h>

extern unsigned long int ad1240;
extern float pressure;

//========================================================================================
//函数:ulong Hex_to_BCD(ulong data)
//功能:读取AD1240积存器
//变量:Byte
//返回:无
//========================================================================================
unsigned long int Hex_to_BCD(unsigned long int data)
{
 unsigned char i;
unsigned long int  data1[10],data2=0,data3,data4;  
 data3=data;
 data4=0;
 data2=0;
 for(i=0;i<8;i++)
    {
      data2=data3/10;     
      data1[i]=data3-data2*10;
     
      data3=data2;
    }
 data4=data1[7];
 for(i=8;i>0;i--)
 {
   data4=(data4<<4)+data1[i-1];
 }
  return data4;
}
//========================================================================================
//函数:unsigned long AD_Data_Manage(unsigned long *data,unsigned char num)
//功能:读取AD1240积存器
//变量:Byte
//返回:无
//========================================================================================
unsigned char AD_Data_Manage(float *data,unsigned char num)
{
unsigned char i;
float max_data,min_data,ad_data=0;
float  *data1;

data1=data;
max_data=data1[0];
min_data=data1[0];
for(i=0;i<num;i++)
{
  ad_data=ad_data+data[i];
  if(data[i]>max_data)  max_data=data1[i];
  else 
    if(data[i]<min_data)  min_data=data1[i];
}
ad_data=ad_data-max_data-min_data;
ad_data=(float)((float)ad_data/(num-2));
pressure=ad_data;
_NOP();

return ad_data; 
}

⌨️ 快捷键说明

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