当前位置: 首页 > news >正文

TPL0401B使用教程

1.前言

前面做程控放大器的时候,有除开AD602,还有一个AD620,性能更好,不过是通过外部电阻来控制放大倍数的,不过要是接滑动变阻器就太不优雅了,而且单片机怎么控制滑动变阻器?(难不成造个机械臂控制?搞笑呢)于是就用上了数字电位器了。这种电位器不是常规的电阻,而是专门用在信号上的电阻,比如射频,你别给它通电流。

而且老实说这种芯片TI给它定位是用在DDR的阻抗匹配的。emmm,好吧,有点大材小用了。

今天下午折腾了一下,控制起来比较简单,但是鉴于网上这个芯片的使用教程就没有。算了,还是写一下弥补一下空白吧。

2.芯片说明

首先我买的是TPL0401B

这个系列总共有3个型号,其中AB与C型号内部的连接方式不一样,AB的I2C地址不一样,这里我就介绍B型了。

我们的电阻就是W对GND或者W对H,都行。不过因为我把H和W拉出来了,所以这次我就以H和W见电阻为例了,大家可以根据需要去接外围电路。

下面我们确定I2C的地址,可以看到B型的地址是0111 110也就是0x3e

3.发送

了解完上述内容后我们就可以开始写程序设置电阻了。

我们先看写入,通信过程比较简单,有点类似EEPROM,从机地址+0x00+数据

那么这个数据和电阻的对应关系是什么呢?TI提供了一张表,总共3页,大家根据需要去翻数据手册即可,大家根据自己的需要选择电阻。Rwl就是W端对地的电阻,Rhw就是H和W端的电阻。确定电阻后我们在看第二列的二进制编码,进而确定我们发送的数据。

4.读取

芯片内部除了提供写入,还可以读取,读取到的数据就是第二列的二进制,我们可以根据读取到的数据反推电阻值。

读取过程也比较简单,和EEPROM类似,从机地址+0x00+从机地址+读取数据

5.测试

这次我测试两个电阻,首先的第55个,也就是0x37

对应电阻就是5.7K

波形如下

实测如下

我们再测试一组7C

也就是0.31K

波形如下

实测如下

6.结语

总的来说,芯片用起来还是比较简单的,但是精度并没有我想象中好,几乎都差一点。难道是10K这个数值比较大?用范围小的芯片会好一点?算了,反正也调试出来了。用的情景也不多,不行串一串,并以并小的电阻,精度可能会更高吧。好了那么还是那句话,有什么问题评论区发出来,我会尽力解答,那么我们下篇文章见。

相关文章:

  • springboot+vue的养老院管理系统
  • 【机器学习】让大模型变得更聪明
  • C#根据数据量自动排版标签的样例
  • 【CPP】栈简介及简化模拟实现
  • C语言学习笔记之结构体(一)
  • Android 车载 Audio 中 有关系统按键无声的问题排查小结
  • qi5uxeel算法分析流程记录libmsec.so
  • 14.微信小程序之地理定位功能
  • OSG学习记录
  • uniapp条件编译
  • object对象列表使用sorted函数按照对象的某个字段排序
  • 运维开发.Kubernetes探针与应用
  • 详细介绍运算符重载函数,清晰明了
  • 使用matplotlib绘制折线条形复合图
  • C语言| 求1到100之间所有能被3整除的数之和
  • HTML5新特性总结
  • IDEA 插件开发入门教程
  • iOS 系统授权开发
  • Java新版本的开发已正式进入轨道,版本号18.3
  • JSONP原理
  • js学习笔记
  • redis学习笔记(三):列表、集合、有序集合
  • Redis在Web项目中的应用与实践
  • RxJS: 简单入门
  • Sass Day-01
  • Vue 重置组件到初始状态
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 复杂数据处理
  • 构建二叉树进行数值数组的去重及优化
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 深度解析利用ES6进行Promise封装总结
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • 微信小程序填坑清单
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 异常机制详解
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • ​学习一下,什么是预包装食品?​
  • (3) cmake编译多个cpp文件
  • (CVPRW,2024)可学习的提示:遥感领域小样本语义分割
  • (vue)el-tabs选中最后一项后更新数据后无法展开
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (二)c52学习之旅-简单了解单片机
  • (算法)求1到1亿间的质数或素数
  • (原創) 如何安裝Linux版本的Quartus II? (SOC) (Quartus II) (Linux) (RedHat) (VirtualBox)
  • (转)VC++中ondraw在什么时候调用的
  • (转)编辑寄语:因为爱心,所以美丽
  • (转)用.Net的File控件上传文件的解决方案
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • .[hudsonL@cock.li].mkp勒索加密数据库完美恢复---惜分飞
  • .describe() python_Python-Win32com-Excel
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .net 8 发布了,试下微软最近强推的MAUI
  • .NET Framework .NET Core与 .NET 的区别
  • .net 程序 换成 java,NET程序员如何转行为J2EE之java基础上(9)
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