芯片开发(1)---BQ76905---底层参数配置

news2024/9/22 2:33:50

主要开发思路:AFE主要是采集、保护功能、均衡,所以要逐一去配置芯片的寄存器

采集、均衡功能主要是配置引脚

保护功能主要是参数寄存器配置,至于如何使用命令修改寄存器参数该系列芯片提供了子命令直接命令两种方式

BQ76905的管脚配置

I、参数配置

一、电压采集串数配置

BQ76952电压采集串数配置

二、进入/退出 配置模式

三、配置AFE功能引脚

根据硬件原理图的AFE引脚使用情况

使用SRN、SRP 、TS/WAKE 、 DSG 、CHG、REGOUT几个管脚,明确每个引脚的具体作用

明确引脚功能:SRN、SRP--【电流采集】 TS/WAKE-【唤醒信号】 DSG-【控制放电MOS】 CHG-【控制充电MOS】 REGOUT-【输出3.3V】

下面查看芯片手册

1.配置REGPUT引脚

2.配置WAKE引脚

正常工作状态未使用,在进入ShutDown模式的时候会成为唤醒脚

该引脚无需配置

3.配置DCHG\DDGS管脚

BQ76905同时支持系列和并行FET配置。当CHG和DSG FET串联时,当另一个FET被启用时,电流可以流过一个被禁用的FET的主体二极管。在此配置中,当检测到超过阈值的电流流过该FET时,本体二极管保护被用来打开被禁用的FET。当系统有单独的DSG和CHG路径以及并行FET时,不需要主体二极管保护,可以通过清除设置:配置: FET选项[SFET]配置位来禁用。

根据芯片手册判断这两个管脚功能是固定的,不需要特殊配置寄存器

四、配置AFE的采集寄存器

采集分为电压电流采集,对于采集到的数据:1.是否需要倍率 2.采集多少次 3.采集计算频率 4.是否有偏移

1.涉及的寄存器如下:

BQ76905电压、电流计算公式

这里我查看芯片手册发现,以下寄存器默认值均为0,对比上面的计算公式以及BQ76952芯片手册判断

默认0使用的时出厂校准值,而非真正的0值

2.采集倍率参数配置

BQ76905的芯片手册未找到该参数

3.配置CC1_GAIN

BQ76905的芯片手册未找到该参数的特殊设置

4.配置CC3采集次数

BQ76905的芯片手册未找到相似参数的特殊设

五、配置过压相关参数

1.配置过压保护阈值

2.配置过压保护触发延时

这里的单位需要查看ADC配置的扫描周期

3.配置过压保护恢复值

这里考虑电压回差太小,暂时设置为AFE级别的过压不自动恢复

六、配置欠压相关参数

1.配置欠压保护阈值

2.配置欠压保护触发延时

3.配置欠压保护恢复值

这里考虑电压回差太小,暂时设置为AFE级别的欠压不自动恢复

七、配置充电过流相关参数

暂不配置

原因如下:充电过流可控

1.配置充电过流保护值OCC

2.配置充电过流保护延时

3.配置充电过流保护恢复值

八、配置放电过流相关参数

1.配置放电过流一级/二级保护值

2.配置放电过流一级/二级保护延时

九、配置过流故障恢复时间

这里BQ76905是统一一个基于时间的恢复机制;而BQ76952是有恢复时间和阈值的判断

十、配置过流锁死次数

十一、配置电压采集位

十二、配置SCD相关参数

1.配置SCD触发阈值

此处短路保护阈值根据分流器阻值计算:欧姆定律

2.配置SCD触发延时

短路参数一般配置最短,快速保护

十三、配置FET相关参数

1.配置FET Options寄存器

在sleep模式CHG管脚默认断开 可通过命令控制FET引脚  

2.配置Body Diode Threshold体二极管参数阀值

3.配置Enabled Protections A 参数

4.配置Enabled Protections B 参数

5.配置 CHG FET Protections A

6.配置 DGS FET Protections A

十四、配置均衡相关参数

查看芯片手册关于Balance的相关说明

1.均衡和电压测量是通过配置间隔进行的,具体占比按照CB_LOOP_SLOW设置而定

2.发送均衡命令时芯片也会完成当前的ADSCAN再进行均衡

3.CUV或COV警报,则设备将立即禁用平衡

4.当发送0x0083 CB_ACTIVE_CELLS()子命令时,可以读回预期要平衡的单元格,即使平衡尚未开始(它从正在进行的ADSCAN的结尾开始)。这允许主机确认所发送的命令已被设备接受

5.为保证电压测量准确性,电压测量和均衡开启使用了可设置延时的方式Settings:Cell Balancing:Balancing Configuration[CBDLY2:0] from zero to 64 ms

芯片手册说明---在控制均衡保护电压,均衡路数,以及均衡开启压差需要MCU来控制,AFE不具备这方面的功能

BQ76952和BQ76905对比

1.配置Balancing Configuration

配置是否可以命令开启均衡以及均衡时间

2.配置Min Temp Threshold

看项目需求是否要开启

3.配置Max Temp Threshold

看项目需求是否要开启

4.配置Max Internal Temp

看项目需求是否要开启

相邻的和非相邻的电芯都可以被平衡。使用主机发送的0x0083 CB_ACTIVE_CELLS()子命令来控制平衡。当使用此子命令启动平衡时,设备将启动一个计时器,并开始平衡指定的单元格长达20秒。如果发出了新的平衡子命令,定时器将被重置。这是一种预防措施,如果主机处理器启动了平衡,但随后停止了与BQ76905的通信,因此平衡不会无限期地继续。主机可以将0x00写入子命令,以禁用平衡。当读取此子命令时,它将报告正在主动平衡的单元格的位掩码

十五、采集断线检测配置

1.配置正常模式中的断线检测

ADSCAN回路的时间,范围从大约5.5 ms到大约88 ms page20

这里默认配置为最大值,约为1.4S

2.配置休眠时的断线检测

看项目需求是否要开启

十六、看门狗复位时间设置

备注:开门狗使能已经在Protect B功能中开启

十八、失能SLEEP功能

这里是防止AFE芯片在正常运行的时候进入到SLEEP模式

不退出sleep模式,DCHG会被断开,也可能在操作AFE时进入休眠,AFE的数据上报就会更新缓慢

十九、重新RESET芯片

先要wake再RESET

二十、配置芯片温度保护参数



二十三、疑问解答:

1.ADSCAN intervals单位解释

2.userA单位解释

我的理解

1.Current:Curr Gain寄存器默认是0,无电流增益,在 -32768 mA and +32767 mA.

2.Current:Curr Gain这个寄存器我写10,电流范围扩大, 在-327.68 A and +327.67 A

3.Current:Curr Gain这个寄存器我写100,电流范围扩大, 在-3276.8 A and +3276.7 A

如果是,假如我需要的电流范围是-327.68 A and +327.67 A,那么我是不是需要将所有的电流增益寄存器写10【此处待验证】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2153917.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ubuntu 执行定时任务crontab -e 无法输入的问题

界面显示 GNU nano 4.8 /tmp/crontab.l0A1HJ/crontab # Edit this file to introduce tasks to be run by cron. # # Each task to run has to be defined t…

全国职业院校技能大赛(大数据赛项)-平台搭建hive笔记

在大数据时代,数据量呈爆炸性增长,传统的数据处理工具已难以满足需求。Hive作为一个开源的数据仓库工具,能够处理大规模数据集,提供了强大的数据查询和分析能力,是大数据学习中的关键工具。在全国职业院校技能大赛&…

【图像检索】基于Gabor特征的图像检索,matlab实现

博主简介:matlab图像代码项目合作(扣扣:3249726188) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 本次案例是基于Gabor特征的图像检索,用matlab实现。 一、案例背景和算法介绍 这次博…

GPT-4o在matlab编程中性能较好,与智谱清言相比

