资源简介

ADS1118的MSP430F5529驱动程序,该工程给出了一个很简单的实例工程,方便用户使用。欢迎大家下载~

资源截图

代码片段和文件信息

#include 
#include “ADS1118.h“
void ADS1118_Init(void)
{
    P7DIR|=BIT0+BIT1+BIT2;
    delay_us(1);
    P7DIR&=~BIT3;
    delay_us(1);
CS_H;
delay_us(1);
SCLK_H;
delay_us(1);
MOSI_L;
delay_us(1);
}

uint Write_ADS1118(uint datuchar mode)
{
uint tmpatmpbtmpctmpd;
uchar i;
if(mode == 1)//写命令,是连续转换还是单次转换
{
dat |= 0x8000;delay_us(1);
}
tmpa = dat;
    tmpc=dat;
    MISO_IN;
    delay_us(1);
SCLK_L;delay_us(1);
CS_L;delay_ms(1);
delay_ms(1);
for(i=0;i<16;i++)
{
if(tmpa & 0x8000)
{
MOSI_H;delay_us(1);
}
else
{
MOSI_L;delay_us(1);
}

tmpa <<= 1;
delay_us(1);
SCLK_H;
delay_us(1);
SCLK_L;
delay_us(1);
tmpb <<= 1;
        delay_us(1);
if(READ_MISO)tmpb|= 0x01;
;delay_us(1);
}
for(i=0;i<16;i++)
{
if(tmpc & 0x8000)
{
MOSI_H;delay_us(1);
}
else
{
MOSI_L;delay_us(1);
}
tmpc <<= 1;
delay_us(1);
SCLK_H;
delay_us(1);
SCLK_L;
delay_us(1);
tmpd <<= 1;
        delay_us(1);
if(READ_MISO)tmpd|= 0x01;
}
CS_H;
return tmpb;
}

/*******************************************************************************
//函数名称:ADS_SEL_Read()
//函数功能:读取各路电压,通过两个switch选择读取不同的通道
//输    入:road:增益放大器两端的电压选择,并选择测几路电压
//          Ref: 选择参考电压,有6种选择
//输    出:dat:16位ad转换数据
//备    注:这一次读出的转换数据是上一次的转换数据,不要混淆.这里选择的是单次
            转换电压值,当然,也可以选择多次转换通过寄存器的第8位可以设置
//日    期:2013.6.8
*******************************************************************************/
int ADS_SEL_Read(uchar CH1uchar CH2uchar Ref)         //测几路电压
{
    uint dat = 0;
    uint Config_Value = 0x000b;                      //默认低8位,DOUT带上拉电阻
    //配置选择通道
    if((CH1==0)&(CH2==0)) Config_Value += 0x4000;    //AINP = AIN0 and AINN = GND
    if((CH1==1)&(CH2==0)) Config_Value += 0x5000;    //AINP = AIN1 and AINN = GND
    if((CH1==2)&(CH2==0)) Config_Value += 0x6000;    //AINP = AIN2 and AINN = GND
    if((CH1==3)&(CH2==0)) Config_Value += 0x7000;    //AINP = AIN3 and AINN = GND
    if((CH1==0)&(CH2==1)) Config_Value += 0x0000;    //AINP = AIN0 and AINN = AIN1 (default)
    if((CH1==0)&(CH2==3)) Config_Value += 0x1000;    //AINP = AIN0 and AINN = AIN3
    if((CH1==1)&(CH2==3)) Config_Value += 0x2000;    //AINP = AIN1 and AINN = AIN3
    if((CH1==2)&(CH2==3)) Config_Value += 0x3000;    //AINP = AIN2 and AINN = AIN3
    //配合测量范围
    switch(Ref)
    {
case 0:  Config_Value += 0x0000;break;    //000 : FS = ±6.144V(1)
case 1:  Config_Value += 0x0200;break;    //001 : FS = ±4.096V(1)
case 2:  Config_Value += 0x0400;break;    //002 : FS = ±2.048V(1)
case 3:  Config_Value += 0x0600;break;    //003 : FS = ±1.024V(1)
case 4:  Config_Value += 0x0800;break;    //004 : FS = ±0.512V(1)
case 5: case 6: case 7: Config_Value += 0x0a00;break;    //005 : FS = ±0.256V(1)
default : break;
    }
    CS_L;
    delay_us(1);
    dat = Write_ADS1118(Config_Value1);
    delay_us(1);
    CS_H;
    delay_us(1);
    re

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-06-05 10:15  ADS1118\
     文件         501  2015-05-30 10:47  ADS1118\.ccsproject
     文件       27158  2015-05-31 12:44  ADS1118\.cproject
     目录           0  2015-06-05 10:15  ADS1118\.launches\
     文件        4233  2015-05-31 12:34  ADS1118\.launches\ADS1118(2).launch
     文件        4212  2015-05-30 18:54  ADS1118\.launches\ADS1118.launch
     文件        2572  2015-05-31 12:44  ADS1118\.project
     目录           0  2015-06-05 10:15  ADS1118\.settings\
     文件          93  2014-08-04 12:57  ADS1118\.settings\org.eclipse.cdt.codan.core.prefs
     文件         123  2015-05-31 12:44  ADS1118\.settings\org.eclipse.cdt.debug.core.prefs
     文件         326  2014-08-04 13:32  ADS1118\.settings\org.eclipse.core.resources.prefs
     文件        3901  2015-06-01 19:28  ADS1118\ADS1118.c
     文件         903  2015-05-31 11:21  ADS1118\ADS1118.h
     目录           0  2015-06-05 10:15  ADS1118\base\
     文件        2264  2015-05-30 18:33  ADS1118\base\Clk_Init.c
     文件         214  2014-07-22 09:41  ADS1118\base\Clk_Init.h
     文件       44155  2014-07-22 20:05  ADS1118\base\HAL_Dogs102x6.c
     文件        4288  2012-07-19 13:16  ADS1118\base\HAL_Dogs102x6.h
     文件         603  2015-06-01 19:09  ADS1118\base\System_Init.c
     文件         207  2015-05-30 18:31  ADS1118\base\System_Init.h
     目录           0  2015-06-05 10:15  ADS1118\Debug\
     文件       46047  2015-05-31 12:34  ADS1118\Debug\ADS1118(2).map
     文件       57910  2015-05-31 12:34  ADS1118\Debug\ADS1118(2).out
     文件      203155  2015-05-31 12:34  ADS1118\Debug\ADS1118(2)_linkInfo.xml
     文件       45449  2015-05-30 19:04  ADS1118\Debug\ADS1118.map
     文件        8773  2015-05-31 12:22  ADS1118\Debug\ADS1118.obj
     文件       53239  2015-05-30 19:04  ADS1118\Debug\ADS1118.out
     文件         550  2015-05-31 12:22  ADS1118\Debug\ADS1118.pp
     文件      194449  2015-05-30 19:04  ADS1118\Debug\ADS1118_linkInfo.xml
     目录           0  2015-06-05 10:15  ADS1118\Debug\base\
     文件        4109  2015-05-30 21:03  ADS1118\Debug\base\Clk_Init.obj
............此处省略25个文件信息

评论

共有 条评论