首页 > 编程语言 >MS5199T芯片解决方案以及驱动程序(国产三路5VADC)

MS5199T芯片解决方案以及驱动程序(国产三路5VADC)

时间:2024-07-12 18:26:51浏览次数:11  
标签:驱动程序 校准 寄存器 满量程 电压 MS5199T 5VADC 输入

一、MS5199T芯片介绍

MS5198T/MS5199T 为适合高精度测量应用的低功耗、低噪
声、三通道差分输入的 16bit/24bit 模数转换器。其内部集成了低
噪声输入缓冲器、低噪声仪表放大器,当增益设置为 64,更新
速率为 4.17Hz 时,均方根噪声为 10nV。 MS5198T/MS5199T 还集
成了低端电源开关、可编程数字输出、burnout 电流和内部振荡
器。其输出数据更新速率为 4.17Hz 到 470Hz。电源电压范围为
2.7V 到 5.25V, MS5198T/MS5199T 采用了 TSSOP16 封装。

芯片引脚图

二、硬件原理图

MS5199T芯片的周边电路很简单,可以用几个电容和电阻搭建而成。原理图如下:
在这里插入图片描述

三、芯片参数

根据芯片说明,AVDD=2.7V到5.25V;DVDD=2.7V到5.25V;GND=0V;REFIN(+)=AVDD;REFIN(-)=0V。除非另外标注,参数为全温度范围。

参 数 额定值 -40 至 125
模拟电源电压范围 -0.3 到+7.0 V
数字电源电压范围 -0.3 到+7.0 V
模拟输入电压范围 -0.3 到 AVDD+0.3 V
参考电压范围 -0.3 到 AVDD+0.3 V
数字输入电压范围 -0.3 到 DVDD+0.3 V
数字输出电压范围 -0.3 到 DVDD+0.3 V
输入端口电流 10 ma
工作温度范围 -40 至 125
储存温度范围 Tstg -60 至 150
焊接温度(10 sec) 260
ESD 电压(HBM) 4000 V

四、时序参数

参数 测试条件/注释 最小值 最大值 单位
t3 SCLK高脉冲宽度 100 ns
t4 SCLK低脉冲宽度 100 ns
读操作
t1 CS下降沿至DOUT/RDY激活时间 0 ns
DVDD = 4.75V to 5.25V 60 ns
DVDD = 2.7V to 3.6V 80 ns
t2 SCLK下降沿至数据有效延迟 0 ns
DVDD = 4.75V to 5.25V 0 60 ns
DVDD = 2.7V to 3.6V 0 ns
t5 CS无效沿后总线撤出时间 10 80 ns
t6 SCLK上升沿至CS无效沿 0 ns
t7 SCLK上升沿至CS无效沿 10 ns
写入操作
t8 CS下降沿至SCLK下降沿建立时间 0 ns
t9 数据有效至SCLK沿建立时间 30 ns
t10 数据有效至SCLK沿保持时间 25 ns
t11 CS上升沿至SCLK沿保持时间 0 ns

在这里插入图片描述

在这里插入图片描述

五、功能概述

MS5198T/MS5199T 为低功耗∑-ΔADC ,内置∑-Δ调制器、输入缓冲器、基准电压源、仪表放大器
和片内数字滤波器,主要用于测量宽动态范围的低频信号,例如压力传感器、电子秤和温度测量
应用中的信号。每个器件都有三个差分输入端,可以被配置为缓冲模式或无缓冲模式。基准电压
采用外部基准电压。
用户能够通过编程设置 MS5198T/MS5199T 的输出速率(fADC)。当更新速率为 16.7Hz 或更低
时, 陷波频率同时为 50Hz 和 60Hz。根据输出更新速率的不同,MS5198T/MS5199T 采样的滤波器
也略有不同 ,以便优化对量化噪声和器件噪声的抑制。当更新速率值在 4.17Hz 至 12.5Hz 范围内
时,采用 Sinc3 滤波器和均值滤波器;当更新速率值在 16.7Hz 至 39Hz 范围内时,器件采用经修正
的 Sinc3 滤波器。当更新速率达到 16.7Hz 时,此滤波器提供 50Hz/60Hz 抑制;当更新速率值在 5O
Hz 至 242 Hz 范围内时,采用 Sinc4 滤波器;当更新速率达到 470Hz 时,器件采用仅有积分功能的
滤波器。

