OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 32102|回复: 71

凌力尔特的LTC2943电池电量电压测试芯片有用过的吗

[复制链接]

2

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2016-7-19
在线时间
18 小时
发表于 2016-8-23 11:43:53 | 显示全部楼层 |阅读模式
30金钱
最近要用凌力尔特的LTC2943芯片测量多节电池的电压.
目前只找到了官网的Arduino版本的DEMO,地址在这: http://www.linear.com.cn/product/LTC2943#code  

请问有人有用STM32F103系列的芯片做过?求相关例程或者资料,全鹰文的手册实在是头痛。。。。

最佳答案

查看完整内容[请看2#楼]

我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-RTU 通信 你直接用串口助手发送命令 01 02 00 00 00 10 79 C6 就可以了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

41

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
366
金钱
366
注册时间
2017-4-11
在线时间
33 小时
发表于 2016-8-23 11:43:54 | 显示全部楼层
我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-RTU 通信 你直接用串口助手发送命令 01 02 00 00 00 10 79 C6 就可以了。

v1.3.1_20180404.zip

8.05 MB, 下载次数: 13616

回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2016-8-24 21:42:57 | 显示全部楼层
没试过,帮顶
回复

使用道具 举报

0

主题

14

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
328
金钱
328
注册时间
2016-4-7
在线时间
96 小时
发表于 2016-9-3 09:41:50 | 显示全部楼层
同样头疼中,,,,
回复

使用道具 举报

2

主题

6

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2017-2-8
在线时间
7 小时
发表于 2017-3-6 16:49:39 | 显示全部楼层
头疼,f103硬件iic弄死都整不对
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2017-3-6 18:10:54 | 显示全部楼层
菜鸟野 发表于 2017-3-6 16:49
头疼,f103硬件iic弄死都整不对

硬件IIC就一蛋疼玩意,你这是自己找苦吃。。。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

13

主题

65

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
403
金钱
403
注册时间
2016-2-2
在线时间
66 小时
发表于 2017-3-20 10:53:52 | 显示全部楼层
楼主,解决了吗,我用的模拟IIC还是头痛
回复

使用道具 举报

26

主题

193

帖子

8

精华

金牌会员

Rank: 6Rank: 6

积分
1800
金钱
1800
注册时间
2012-8-23
在线时间
57 小时
发表于 2017-3-20 16:11:53 | 显示全部楼层
可以先用USB转I2C适配器来调试
https://item.taobao.com/item.htm ... amp;id=545506536384
回复

使用道具 举报

0

主题

0

帖子

0

精华

新手入门

积分
1
金钱
1
注册时间
2021-2-23
在线时间
0 小时
发表于 2017-5-4 16:54:21 | 显示全部楼层
void LinearGauge_ReadVolt(void)   //Host reading to LTC2943 Voltage by Register 0x08 and 0x09
{                                  
  u8  LinearGaugeVolt_MSB = 0 , LinearGaugeVolt_LSB = 0;
  IIC_Start();  
        IIC_Send_Byte(0xC8);
        IIC_Wait_Ack();
        IIC_Send_Byte(0x08);
        IIC_Wait_Ack();   
        IIC_Start();                     
        IIC_Send_Byte(0xC9);                             
        IIC_Wait_Ack();         
  LinearGaugeVolt_MSB=IIC_Read_Byte(1);       
  LinearGaugeVolt_LSB=IIC_Read_Byte(0);       
  IIC_Stop();   
       
        LinearVoltData[3] = LinearGaugeVolt_MSB;
        LinearVoltData[4] = LinearGaugeVolt_LSB;
        SendStr(USART1,LinearVoltData);
}
回复

使用道具 举报

0

主题

0

帖子

0

精华

新手入门

积分
1
金钱
1
注册时间
2021-2-23
在线时间
0 小时
发表于 2017-5-4 17:04:22 | 显示全部楼层
void LinearGauge_ReadVolt(void)   //Host reading to LTC2943 Voltage by Register 0x08 and 0x09
{                                  
  u8  LinearGaugeVolt_MSB = 0 , LinearGaugeVolt_LSB = 0;
  IIC_Start();  
        IIC_Send_Byte(0xC8);
        IIC_Wait_Ack();
        IIC_Send_Byte(0x08);
        IIC_Wait_Ack();   
        IIC_Start();                     
        IIC_Send_Byte(0xC9);                             
        IIC_Wait_Ack();         
  LinearGaugeVolt_MSB=IIC_Read_Byte(1);       
  LinearGaugeVolt_LSB=IIC_Read_Byte(0);       
  IIC_Stop();   
       
        LinearVoltData[3] = LinearGaugeVolt_MSB;
        LinearVoltData[4] = LinearGaugeVolt_LSB;
        SendStr(USART1,LinearVoltData);
}
回复

使用道具 举报

1

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
193
金钱
193
注册时间
2017-2-6
在线时间
24 小时
发表于 2017-5-4 17:11:40 | 显示全部楼层
存在即合理+1
回复

使用道具 举报

28

主题

171

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
437
金钱
437
注册时间
2017-2-13
在线时间
110 小时
发表于 2017-7-7 16:44:40 | 显示全部楼层
SteveWu 发表于 2017-5-4 17:04
void LinearGauge_ReadVolt(void)   //Host reading to LTC2943 Voltage by Register 0x08 and 0x09
{                         ...

你好,很感谢你的代码,我的用的是LTC2942器件地址为7bits的0x64,加上以为读写位后也是0XC8,电压寄存器的地址也是0x08,用你的代码应该是可以的,但是我读出来的LinearGaugeVolt_MSB都是0XFF,请问你有遇到吗?
回复

使用道具 举报

3

主题

111

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1085
金钱
1085
注册时间
2015-5-22
在线时间
607 小时
发表于 2017-7-7 16:58:47 | 显示全部楼层
本帖最后由 ADS1993 于 2017-7-7 17:13 编辑
爱奔跑的IT 发表于 2017-7-7 16:44
你好,很感谢你的代码,我的用的是LTC2942器件地址为7bits的0x64,加上以为读写位后也是0XC8,电压寄存器 ...

LTC2943_WriteByte(0x01,0xFC);
你要先根据你的需求 设置  0x01寄存器中的 内容
捕获.PNG
特别是
B[7:6] ADC Mode    这个是 模式选择
默认是 不工作的   [00] Sleep

说明书 说的很详细
最好先确认 初始化 是否成功,先读取  0x01 里面的数值 看看 是不是 默认值  
回复

使用道具 举报

28

主题

171

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
437
金钱
437
注册时间
2017-2-13
在线时间
110 小时
发表于 2017-7-10 08:56:41 | 显示全部楼层
ADS1993 发表于 2017-7-7 16:58
LTC2943_WriteByte(0x01,0xFC);
你要先根据你的需求 设置  0x01寄存器中的 内容

你好,我重新设置了一下没能成功,能否发一下您的核心代码借鉴一下,刚开始搞这块不是很懂,谢谢了,shubaoj@foxmail.com
回复

使用道具 举报

3

主题

111

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1085
金钱
1085
注册时间
2015-5-22
在线时间
607 小时
发表于 2017-7-10 11:34:15 | 显示全部楼层
爱奔跑的IT 发表于 2017-7-10 08:56
你好,我重新设置了一下没能成功,能否发一下您的核心代码借鉴一下,刚开始搞这块不是很懂,谢谢了,

1.首先确定 硬件 连接 没问题
DC1812A-3-SCH.png
2.确定 IIC 通讯 初始化 成功,可以用逻辑分析仪 看一下 时序。
我用的 硬件 IIC
先初始化IIC  然后  设置    0x01;    LTC2943_WriteByte(0x01,0xFC);  
然后
double D_DC_V=0.;
D_DC_V   = GET_LTC2943_voltage();
就可以读取数据了
[mw_shl_code=c,true]/************************************************
函数名称 :GET_LTC2943_mAh
功    能 :返回 电池容量
参    数 :
            resistor  : 外接电阻 阻值 单位欧姆
            prescalar : M 的 分频 设置值
返 回 值 : 浮点数 数值 mAh
作    者 :
*************************************************/
float GET_LTC2943_mAh(float resistor, uint16_t prescalar)
// The function converts the 16-bit RAW adc_code to mAh
{
  uint8_t adc_code_M;
  uint8_t adc_code_L;
  uint16_t adc_code;

  float mAh_charge;
  LTC2943_ReadByte(LTC2943_ACCUM_CHARGE_MSB_REG, &adc_code_M);
  LTC2943_ReadByte(LTC2943_ACCUM_CHARGE_LSB_REG, &adc_code_L);
  adc_code  = (((adc_code_M << 8) & 0xFF00)) + ((adc_code_L)&(0X00FF));

  mAh_charge = 1000*(float)(adc_code*LTC2943_CHARGE_lsb*prescalar*50E-3)/(resistor*4096);
  return(mAh_charge);
}
/************************************************
函数名称 : LTC2943_code_to_voltage
功    能 : 返回 电池 电压
参    数 :
返 回 值 : 浮点数 数值  V
作    者 :
*************************************************/
double GET_LTC2943_voltage(void)
// The function converts the 16-bit RAW adc_code to Volts
{
  uint8_t adc_code_M;
  uint8_t adc_code_L;
  uint16_t adc_code;
  double voltage;

  LTC2943_ReadByte(LTC2943_VOLTAGE_MSB_REG , &adc_code_M);
  LTC2943_ReadByte(LTC2943_VOLTAGE_LSB_REG , &adc_code_L);
  adc_code  = (((adc_code_M << 8) & 0xFF00)) + ((adc_code_L)&(0X00FF));

  voltage = ((double)adc_code/(65535))*LTC2943_FULLSCALE_VOLTAGE;

  return(voltage);
}

/************************************************
函数名称 :GET_LTC2943_current
功    能 :返回 当前 电流值
参    数 :
           resistor  : 外接电阻 阻值 单位欧姆
返 回 值 :
作    者 :
*************************************************/
float GET_LTC2943_current(float resistor)
// The function converts the 16-bit RAW adc_code to Amperes
{
  uint8_t adc_code_M;
  uint8_t adc_code_L;
  uint16_t adc_code;
  float current;

  LTC2943_ReadByte(LTC2943_CURRENT_MSB_REG , &adc_code_M);
  LTC2943_ReadByte(LTC2943_CURRENT_LSB_REG , &adc_code_L);
  adc_code  = (((adc_code_M << 8) & 0xFF00)) + ((adc_code_L)&(0X00FF));

  current = (((float)adc_code-32767)/(32767))*((float)(LTC2943_FULLSCALE_CURRENT)/resistor);
  return(current);
}

/************************************************
函数名称 :GET_LTC2943kelvin_temperature
功    能 :返回 当前温度值
参    数 :
返 回 值 :浮点数 数值   K
作    者 :
*************************************************/
float GET_LTC2943kelvin_temperature(void)
// The function converts the 16-bit RAW adc_code to Kelvin
{
  uint8_t adc_code_M;
  uint8_t adc_code_L;
  uint16_t adc_code;
  float temperature;

  LTC2943_ReadByte(LTC2943_TEMPERATURE_MSB_REG   , &adc_code_M);
  LTC2943_ReadByte(LTC2943_TEMPERATURE_LSB_REG   , &adc_code_L);
  adc_code  = (((adc_code_M << 8) & 0xFF00)) + ((adc_code_L)&(0X00FF));


  temperature = adc_code*((float)(LTC2943_FULLSCALE_TEMPERATURE)/65535);
  return(temperature);
}
/************************************************
函数名称 :GET_LTC2943_temperature
功    能 :返回 当前温度值
参    数 :
返 回 值 :浮点数 数值   ℃
作    者 :
*************************************************/
float GET_LTC2943_temperature(void)
// The function converts the 16-bit RAW adc_code to Celcius
{
  uint8_t adc_code_M;
  uint8_t adc_code_L;
  uint16_t adc_code;
  float temperature;

  LTC2943_ReadByte(LTC2943_TEMPERATURE_MSB_REG   , &adc_code_M);
  LTC2943_ReadByte(LTC2943_TEMPERATURE_LSB_REG   , &adc_code_L);
  adc_code  = (((adc_code_M << 8) & 0xFF00)) + ((adc_code_L)&(0X00FF));

  temperature = (adc_code*((float)(LTC2943_FULLSCALE_TEMPERATURE/65535))) - 273.15;

  return(temperature);
}
[/mw_shl_code]
  


回复

使用道具 举报

28

主题

171

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
437
金钱
437
注册时间
2017-2-13
在线时间
110 小时
发表于 2017-7-22 14:39:37 | 显示全部楼层
本帖最后由 爱奔跑的IT 于 2017-7-22 16:03 编辑
ADS1993 发表于 2017-7-10 11:34
1.首先确定 硬件 连接 没问题

2.确定 IIC 通讯 初始化 成功,可以用逻辑分析仪 看一下 时序。

你好,前段时间忙其他的去了,读取寄存器的值全是0xff,波形也不是很正确,不知道读取的这个波形代表什么问题,波形如下:
1、读状态寄存器A 的值
[mw_shl_code=c,true]//读状态寄存器
void LinearGauge_ReadSTA(void)   
{     
  u8 LinearGaugeVolt_LSB = 0;                           
  IIC_Start();  
  IIC_Send_Byte(0xc8);
  IIC_Wait_Ack();
  IIC_Send_Byte(0x00);
  IIC_Wait_Ack();  
        IIC_Start();         
  IIC_Send_Byte(0xc9);                             
  IIC_Wait_Ack();              
  LinearGaugeVolt_LSB=IIC_Read_Byte(0);      
  IIC_Stop();   
}[/mw_shl_code]
                     

发送0xc8地址

发送0xc8地址

发送寄存器地址0x00

发送寄存器地址0x00

发送读命令0xc9

发送读命令0xc9

读取寄存器值

读取寄存器值
回复

使用道具 举报

0

主题

7

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2016-5-27
在线时间
55 小时
发表于 2017-9-26 20:22:45 | 显示全部楼层
我用的是LTC2944  地址也是0x64。发送0xc8,为何无应答?有知道问题出在哪里的吗?
回复

使用道具 举报

0

主题

7

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2016-5-27
在线时间
55 小时
发表于 2017-9-26 20:34:19 | 显示全部楼层
本帖最后由 翠绿的翠鸟 于 2017-9-27 21:07 编辑
爱奔跑的IT 发表于 2017-7-7 16:44
你好,很感谢你的代码,我的用的是LTC2942器件地址为7bits的0x64,加上以为读写位后也是0XC8,电压寄存器 ...

我的也是FF。而且无应答。你的呢有应答吗?——无应答是IIC驱动的问题。解决了。2017-9-27 21:08:16。
回复

使用道具 举报

28

主题

171

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
437
金钱
437
注册时间
2017-2-13
在线时间
110 小时
发表于 2017-10-9 14:55:13 | 显示全部楼层
翠绿的翠鸟 发表于 2017-9-26 20:34
我的也是FF。而且无应答。你的呢有应答吗?——无应答是IIC驱动的问题。解决了。2017-9-27 21:08:16。

从机不响应
回复

使用道具 举报

10

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
192
金钱
192
注册时间
2016-9-28
在线时间
40 小时
发表于 2017-10-11 21:07:57 | 显示全部楼层
这款芯片只能测量整个电池组的电压吧,不能测量单节电池的电压
回复

使用道具 举报

7

主题

41

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
366
金钱
366
注册时间
2017-4-11
在线时间
33 小时
发表于 2018-3-7 14:07:54 | 显示全部楼层
翠绿的翠鸟 发表于 2017-9-26 20:34
我的也是FF。而且无应答。你的呢有应答吗?——无应答是IIC驱动的问题。解决了。2017-9-27 21:08:16。

你好。我LTC2944没有驱动成功哦。用的模拟IIC。读任何寄存器,发回来的都是0,不是寄存器默认值
回复

使用道具 举报

7

主题

41

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
366
金钱
366
注册时间
2017-4-11
在线时间
33 小时
发表于 2018-3-7 14:09:39 | 显示全部楼层
翠绿的翠鸟 发表于 2017-9-26 20:34
我的也是FF。而且无应答。你的呢有应答吗?——无应答是IIC驱动的问题。解决了。2017-9-27 21:08:16。

那个芯片要接电池组,才有能去读里面寄存器的默认值是吗,我没有接电池组,读出的值都是0
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2018-4-12
在线时间
2 小时
发表于 2018-4-12 08:34:09 | 显示全部楼层
其木王王子 发表于 2018-3-7 14:09
那个芯片要接电池组,才有能去读里面寄存器的默认值是吗,我没有接电池组,读出的值都是0

你好,请问你驱动成功了LTC2943吗,我驱动成功了,也能读取电流值,但电压一直为0
回复

使用道具 举报

7

主题

41

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
366
金钱
366
注册时间
2017-4-11
在线时间
33 小时
发表于 2018-4-12 10:10:38 | 显示全部楼层
zz2633105 发表于 2018-4-12 08:34
你好,请问你驱动成功了LTC2943吗,我驱动成功了,也能读取电流值,但电压一直为0

我的成功了,现在可以读取电压了。不过我发现了一个问题,修改写入寄存器的值,再立马读取出来,数据是我写入的,没有错,但是当我断电后只是单纯读取刚写入的寄存器的值,发现还是原来默认的值,芯片没能保存我写入的值,
回复

使用道具 举报

7

主题

41

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
366
金钱
366
注册时间
2017-4-11
在线时间
33 小时
发表于 2018-4-12 10:13:25 | 显示全部楼层
zz2633105 发表于 2018-4-12 08:34
你好,请问你驱动成功了LTC2943吗,我驱动成功了,也能读取电流值,但电压一直为0

你读取电流都成功了,电压原理也是一样的呀,怎么会是0 呢,奇怪了哈。
你修改寄存器的值,断电后在读取出来,数值是你写入的吗?芯片能保存吗?
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2018-4-12
在线时间
2 小时
发表于 2018-4-12 11:35:42 | 显示全部楼层
其木王王子 发表于 2018-4-12 10:21
我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-R ...

这个芯片不能断电保存
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2018-4-12
在线时间
2 小时
发表于 2018-4-12 11:42:54 | 显示全部楼层
其木王王子 发表于 2018-4-12 10:21
我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-R ...

不知道怎么回事,我两个字节读取电压,一直是0x7f00,但我单字节读取 电压低8位寄存器,就有值,而高8位一直是0x7f,头大了。
回复

使用道具 举报

7

主题

41

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
366
金钱
366
注册时间
2017-4-11
在线时间
33 小时
发表于 2018-4-12 22:06:41 | 显示全部楼层
zz2633105 发表于 2018-4-12 11:35
这个芯片不能断电保存

不能保存?奇怪?那为什么还有设置上下限值呢?
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2018-4-12
在线时间
2 小时
发表于 2018-4-13 08:25:45 | 显示全部楼层
其木王王子 发表于 2018-4-12 22:06
不能保存?奇怪?那为什么还有设置上下限值呢?

每次上电,必须先设置上下限,才能实现 警报  功能。因为,这个芯片没有内部的flash。
另外,我的程序调通了,谢谢你的帮助
回复

使用道具 举报

1

主题

32

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
399
金钱
399
注册时间
2018-5-1
在线时间
145 小时
发表于 2018-6-3 14:05:59 | 显示全部楼层
SteveWu 发表于 2017-5-4 17:04
**** 作者被禁止或删除 内容自动屏蔽 ****

凌力尔特的LTC2943
回复

使用道具 举报

1

主题

32

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
399
金钱
399
注册时间
2018-5-1
在线时间
145 小时
发表于 2018-6-3 14:12:07 | 显示全部楼层
SteveWu 发表于 2017-5-4 16:54
**** 作者被禁止或删除 内容自动屏蔽 ****

bw1t力尔特的LTC2943
回复

使用道具 举报

7

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
120
金钱
120
注册时间
2018-4-18
在线时间
18 小时
发表于 2019-3-20 21:40:43 | 显示全部楼层
我也是TCL2944,F4开发板,我发的是0xC4,但是我的外设无应答啊。
回复

使用道具 举报

7

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
120
金钱
120
注册时间
2018-4-18
在线时间
18 小时
发表于 2019-3-21 20:34:29 | 显示全部楼层
其木王王子 发表于 2016-8-23 11:43
我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-R ...


我也是TCL2944,F4开发板,我发的是0xC4,但是我的外设无应答啊。

补充内容 (2019-4-3 15:19):
已解决,程序很好,有很大帮助,之前由于未看电路图,所以把芯片烧坏了,要接负载。
回复

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2016-9-5
在线时间
5 小时
发表于 2019-4-2 20:17:38 | 显示全部楼层
其木王王子 发表于 2016-8-23 11:43
我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-R ...

请问一下老哥这个有没有直接测量之后用串口发送的,看了你的程序感觉好懵,感谢指导一下,QQ2441285655
回复

使用道具 举报

1

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2018-12-6
在线时间
26 小时
发表于 2019-4-18 08:50:46 | 显示全部楼层
Edisonchai 发表于 2019-3-21 20:34
我也是TCL2944,F4开发板,我发的是0xC4,但是我的外设无应答啊。

补充内容 (2019-4-3 15:19):

你好,程序调通了吗,是否能借鉴一下 ,非常感谢
回复

使用道具 举报

7

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
120
金钱
120
注册时间
2018-4-18
在线时间
18 小时
发表于 2019-4-18 10:21:42 | 显示全部楼层
尚荷夏紫 发表于 2019-4-18 08:50
你好,程序调通了吗,是否能借鉴一下 ,非常感谢

你好,请问你哪里有问题,或者我怎么把代码给你
回复

使用道具 举报

1

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2018-12-6
在线时间
26 小时
发表于 2019-4-18 17:17:13 | 显示全部楼层
Edisonchai 发表于 2019-4-18 10:21
你好,请问你哪里有问题,或者我怎么把代码给你

1130654361@qq.com,麻烦发这个邮箱就行,谢谢
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
8
金钱
8
注册时间
2019-4-29
在线时间
2 小时
发表于 2019-5-5 10:42:25 | 显示全部楼层
Edisonchai 发表于 2019-4-18 10:21
你好,请问你哪里有问题,或者我怎么把代码给你

你好,方便借鉴一下代码么,我读出的数值是恒定的,感觉有点问题  1492690754@qq.com
回复

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2016-9-5
在线时间
5 小时
发表于 2019-5-13 16:29:13 | 显示全部楼层
其木王王子 发表于 2016-8-23 11:43
我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-R ...

请问一下为什么我读出来的数据一直都是一个值,灭有变化,换一个电池居然还是一个数据,搞得我有点蒙蔽,能不能帮忙解答一下,谢谢
回复

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2016-9-5
在线时间
5 小时
发表于 2019-5-13 16:45:02 | 显示全部楼层
ADS1993 发表于 2017-7-10 11:34
1.首先确定 硬件 连接 没问题

2.确定 IIC 通讯 初始化 成功,可以用逻辑分析仪 看一下 时序。

您好,我在调试的时候出现一个问题,无论测哪一个电池,测出来的数据全部是一样的,搞得我就很蒙蔽,不知道问题出在哪里,
回复

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2016-9-5
在线时间
5 小时
发表于 2019-5-13 16:48:57 | 显示全部楼层
251 发表于 2019-5-13 16:45
您好,我在调试的时候出现一个问题,无论测哪一个电池,测出来的数据全部是一样的,搞得我就很蒙蔽,不知 ...

您好,谢谢您的回答,请问一下您有这个的相关开发经验吗,能不能发给我一下您的代码,2441285655@qq.com
回复

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2016-9-5
在线时间
5 小时
发表于 2019-5-13 16:51:46 | 显示全部楼层
其木王王子 发表于 2018-4-12 10:10
我的成功了,现在可以读取电压了。不过我发现了一个问题,修改写入寄存器的值,再立马读取出来,数据是我 ...

您好,请问一下能够分享一下宁成功的代码吗,2441285655@qq.com
回复

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2016-9-5
在线时间
5 小时
发表于 2019-5-13 16:52:09 | 显示全部楼层
其木王王子 发表于 2018-4-12 10:10
我的成功了,现在可以读取电压了。不过我发现了一个问题,修改写入寄存器的值,再立马读取出来,数据是我 ...

您好,请问一下能够分享一下宁成功的代码吗,2441285655@qq.com
回复

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2016-9-5
在线时间
5 小时
发表于 2019-5-13 17:03:53 | 显示全部楼层
其木王王子 发表于 2016-8-23 11:43
我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-R ...

我用的也是2944,请问一下为什么我的测出来永远都是一个数据,楼主可以帮忙解答一下吗,最好能加一下楼主的联系方式,2441285655@qq.com
回复

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2016-9-5
在线时间
5 小时
发表于 2019-5-23 15:46:45 | 显示全部楼层
zz2633105 发表于 2018-4-13 08:25
每次上电,必须先设置上下限,才能实现 警报  功能。因为,这个芯片没有内部的flash。
另外,我的程序调 ...

您好,看见您说您的程序调通了,请问一下能分享一下您的代码吗,谢谢您。2441285655@qq.com
回复

使用道具 举报

0

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2019-4-29
在线时间
22 小时
发表于 2019-8-18 22:42:41 | 显示全部楼层
想问一下,如何读出电池的电量呢?
发现我写的代码,电池电量一直没有变化。。。
回复

使用道具 举报

0

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2019-4-29
在线时间
22 小时
发表于 2019-8-18 22:46:56 | 显示全部楼层
你好,我想问一下,我按照你的函数float GET_LTC2943_mAh(float resistor, uint16_t prescalar),读出的电量为什么一直没有变化呢?
回复

使用道具 举报

1

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2019-8-6
在线时间
22 小时
发表于 2019-8-29 18:44:03 | 显示全部楼层
其木王王子 发表于 2016-8-23 11:43
我用的 LTC2944, 因为要测量高电压,给你个我的测试代码,功能是用串口助手实时输出外部测试电压。MODBUS-R ...

感谢大佬
回复

使用道具 举报

1

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2019-8-6
在线时间
22 小时
发表于 2019-9-4 14:22:34 | 显示全部楼层
有使用LTC2941的大佬吗?我读出来的数据但是537
回复

使用道具 举报

1

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2019-8-6
在线时间
22 小时
发表于 2019-9-5 18:49:43 | 显示全部楼层
251 发表于 2019-5-23 15:46
您好,看见您说您的程序调通了,请问一下能分享一下您的代码吗,谢谢您。

能给我也发一份吗?最近让这个东西搞的头疼,之前读的都是0xffff改了一下i2c的时序然后读出来的值都是0x8888。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-27 17:08

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表