这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 物联网技术 » 美信max1294的stm32驱动程序

共2条 1/1 1 跳转至

美信max1294的stm32驱动程序

菜鸟
2011-04-15 17:37:34     打赏

#include "commen.h"
#include "bsp.h"
#include "stm32f10x.h"

/****************************************************************************
* 名称:ADConvert()
* 功能:AD转换
* 入口参数:无
* 出口参数:无
* 说明:
****************************************************************************/
void delay_max1294(u8 k)  //ltc1272的专用延时

    while(k--);
}
void GPIOD1_Config(void) //低八位输出
{
    GPIO_InitTypeDef GPIO_InitStructure;
 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
   GPIO_Init(GPIOD, &GPIO_InitStructure);
}

void GPIOD2_Config(void) //低八位输入
{
 GPIO_InitTypeDef GPIO_InitStructure;
 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
   GPIO_Init(GPIOD, &GPIO_InitStructure);
}


float ADConvert(void)
{
  
    float ADVolt=0.0;
    u16 ADValue=0;
    AD_CSSET;
 AD_WRSET;
    AD_RDSET;
    AD_CSRESET;
 delay_max1294(4) ;
 AD_WRRESET;

 delay_max1294(3) ;

   GPIOD2_Config();
 GPIOD->ODR = 0x00000098;   //采用内部模式,通道一输入
 delay_max1294(3) ;
 AD_WRSET;

 delay_max1294(3) ;
 while(AD_CHECK_INT);
  
  delay_max1294(2);
      
  AD_RDRESET;
   
   
 GPIOD1_Config();
  ADValue = Data_Port_MAX1294;     
   DelayUs(1);
  AD_CSSET;
  ADValue &= 0x0fff;
  ADVolt=(2.5*(ADValue)/4095.0);
 
 
    
 return ADVolt;    
 }

float max1294_sumpling(void)
{ float vol[30]={0};
  float temp_sum;
  char j;
  float sum0=0.0;
  for(j=0;j<30;j++)
   vol[j]=ADConvert();
  for(j=5;j<25;j++)
   sum0+=vol[j];
  temp_sum=sum0/20.0;
  return temp_sum;
}

/****************************************************************************
* 名称:ShowADValue()
* 功能:AD转换
* 入口参数:无
* 出口参数:无
* 说明:
****************************************************************************/
void  ShowADValue(void )
{
// u8 count=0;
 float ADVolt=0.0;
 char strv[16]="0";
   
   
    ADVolt = max1294_sumpling();
  
   
    sprintf(strv,"%8.4f",ADVolt);
 DispStr(0,2,(u8*)strv);
}

 




关键词: 美信     max1294     stm32     驱动程序    

菜鸟
2011-04-17 09:58:38     打赏
2楼
ZHICHI XAI支持下啊

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]