5.1 模拟输入通道

MS5198T/MS5199T 有 3 个差分模拟 输入通道。当器件运行在缓冲模式下时,这些通道将与片内缓
存器相连;而当器件运行在无缓冲模式下时,通道直接与调制器相连。在缓冲模式下(配置寄存器中
的 BUF 设置为 1),信号输入到缓冲放大器的高阻抗输入级。因此,输入端可耐受较大的源阻抗,适用
于那些与外部阻性传感器直接相连的应用,例如 应变计或电阻式温度检测(RTD)等。
当 BUF =0 时, 器件在无缓冲模式下工作。这将导致较高的模拟输入电流。请注意,该无缓冲输
入路径可为驱动源提供动态的负载。因此,输入引脚上的电阻与电容组合可能会引起增益误 差, 具体
取决于驱动 ADC 输入的信号 源的输出阻抗。下表显示了为防止在 20 位分辨率条件下产生增益误差,
无缓冲模式下外部电阻和电容的容许值。

电容(pF) 电阻(Ω)
50 9K
100 6K
500 1.5K
1000 900
5000 200

MS5198T/MS5199T 在当增益值为 1 或 2 时, 运行在无缓冲模式下。当增益值更高时,缓冲器自动
使能。缓冲模式下,绝对输入电压范围限于 GND + 100 mV 至 AVDD - 100 mV 之间。当增益值达到 4 或更高时, 使能仪表放大器。 当仪表放大器可用时 , 绝对输入电压范围限于 GND + 300 mV 至 AVDD -1.1V 之间。在设定共模电压时 , 用户必须注意上述限制,以便保证电压不超过上述限值,从而避免降低器件的线性性能和噪声性能。
无缓冲模式下, 绝对输入电压的范围在 GND - 30 mV 至 AVDD + 30 mV 之间。

5.2 仪表放大器

MS5198T/MS5199T 增益为 4 或更高时,缓冲器输 出信号将施加于片内仪表放大器的输入端。低噪
声仪表放大器的存在意味着小幅度信号可以在 MS5198T/MS5199T 内被放大,同时仍然保持出色的噪声
性能。利用配置寄存器中的位 G 2 至 G 0,可以将 MS5198T/MS5199T 的增益设置为 1、2、4、8、16 、
32、64 或 128。因此, 当采用 2.5V 基准时, 单极性电压范围为 0mV 至 19.53mV 到 0V 至 2.5V, 而双
极性电压范围为±19.53mV 至±2.5V。当仪表放大器可用时(增益≥4), 共模电压值((AIN (+) + AIN(- ))/2)
不得低于 0.5V。
如果 MS5198T/MS5199T 采用电压值与 AVDD 相等的外 部基准电压源,则在仪表放大器有效的情
况下,为保证能够正常工作, 模拟输入信号的电压不得高于 VREF/gain 的 90%。

5.3 双极性/单极性数据结构

MS5198T/MS5199T 的模拟输入端可接受单极性或双极性输入电压范围。双极性输入范围不代表器
件可以耐受相对于系统 GND 的负电压。AIN(+) 输入端的双极性信号和单极性信号均以 AIN(-)输入端的
电压为基准。

5.4 数据输出编码

