模数转换器ADS112C04

发布者:玉米哥哥最新更新时间:2022-09-06 来源: csdn关键字:模数转换器  MSP430 手机看文章 扫描二维码
随时随地手机看文章

#define ADD_ADS112C04_write 0x80

#define ADD_ADS112C04_read 0x81

#define START 0x08           

#define POWERDOWN 0x02         

#define RDATA 0x10        

#define RESET 0x06

#define WREG_0 0x40

#define WREG_1 0x44

#define WREG_2 0x48

#define WREG_3 0x4c

#define RREG_0 0x20

#define RREG_1 0x24

#define RREG_2 0x28

#define RREG_3 0x2c

void WriteReg(unsigned char adds,unsigned char val)

{

IIC_start();

IIC_writebyte(ADD_ADS112C04_write);

IIC_testACK();

IIC_writebyte(adds);

IIC_testACK();

IIC_writebyte(val);

IIC_testACK();

IIC_stop();

}

unsigned char ReadReg(unsigned char adds)

{

unsigned char v;

IIC_start();

IIC_writebyte(ADD_ADS112C04_write);

IIC_testACK();

IIC_writebyte(adds);

IIC_testACK();

IIC_start();    // Repeated START condition

IIC_writebyte(ADD_ADS112C04_read);

IIC_testACK();

v=IIC_readebyte();

IIC_masterNACK();

IIC_stop();

return v;

void ADS_Start()

{

IIC_start();

IIC_writebyte(ADD_ADS112C04_write);

IIC_testACK();

IIC_writebyte(START);

IIC_testACK();

IIC_stop();

}

void ADS_PowerDown()

{

IIC_start();

IIC_writebyte(ADD_ADS112C04_write);

IIC_testACK();

IIC_writebyte(POWERDOWN);

IIC_testACK();

IIC_stop();

}

void ADS_Reset()

{

IIC_start();

IIC_writebyte(ADD_ADS112C04_write);

IIC_testACK();

IIC_writebyte(RESET);

IIC_testACK();

IIC_stop();

}


int ReadData()

{

int v;unsigned char i=0,j=0;

IIC_start();

    IIC_writebyte(ADD_ADS112C04_write);

    IIC_testACK();

    IIC_writebyte(RDATA);

    IIC_testACK();

    IIC_start();    // Repeated START condition

    IIC_writebyte(ADD_ADS112C04_read);

    IIC_testACK();

    i=IIC_readebyte();          

    IIC_masterACK();

    j=IIC_readebyte();          

    IIC_masterNACK();

    IIC_stop();

v=i;

v=v<<8;

v=v|j;

return v;


关键字:模数转换器  MSP430 引用地址:模数转换器ADS112C04

上一篇:例程1——LED
下一篇:改进版按键消抖程序

推荐阅读最新更新时间:2024-11-13 10:19

UART、IrDA、SPI、I2C MSP430学习
SPI、IIC、UART区别 第一个区别当然是名字: SPI(Serial Peripheral Interface:串行外设接口); I2C(INTER IC BUS) UART(Universal Asynchronous Receiver Transmitter:通用异步收发器) 第二,区别在电气信号线上: SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或主设备(Master),其他设备为SPI从机或从设备(Sla
[单片机]
MSP430F5529系统升压与时钟配置
前言 相信入门MSP430F5529的你还在苦恼资料少,但是不妨换个角度想想,既然资料少,那就自己吃它!天道酬勤是吧,鸡汤少灌点哈哈,好了,补上上一篇博文所需要的内容,这一章主要就是讲一下系统升压与时钟配置问题,小建议运行程序前还是有必要进行一次时钟源配置,开讲啦! 一、如何系统升压 首先为什么要把系统的核心电压升高呢,自然就是他要与时钟频率相匹配,即1.8V(0~8MHZ),2.0V(0~12MHZ),2.2V(0~20MHZ),2.4V(0~25MHZ)四个级别,即要提高时钟频率,那么相对应的就要进行系统升压。MSP430手册上已经提到了:一表一图很好地说明了 这里大家可能不太明白0、1、2、3代表什么?简单用一个
[单片机]
<font color='red'>MSP430</font>F5529系统升压与时钟配置
高速模数转换器的相位不平衡测试
使用高速ADC(模数转换器)进行产品开发时,或者评估这些器件以便用于设计时,必须注意ADC的输出谐波。ADC通常使用差分输入,使共模噪声和失真降至最低,但只有在平衡和对称的情况下,这些输入才能发挥最大效用。可以使用一个由两个RF信号发生器和一个振荡器组成的测试系统,来测量差分不平衡对ADC输入的影响。 当ADC的差分模拟输入由于驱动错相而变得不平衡时,器件输出中的偶次阶失真会提高。下面说明如何测量高速ADC的谐波性能,以便了解差分不平衡的影响。 1 测试设置 测试设置(如图1所示)使用两个RF信号发生器驱动2 MHz至300 MHz频率范围的ADC模拟输入。必须使信号发生器的参考频率彼此锁定,这样有助于限制相位随时间变化而发生的非
[测试测量]
高速<font color='red'>模数转换器</font>的相位不平衡测试
MSP430F249UART
//****************************************************************************** // MSP430x24x Demo - USCI_A0, 9600 UART Echo ISR, DCO SMCLK // // Description: Echo a received character, RX ISR used. Normal mode is LPM0. // USCI_A0 RX interrupt triggers TX Echo. // Baud rate divider with 1MHz = 1MHz/9600 = ~104.2
[单片机]
MSP430在CCS开发环境下的内存分配
用CCS开发环境以及有一年多了,之前写程序,仅仅是停留在写程序的阶段,从来没有想过内存是如何分配的。这次做这个,由于程序的代码量比较大,有40K+,所以在程序整合编译的过程中,遇到了一些之前没有遇到过的问题,在查阅了一些资料之后,解决了这些问题,在这里做一下总结。 首先,我们先抛出遇到的问题。在将程序整合之后,编译报错了,报的错误如下图所示。这个问题是说重定向时,重定向的地址为17位,太大了,超过了16位译码的范围。 这里这个问题我是这样理解的,是这些函数中需要调用一些字符串常量(根据错误定位得出的结论),这时候需要跳转到这个常量所在的地址,但是由于这个地址离当前函数所在的地址“太远了”,所以没有办法跳转到那里执行。
[单片机]
<font color='red'>MSP430</font>在CCS开发环境下的内存分配
根据FAT表研究MSP430内存对齐问题
这两天仔细研究了下FAT32,发现里面涉及到了一个大端、小端对齐有点意思,这里也简单总结一下。先在这里说明一下,MSP430是小端对齐的,还有FAT32文件系统中存放字段的顺序也是小端模式,所以用MSP430来实现FAT32文件系统的话,读取数据的时候不需要做特殊处理~ 下面简单讲一下大端对齐和小端对齐。 我们知道,我们定义变量的时候,在内存中会给该变量分配一个位置,如果该变量是一个char型的变量,那么只会分配给它一个字节的位置,但是如果该变量int型或者long int型呢?这里以16位的C编译器编译结果来看的话,int型占2个字节,long int型占4个字节,那具体是如何分配呢?我们以0x123456
[单片机]
根据FAT表研究<font color='red'>MSP430</font>内存对齐问题
51,AVR,PIC,MSP430,STM32单片机比较
51,AVR,PIC,MSP430,STM32比较:常用型号,特点,优缺点,编译软件,下载软件,下载方式。 传统8051:适合菜鸟入门,容易上手,价格一般(从性价比方面说)。 缺点:解密容易(传统51说:谁让咱出道早呢,大家都研究我,哎!哭......)一般功能也有,, 但AD、eeprom等功能要靠扩展,增加硬件和软件负担。 IDE环境推荐 keil。编程器自己自制ISP下载线就行,好做,成本5元左右。 8051:MCS-51系列 INTEL公司 8031:无ROM 8051:一次性掩膜ROM 8751:多次写EPROM stc 51系列:(增强型51单片机)价格便宜(从性价比方面说),功能多,
[单片机]
MSP430G2553学习笔记 DAY2 中断学习及初始化设置
IO中断的使用 1.寄存器 PxIE IO中断使能寄存器 PxIES 中断触发边沿选择。0上升沿,1下降沿 PxIFG 中断标志位寄存器。事件发生后被置1,响应后需要手动置0 寄存器的使用方法与day1相同,不再赘述 2.中断函数的写法 #pragma vector=PORT1_VECTOT; //#pragma为系统编译指令;vector=后加中断向量地址的宏定义,如定时器TIMER0_A1_VECTOR; __interrupt void PORT1(void) //__interrupt中断服务关键字(前面是两道下划线);PORT1为函数名,可自定义 { //用户代码 } 3.按键通过中断控制LED 根据按键S2的
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多往期活动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved