| 数据读取 |
ADC1取值:0x02,0x01,0x00,24位
ADC2(SDO23=0)或AD3(SDO23=1)的数据:0x05,0x04,0x03,只用了19位
LPF_DATA:0x08,0x07,0x06,只用了19位
RMS取值:0x0d,0x0c,0x0b,0x0a,0x09,40位
PKHMIN:0x10,0x0f,0x0e,24位
PKHMAX:0x13,0x12,0x11,24位
|
| AD1(24位低速高精度) |
|
ENAD1
|
启用AD1
|
0x23:7
|
|
|
AD1RG
|
AD1(参考增益)
|
0x23:4
|
|
|
AD1RHBUF
|
AD1参考正缓冲,电压跟随
|
0x23:3
|
|
|
AD1RLBUF
|
AD1参考负缓冲
|
0x23:2
|
|
|
AD1IPBUF
|
AD1输入正缓冲
|
0x23:1
|
|
|
AD1INBUF
|
AD1输入负缓冲
|
0x23:0
|
|
|
AD1IG
|
AD1输入增益
|
0x25:5,4
|
|
|
AD1OS
|
AD1零点电压,无用
|
0x22:7,6,5
|
|
|
AD1CHOP
|
AD1斩波,调输出偏移的
|
0x22:4,3
|
|
|
AD1OSR
|
AD1采样速度
|
0x22:2,1,0
|
|
|
SFT1
|
AD1的输入预滤波
|
0x33:3,2
|
|
|
SAD1FP
|
AD1滤波器正端输入,FTP
|
0x24:7,6,5,4
|
|
|
SAD1FN
|
AD1滤波器负端输入,FTN
|
0x24:2,1,0
|
|
|
SAD1I
|
AD1的输入信号配置
|
0x33:1,0
|
|
|
SAD1RH
|
AD1参考正端
|
0x28:6,5,4
|
|
|
SAD1RL
|
AD1参考负端
|
0x28:2,1,0
|
|
AD1为30分频,AD1FP,AD1FN 滤波后输入端, AD1IP,AD1IN 原始输入端
|
ADC2/AD3(高速19位) Low Pass Filter RMS Converter Peak
Hold
|
|
ENAD2
|
启用AD2
|
0x26:7
|
|
|
ENCHOPAD2
|
AD2启动斩波,ADC变慢
|
0x26:5
|
|
|
AD2RG
|
AD2参考增益
|
0x26:4
|
|
|
SAD2CLK
|
AD2时钟(AD3共用)
|
0x26:3
|
|
|
AD2OSR
|
AD2采样速度(AD3共用)
|
0x26:2,1,0
|
|
|
AD2IG
|
AD2输入增益
|
0x25:7,6
|
|
|
SAD2IP
|
AD2 输入正端
|
0x27:7,6
|
|
|
SAD2IN
|
AD2 输入负端
|
0x27:5,4
|
|
|
SAD2RH
|
AD2 参考正端
|
0x27:3,2
|
|
|
SAD2RL
|
AD2 参考负端
|
0x27:1,0
|
|
|
ENAD3
|
启用AD3
|
0x34:7
|
|
|
ENCHOPAD3
|
AD3启动斩波
|
0x34:5
|
|
|
AD3RG
|
AD3参考增益
|
0x34:4
|
|
|
SVXI
|
配置RMS的数据来源
|
0x34:3
|
|
|
SDO23
|
1.AD2数据显示来源
2.LPF低通滤波数据来源,
3.RMS真有效值来源
|
0x34:2
|
|
|
SAD3IP
|
AD3输入正端
|
0x35:7,6
|
|
|
SAD3IN
|
AD3输入负端
|
0x35:5,4
|
|
|
AD3IG
|
AD3输入增益
|
0x35:3,2
|
|
|
ENRMS
|
开启真有效值测量
|
0x29:7
|
|
|
ENLPF
|
开启软件低通滤波 只有AD2/AD3
|
0x29:6
|
|
|
LPFBW
|
低通滤波采样速度
|
0x29:5,4,3
|
|
|
ENPKH
|
开启数据保持
|
0x29:2
|
|
|
PKHSEL
|
数据保持数据来源
|
0x29:1,0
|
|
AD3_DATA 寄存器,是因为它的原始数据没有被单独引出来,而是直接作为 RMS 和 LPF 的输入源了。
AD3 通道的采样数据,会直接进入 RMS 模块,做「平方 - 累加 - 平均」的运算,
最终输出 RMS_DATA 寄存器里的 40bit 均方值。
RMS 单元的主输入只能是 AD3
|
| 时钟 |
重置:特定寄存器地址(37h)写入特定数据(60h)。
hy3131内部时钟为4.9152Mhz
|
| 参考电压 |
有三个电压发生器?带隙基准(1.2V), AGND 中点电压(VDD/2), 内部偏置网络(多组偏置电压)
VDS:原始电压抽头,vdsc:校准后的,一共7+18=25个电压位
开启顺序:上电后,需要先开启 ENBIAS(偏置电路), 再开启 ENVS 和 ENREFO,让基准电压稳定后再启动 ADC。
1.5V ACM 只是信号的 “静态中心电压”,解决的是 “信号摆在哪里” 的问题。
ENBIAS/BIAS 解决的是 “电路本身能不能正常放大信号、能不能工作” 的问题。
上电顺序必须先开 ENBIAS:
上电后,必须先把 ENBIAS 置 1,让偏置电路稳定下来,再开启 ADC、运放等模块。 如果没开偏置就启动 ADC,电路是无法正常工作的,读出来的数据会完全乱掉。
它是所有模拟模块的总开关:
不仅是 ADC,运放、比较器等所有模拟电路都依赖它提供的偏置电流, 所以 ENBIAS 也是整个模拟部分的 “总电源开关”
|
| 频率测量 |
CNT Pin:数字输入脚,用来把外部信号送进芯片里的 ** 频率计数器
CMP Pin:数字输出脚,用来把芯片内部的比较器结果 CMPO 输出到外部
再比如你想把超量程信号引出来给外部 MCU 用
1个频率计数器
CTA:0x1d,0x1c,0x1b,24位,写入初始计数开始数据
CTB:0x1a,0x19,0x18,24位,记录完整周期数
CTC:0x17,0x16,0x15,24位,记录高脉冲时钟计数
溢出只是中间节点,
真正停止是在:溢出后 + 等 CTB 完整周期结束,
这时候 CTA 的值就是 CTA Final。
(0x1000000 - CTA Initial) + CTA Final
|
| 模式切换 |
|
SFUVR
|
OP3正端输入比较器电压VREF
|
0x31:3,2,1,0
|
|
|
ACC
|
ACV测量频宽补偿
|
0x30:6,5,4,3,2,1,0
|
|
|
SMODE
|
功能切换5
|
0x2F:5
|
|
|
SMODE
|
功能切换4
|
0x2F:4
|
|
|
SMODE
|
功能切换
|
0x2F:3,2,1,0
|
smode<3>为0 ,不受CMPO影响
smode<3>为1 ,受CMPO影响
|
|
SDIO
|
控制PB0与PB8连接
|
0x24:3
|
|
CMPO为比较器的输出结果,
设置 mode 的同时,就已经锁定了该模式下必须使用的 VREF 来源。
SMODE<3> 只是 mode 编码的一位,它不是单独的 “VREF 选择位”。
SMODE 决定测量模式;模式决定 VREF 来源。不是 SMODE 单独控制 VREF。
你只配置 SMODE,不需要另外配 VREF,因为 VREF 已经被模式映射好了,
先定 SMODE:选择测量模式,这会决定哪些开关闭合、哪些信号路径接通。
再定 SFUVR
SMODE[4]0,手动控制,1自动控制
AGNDP<9>=AGND+K2×(REFO−AGND)
OP3是一个恒流/恒压源,SVSO1为恒压,SVSO2为恒流,恒压内部参考电压提供 ,
恒流为内部电压与外部分压电阻实现
运放组成的恒压恒流源,内部分压网络这个好
|
| 比较器 |
|
OP1CHOP
|
OP1斩波时钟(Chopper Clock)
|
0x33:7,6
|
做高精度直流测量(比如小电压、小电阻档):
推荐选 01(1kHz)或 10(2kHz),开启斩波模式,能大幅降低失调和噪声。
做交流信号放大或不需要斩波时:
可以选 00 或 11,把时钟固定在 0 或 1,关闭斩波功能
|
|
ENOP2
|
启动OP2
|
0x32:7
|
|
|
SOP2P
|
OP2正端输入
|
0x32:6,5,4
|
|
|
ENOP1
|
启动OP1运放1
|
0x32:3
|
|
|
SOP1P
|
OP1正端输入
|
0x32:2,1,0
|
|
|
OPS<2>
|
运放2,负端输入
|
0x25:1
|
|
|
OPS<1>
|
运放1,负端输入
|
0x25:0
|
|
|
SCMPRH
|
CMPH 高端比较器负端输入
|
0x21:7,6,5,4
|
|
|
SCMPRL
|
CMPL 低端比较器负端输入
|
0x21:3,2,1,0
|
|
|
SCMPI
|
比较器负端输入OPXO
|
0x20:7,6,5
|
|
|
ENCMP
|
启动比较器
|
0x20:4
|
|
|
ACPO
|
只读数据
|
0x14:6
|
比较器经过latch的输出
|
|
CMPHO
|
只读数据
|
0x14:5
|
ACPO经过buffer的输出
|
|
CMPLO
|
只读数据
|
0x14:4
|
比较器的输出
|
3 个独立运放(OP1 和 OP2,op3) OP1:一般用于电阻档 / 二极管档的恒流源,OP2:一般用于交流信号 / 电流采样放大
有3个运放,2个比较器,Latch 锁存器,比较器用于控制上限,下限,Buffer为缓冲器
|
| 中断 |
在 CS 为高时,DO 就是专门用来输出中断信号的。读完重置中断
|
|
笔记
|
芯片的ACM2,和 REFO引脚,FTP,FTN是用来外接电容的
原来hy3131是纯电路啊,没有cpu啊
|