当 ADC 配置为单极性工作模式时,输出码为自然(直接)二进制码;零差分输入电压对应的码为
00… 00 , 中间电平电压对应的码为 100…000 , 满量程输入电压对应的码为 111…111。
Code= (2^(N) x AIN x GAIN)/ VREF
当 ADC 配置为双极性工作模式时,输出码为偏移二进制码;负满量程电压对应的码为 000…000,
零差分输入电压对应的码为 100…000 , 正满量程输入电压对应的码为 111…111。任何对应于模拟输入
电压的输出码可表示为:
Code= 2^(N- 1)x [(AIN x GAIN/VREF) +1]
其中:AIN 表示模拟输入电 压; GAIN 表示仪表放大器的配置 (1 至 128 ) ; MS5198T 的 N 值为 16 , MS5199TT 的 N 值为 24。

5.5 Burnout 电流

MS5198T/MS5199T 内置两个 100 nA 恒流发生器:一个用于提供从 AVDD 到 AIN(+) 的电流源, 另
一个用于提供从 AIN(-)到 GND 的电流沉。这些电流切换至选定的模拟输入对。这两个电流或开或关,
取决于配置寄存器中 BO 位。在模拟输入通道上执行测量操作之前 , 可以利用这些电流来确认外部传
感器是否正常工作。接通 burnout 电流后,电流流入外部传感器电路,然后便可在模拟输入通道上测量输入电压。如果测得的电压值为满量程,用户需要确认产生满量程电压的原因。满量程读数意味着
可能存在前端传感器开路,也可能是前端传感器过载,通过满晕程输出表现出来,或者缺少基准电
压,因此,导致数据位至全 1。当输出为全 1 时, 用户需要检查是否存在这三种情况 , 然后做出判
断。如果测得的电压为 0V, 则可能是传感器短路。正常工作时, 应将 0 写入配置寄存器中的 BO 位,
以关闭 burnout 电流。电流源工作在常规绝对输入电压范围内,缓冲器开启。

5.6 参考电压

差分输入的 共模电压范围为 GND 至 AVDD 。基准电压输入是无缓冲式的;因此, 过大的 R-C 源阻
抗会导致增益误差。标称基准电压 REFIN(REFIN(+)- REFIN(- )) 为 2.5 V,但 MS5198T/MS5199T 可以采用
的基准电压的范围为 0.1V 至 AVDD 。如果应用中模拟输入端的传感器的激励电压或激励电流也为器件
提供基准电压,则可以消除激励源中低频噪声的影响,其原因是应用是比率式的。如果在非比率式应
用中采用 MS5198T/MS5199T, 应使用低噪声基准电压源。
另外,基准电压输入能够提供高阻抗、动态负载。由于各基准电压输入的输入阻抗是动态的,因
此这些输入端上的电阻与电容组合可能会导致直流增益误差,具体取决于驱动基准电压输入的信号源
的输出阻抗。

5.7 复位

对 MS5198T/MS5199T 连续写入 32 个 1,可以将器件的电路和串行接口复位。这样做可以将所有
片内寄存器复位为默认 值,同时复位逻辑、数字滤波器和模拟调制器。上电时会 自动执行复位操作。
启动复位操作后 ,用户必须等待 500 µs 才能访问片内寄存器。如果 SCLK 线路上的噪声导致串行接口变为异步状态,则需要执行复位以恢复同步功能。

5.8 AVDD 检测

MS5198T/MS5199T 除 能够转换外部电压以外, 还可以监控 AVDD 引 脚上的电压。当 CH2 至 CH0
位均为 1 时, AVDD 引 脚上的电压在内部衰减 6 倍, 所获得的电压施加于调制器之上, 器件采用 1.20
V 内部基准电压驱动以实现模数转换。 此特性的用处在于可以监控电源电压的波动。

5.9 校准

