搜索

374

主题

432

帖子

1524

积分

金牌会员

Rank: 6Rank: 6

积分
1524
发表于 2020-9-30 09:07:21 133 浏览 0 回复

MT6885/MT6785/MT6883/MT6768 如何配置AUXADC检测Battery ID或检测其...

如何配置AUXADC检测Battery ID或检测其他sensor,如何读取AUXIN通道的值?

[SOLUTION]

1. PMIC 侧 AUXADC 参考如下:

bat = pmic_get_auxadc_value(AUXADC_LIST_ISENSE);


2. AP 侧 AUXADC 参考如下:
(1). 在 dtsi中配置 channel(示例是使用channel 0)
  1.      &bat_gm30 {
  2.                     compatible = "mediatek,bat_gm30";
  3.             +      io-channels = <&auxadc 0>;
  4.             +      io-channel-names = "batteryID-channel";
  5.                     DIFFERENCE_FULLOCV_ITH = <(200)>;
复制代码
  添加io-channels = <&auxadc 0>;
   添加io-channel-names = "batteryID-channel";

(2). 从battery设备下,通过channel name 找到AUXADC channel
  1.        channel = iio_channel_get(&(battery_dev->dev),"batteryID-channel");
复制代码

(3). 对此channel 进行转换
  1.     ret = iio_read_channel_processed(channel,&auxadc_voltage);
复制代码

(4). 换算成电压值(mv),误差为10 mv
      id_volt = auxadc_voltage * 1500 / 4096;


回复

使用道具 举报

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

本版积分规则


登录或注册
快速回复 返回顶部 返回列表