| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- /*--------------------------------------------------------------------------------------
- * @file ADS1110Setup.c
- * @author ZhangJing
- * @version base on stm32f0x
- * @date 2015.09.11
- * @brief ADS1110驱动
- ---------------------------------------------------------------------------------------*/
- #include "stm32f10x_gpio.h"
- #include "ADS1110Setup.h"
- #include "IIC2Setup.h"
- #include "ADS1110ASetup.h"
- /*************************************************************************************
- * Function: ADS1110Config
- * Object: 配置ADS1110
- * 输入: 无
- * 输出: 无
- * 备注: 1、uint8_t tempState = 0;返回状态
- **************************************************************************************/
- void ADS1110AConfig(void)
- {
- uint8_t tempState = 0;
- TWI2_START();
- tempState = TWI2_SendByte(ADS1110_WR_ADDRESS);
- if( 1 != tempState )
- {
- //发送终止IIC标志
- TWI2_STOP();
- return;
- }
- TWI2_SendNACK();
- tempState = TWI2_SendByte(ADS1110_CONFIG_REG);
- if( 1 != tempState )
- {
- //发送终止IIC标志
- TWI2_STOP();
- return;
- }
- TWI2_SendNACK();
- TWI2_STOP();
- }
- /*************************************************************************************
- * Function: RD_ADS
- * Object: 读ADS1110数据
- * 输入: 无
- * 输出: 转换后数据
- * 备注: 1、u16 W_B1byte_high, W_B1byte_low, W_B1_word;读取数据高低字节并由W_B1_word变量做组合计算
- **************************************************************************************/
- uint16_t RD2_ADS(void)
- {
- // u8 temp;
- u16 W_B1byte_high, W_B1byte_low, W_B1_word;
- TWI2_START();
- TWI2_SendByte(ADS1110_RD_ADDRESS);//0x90
- TWI2_SendNACK();
- //
- // if(!temp)
- // {
- W_B1byte_high /*= TMR_H*/ = TWI2_ReceiveByte();
- TWI2_SendACK();
- W_B1byte_low /*= TMR_L*/ = TWI2_ReceiveByte();
- TWI2_SendACK();
- W_B1_word = TWI2_ReceiveByte();
- TWI2_STOP();
- W_B1_word = (W_B1byte_high << 8)+ W_B1byte_low;
- // if (W_B1_word > 0x7fff)
- // W_B1_word = 0;
- return W_B1_word;
- // }
- // else
- // return 0x0000;
- }
|