MS5198T/MS5199T 提供 4 种校准模式。用户可对模式寄存器内的模式位进行编程来选择校准橾
式。校准模式分别为内部零电平校准、内部满量程校准、系统零电平校准和系统满量程校准,执行校
准操作可明显降低因噪声而产生的失调误差和满量程误差。每次转换完成后,需利用 ADC 校准寄存器
对 ADC 转换结果进行调整, 然后, 将调整结果写入数据寄存器。转换结果先减去失调校准系数,然
后乘 以满量程系数。
为启动校准功能,必须将适当的值写入模式寄存器中的 MD2 至 MD0 位。当校准完成后 , 相应校
准寄存器的内容会被更新, 状态寄存器中的 RDY 位被置 1 , DOUT/RDY 引脚变为低电平(如果 CS 低电平),MS5198T/MS5199T 返回至空闲模式。
内部零输入或满量程校准期间,各零输入和满量程输入在内部自动连接至 ADC 输入引脚。然而,
系统校准则要求在启动校准模式之前,将系统零电平电压和系统满量程电压施加于 ADC 。这样能消除
ADC 的外部误差。
从操作上来看, 校准就像 另一次 ADC 转换。如需要执行零电平校准,必须在执行满量程校准之
前执行零电平校准。系统软件应监视状态寄存器中 RDY 位或 DOUT/RDY 引脚,通过一个轮询序列或中
断驱动程序确定校准何时结束。
内部失调校准和系统失调校准均需要花费两个转换周期。由千 ADC 本身能持续消除失调 , 此
时, 无需执行内部失调校准。
执行内部满量程校准,满量程输入电压会自动与此校准选定的模拟输入端相连。当增益为 1 时,
完成校准需要 2 个转换周期。 对于更高增 益, 执行满量程校准需要 4 个转换周期。DOUT/RDY 在校准
启动后变为高电 平,在校准完成后恢复低电平。
校准操作完成后 , ADC 处于空闲模式。 测得的满量程系数保存在所选通道的满量程寄存器中。
当增益为 128 时,不允许执行内部满量程校准,但允许执行系统满量程校准。每次更改一个通道的增
益时,都需要执行满量程校准 ,以便将满量程误差降至最小。
内部满量程校准只能在特定更新速率条件下执行。当增益 为 1、2 和 4 时, 可以在任意更新速率
条件下执行内部满量程校准。但是,对于更高增益,则只能在更新速率小于或 等于 16.7 Hz、33.2 Hz
和 50 Hz 的条件下执行。然而, 满量程误差不因更新速率而改变 , 因此,在某一更新速率条件下执行
的校准对所有更新速率均有效(假设增益或基准电压源保持不变)。
完成系统满量程校准需 要 2 个转换周期, 与增益设置无关。系统满量程校准可以在所有增益和所
有更新速率条件下执行。如需同时执行系统失调校准与系统满量程校准, 应在启动系统满量程校准前
执行系统失调校准。

5.10 数字接口

MS5198T/MS5199T 的可编程功能通过一组片内寄存器控制。数据通过串行接口写入这些寄存器,
该接口还提供对片内寄存器的读取访问。与器件的所有通信必须从对通信寄存器的写操作开始。上电
或复位后,器件等待对其通信寄存器进行写操作。写入该寄存器的数据决定下一个操作是读操作还是
写操作以及该操作发生在哪个寄存器上。因此,对任何寄存器的写入数据均始于对通信寄存器的写操
作,再对所选寄存器的执行写操作。从任何其他寄存器进行的读取操作(选择连续读取模式时除外)
始于对通信寄存器的写操作,再对所选寄存器的执行读取操作。
MS5198T/MS5199T 的串行接口包含四个信号:CS,DIN,SCLK 和 DOUT/RDY。 DIN 线路用于将数
据传输到片内寄

标签:驱动程序,校准,寄存器,满量程,电压,MS5199T,5VADC,输入
From: https://blog.csdn.net/qq_29187987/article/details/140377781