边标签由矩阵给出 s [1 2 3 3 3 3 4 5 6 7 8 9 9 9 10]; t [7 6 1 5 6 8 2 4 4 3 7 1 6 8 2]; G graph(s,t); plot(G) ------------------- GPT-4o给出的代码可用, clc;clear; % 定义边的起点和终点 s [1 2 3 3 3 3 4 5 6 7 8 9 9 9 10]; t [7 6 1 5 6 8 2 …

您可能一直在寻找的 10 个非常有用的前端库

文章目录 前言正文1.radash2.dayjs3.driver4.formkit/drag-and-drop5.logicflow6.ProgressBar7.tesseract8.zxcvbn9.sunshine-track10.lottie 前言 前端开发中,总有一些重复性的工作让我们疲于奔命。为了提高开发效率,我们精心挑选了10个功能强大、易于…

【油猴脚本】00010 案例 Tampermonkey油猴脚本,动态渲染表格-添加提示信息框,HTML+Css+JavaScript编写

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 【油…

Ubuntu 22.04 源码下载、编译

Kernel/BuildYourOwnKernel - Ubuntu Wikihttps://wiki.ubuntu.com/Kernel/BuildYourOwnKernel 一、查询当前系统内核版本 rootubuntu22:~# uname -r 5.15.0-118-generic 二、查询本地软件包数据库中的内核源码信息 rootubuntu22:~# apt search linux-source Sorting... Do…

Unity实现原始的发射子弹效果

1 创建一个炮塔,按下空格-坦克会发射一个小球2.小球会掉在地上滚下来-添加组件3 间隔几秒后自动销毁程序逻辑:1.在场景中创建一个炮塔\子弹拿到代码里的变量里程序逻辑: 2.if语句检测用户有没有按下空格程序逻辑: 3.在炮塔坐标的位…

5. 数字证书与公钥基础设施

5. 数字证书与公钥基础设施 (1) PKI 的定义、组成及应用 PKI(Public Key Infrastructure,公钥基础设施) 是一个使用公钥技术来提供安全服务的框架。它定义了如何管理和维护公钥,以及如何通过证书来验证公钥的真实性。PKI的核心组成部分包括: 证书颁发机构(CA, Certifica…

(done) 声音信号处理基础知识(4) (Understanding Audio Signals for ML)

来源:https://www.youtube.com/watch?vdaB9naGBVv4 模拟信号特点如下 时域连续(x轴) 振幅连续(y轴) 如下是模拟信号的一个例子: 数字信号特点如下: 一个离散值序列 数据点的值域是一系列有限的值 ADC:模拟信号到数字信号的…

Elionix 电子束曝光系统

Elionix 电子束曝光系统 - 上海纳腾仪器有限公司 -

Python包、模块、库辨析

目录 1 模块的基础介绍 2 包的概念解析 3 库的定义与作用 4 区分三者 5 实例 __init__.py addition.py multiplication.py main_scipt 1 模块的基础介绍 模块是 Python 编程的基本组成部分之一,它是单个文件 ,包含 Python 代码,可以定…

GB28181协议接入SVMSPro平台

国标28181协议接入SVMSPro平台 步骤一:海康摄像机28181配置;登录海康摄像机网页进配置选项,左边选网络-高级设置-平台接入-类型选28181 勾选启用,28181协议版本选最新2016 SIP服务器ID:默认20位 34020000002000000001,也可在服务端…

Linux系统网络诊断工具MTR使用方法

我们一般做linux系统服务器测评的时候,基本都会进行网速方面的测试,这方面的脚本工具啥的有很多,其中MTR是Linux平台上一款非常好用的网络诊断工具,集成了traceroute、ping、nslookup的功能,用于诊断网络状态非常有用。…

胤娲科技:谷歌DeepMind祭出蛋白质设计新AI——癌症治疗迎来曙光

在科技的浩瀚星空中,DeepMind的“阿尔法”家族总是能带来令人瞩目的璀璨光芒。这一次,它们再次以惊人的姿态, 将AI的触角深入到了生命的微观世界——蛋白质设计领域,为我们描绘了一幅未来医疗的宏伟蓝图。 想象一下,一…

思通数科开源产品:免费的AI视频监控卫士安装指南

准备运行环境: 确保您的服务器或计算机安装了Ubuntu 18.04 LTS操作系统。 按照产品要求,安装以下软件: - Python 3.9 - Java JDK 1.8 - MySQL 5.5 - Redis 2.7 - Elasticsearch 8.14 - FFmpeg 4.1.1 - RabbitMQ 3.13.2 - Minio (…

网络丢包定位记录(三)

网络IP层丢包 接口ip地址配置丢包 1. 本机服务不通,检查lo接口有没有配置地址是127.0.0.1; 2 .本机接收失败, 查看local路由表:ip r show table local|grep 子机ip地址;这种丢包一般会出现在多IP场景,子…

robomimic应用教程(一)——模型训练

Robomimic使用集中式配置系统来指定所有级别的(超)参数 本文介绍了配置(推荐)和启动训练运行的两种方法 目录 一、使用config json(推荐) 二、在代码中构造一个配置对象 三、查看运行结果 1. 实验结果会存在一个固定文件夹中…

S-Clustr-Simple 飞机大战:骇入现实的建筑灯光游戏

项目地址:https://github.com/MartinxMax/S-Clustr/releases Video https://www.youtube.com/watch?vr3JIZY1olro 飞机大战 这是一个影子集群的游戏插件,可以将游戏画面映射到现实的设备,允许恶意控制来完成游戏。亦或者设备部署在某建筑物中,来控制…

超实用的 Typora 插件

🌼📚Typora 是一款高效、易用且跨平台的 Markdown 编辑器和阅读器,其具有小巧、快速、实时预览等特点,非常受大家的欢迎。今天给大家推荐一款如虎添翼的 Typora 插件(Typora Plugin),它可以通过插件增强 Typora 的功能…