相关文章

  • 在 PowerShell 中,你可以使用一些命令来管理打印机驱动的导入和导出操作。通过这些 Pow
    更高级的PowerShell自动化打印机迁移,可以考虑以下步骤和技术:自动化打印机迁移流程批量导出和导入打印机配置使用PowerShell脚本批量导出和导入多个打印机的配置。可以结合循环和数组来处理多个打印机。powershellCopyCode#批量导出打印机配置$printers=Get-Printe......
  • 关于离线处理 Windows 系统中硬件驱动程序的详细说明:
    关于离线处理Windows系统中硬件驱动程序的详细说明:1.使用DISM离线卸载所有OEM驱动程序DISM(DeploymentImageServicingandManagement)是一个强大的工具,用于管理和准备Windows映像。通过DISM,可以在离线环境中卸载所有OEM驱动程序。打开命令提示符(管理员权限):右键点......
  • NWIFI.SYS 的底层原理主要围绕着操作系统驱动程序模型的实现,确保无线网络适配器与操作
    NWIFI.SYS是一个Windows操作系统中的驱动程序文件,其底层原理涉及操作系统与硬件之间的交互和数据处理。以下是其底层原理的一些关键点:驱动程序功能:NWIFI.SYS主要负责管理和控制无线网络适配器。它通过操作系统提供的驱动程序接口(DriverInterface)与硬件通信,执行一系列操作,......
  • 第6章 设备驱动程序(1)
    目录6.1I/O体系结构6.2访问设备6.2.1设备文件6.2.2字符设备、块设备和其他设备6.2.3ioctl寻址设备6.2.4主从设备号的表示6.2.5注册本专栏文章将有70篇左右,欢迎+关注,查看后续文章。6.1I/O体系结构1.扩展硬件总线的作用:        用于连接CPU和外......
  • [转帖]JDBC 驱动程序类型
    https://www.jianshu.com/p/fce9ac03a250 什么是JDBC驱动说白了JDBC驱动就是一组实现了JDBCAPI接口的Java类的集合,该接口用于与数据库服务器进行交互。例如,使用JDBC驱动程序可以让你打开数据库连接,并通过发送SQL或数据库命令,然后通过Java接收结果。JDK中的......
  • 【操作系统】实验九 设备驱动程序设计
    一、实验目的分析一个典型的块设备RAM-DISK的驱动程序,学习编写设备驱动程序的一般过程。将这个RAM-DISK的程序改造成为U盘的驱动程序,并通过它来使用你的U盘。二、实验内容仔细阅读上一节中radimo的源代码,将radimo驱动程序改写成为一个U盘驱动程序。在检查时,你需要当场独......
  • CLFS驱动程序(clfs.sys)是Windows操作系统中的一个组件,它提供了日志记录和恢复功能,以增
    clfs.sys是Windows操作系统中的一个系统文件,它是CLFS(CommonLogFileSystem)驱动程序的一部分。CLFS是Windows操作系统中用于管理日志文件的文件系统,它提供了日志记录和恢复功能。CLFS驱动程序(clfs.sys)具有以下功能和作用:日志记录:CLFS可以记录系统的操作、事件和错误等信息到......
  • 按键中断驱动程序-异步通知
    在前面的休眠-唤醒、POLL机制中,都是通过休眠等待某一个事件的发生,而程序一旦陷入休眠,就没法再执行其它任务,相当于整个程序卡死了。在很多的场景中,如果发生了某一个事件我们就去处理它,没有发生事件那就可以做其它的事情。这种正常执行程序,当中断发生时才去执行的方式就叫做异步通知......
  • 嵌入式Linux中驱动程序的基本框架
    在“嵌入式Linux中内核模块的基本框架”一文中,已经构建好了内核模块的基本框架结构,现在在该框架的基础上进一步扩展,就可以形成Linux下的字符型设备驱动基本框架,下面就详细进行讨论。在Linux系统中,设备驱动共分为三种类型,即字符型、块型和网络型。字符型设备以字节为最小操作单位,......
  • Centos7系统禁用Nouveau内核驱动程序【笔记】
    在CentOS系统中,Nouveau是开源的NVIDIA显卡驱动程序,但它与NVIDIA的官方驱动程序NVIDIAProprietaryDriver存在兼容性问题。如果你想要禁用Nouveau并使用NVIDIA官方驱动,可以按照以下步骤操作:1、创建一个黑名单文件以禁用Nouveau驱动。echo'blacklistnouveau'|sudote......