三轴同时测量
不同于普通单轴霍尔开关,TLV493D 可以同时读取 X、Y、Z 三轴磁场值(单位 mT)和芯片温度,适合 3D 位置和方向检测。
TLV493D 3-Axis Magnetic Field Sensor
适用于 Arduino / 3D 位置检测 / 角度测量 / 位移传感项目的三轴霍尔传感器资料页。重点说明 I2C 接线、地址确认、Arduino 示例代码和常见排查方法。
参数来自 Infineon TLV493D-A1B6 公开数据手册和 Infineon 官方 Arduino 库。不同模块引脚顺序可能不同,实际以板子丝印为准。
淘宝 SKU:02525
Overview
TLV493D 是 Infineon(英飞凌)推出的一款小型化三轴霍尔效应磁场传感器,可以同时测量 X、Y、Z 三个方向的磁场强度并内置温度传感器。它通过 I2C 与单片机通信,每轴输出 12 位分辨率数据,支持低功耗和超低功耗模式,常用于 3D 位置检测、旋转角度测量、线性位移检测、无接触旋钮、游戏摇杆等应用。
不同于普通单轴霍尔开关,TLV493D 可以同时读取 X、Y、Z 三轴磁场值(单位 mT)和芯片温度,适合 3D 位置和方向检测。
模块使用 I2C 接口。Arduino UNO/Nano 连接 SDA=A4、SCL=A5,默认 I2C 地址固定为 0x5E(7-bit),不可通过跳线更改。
芯片本身是低压器件,不能直接接 5V。有些模块自带 LDO 稳压,可接 5V,具体以手中模块丝印为准。
Wiring
自绘无水印示意图。基础测试先接 VCC、GND、SDA、SCL 四根线,能扫到 I2C 地址后再跑例程。
| TLV493D 模块 | Arduino UNO / Nano | 说明 |
|---|---|---|
| VCC / VIN | 3.3V | 芯片工作电压 2.7V~3.5V。若模块自带 LDO,可能支持 5V,以丝印为准。 |
| GND | GND | 必须共地。 |
| SDA | A4 / SDA | I2C 数据线。 |
| SCL | A5 / SCL | I2C 时钟线。 |
| INT | 不接 | 可选的中断脚,基础测试先不接。 |
I2C Address
TLV493D 的 I2C 地址是固定的,与 MLX90393(可配置 0x0C~0x0F)不同。注意不要混用芯片型号和库。
| 芯片型号 | I2C 地址(7-bit) | 说明 |
|---|---|---|
| TLV493D-A1B6 | 0x5E | 出厂固定,不可通过跳线更改 |
| MLX90393(对比) | 0x0C / 0x0D / 0x0E / 0x0F | A0/A1 跳线可选,不是同一颗料 |
如果扫不到 I2C 地址,先用 Arduino I2C Scanner 排查接线。TLV493D 固定地址 0x5E,如果 Scanner 扫出其他地址(如 0x0C),说明手里拿的可能是 MLX90393 而非 TLV493D。
Arduino Examples
使用 Infineon TLV493D 官方 Arduino 库,读取三轴磁场数据和温度并通过串口输出。库管理器搜索 TLV493D 安装(Infineon 出品)。
库安装:Arduino IDE → 库管理器,搜索 TLV493D(Infineon Technologies AG),安装 TLV493D 库。
串口:打开串口监视器,波特率设为 115200。
默认地址:TLV493D I2C 地址固定为 0x5E,库内部自动处理地址,无需手动传入。
依赖:需要 Wire 库(Arduino 内置)。部分 Arduino 板可能需要额外安装 I2C 相关依赖,IDE 会自动提示。
/// TLV493D 三轴磁场传感器 Arduino I2C 示例
/// 使用 Infineon TLV493D 官方库,读取 X/Y/Z 磁场和温度并通过串口输出
/// 接线:VCC→3.3V, GND→GND, SDA→A4, SCL→A5
#include <Wire.h>
#include <tlv493d.h>
TLV493D Tlv493d;
void setup() {
Serial.begin(115200);
while (!Serial) delay(10);
Wire.begin();
// TLV493D I2C 地址固定为 0x5E,库内部自动处理
Tlv493d.begin();
Serial.println("TLV493D ready.");
Serial.println("X(mT)\tY(mT)\tZ(mT)\tTemp(°C)");
}
void loop() {
// 更新传感器数据(库内部通过 I2C 读取全部寄存器)
Tlv493d.updateData();
// 读取三轴磁场值,单位 mT
float x = Tlv493d.getX();
float y = Tlv493d.getY();
float z = Tlv493d.getZ();
// 读取芯片温度,单位 °C
float temp = Tlv493d.getTemp();
Serial.print(x, 3);
Serial.print("\t");
Serial.print(y, 3);
Serial.print("\t");
Serial.print(z, 3);
Serial.print("\t");
Serial.println(temp, 1);
delay(200);
}
FAQ
优先检查供电:芯片工作电压 2.7V~3.5V,确认接的是 3.3V 而非 5V。然后检查 SDA=A4、SCL=A5 接线是否牢固。先用 I2C Scanner 扫一下地址,确认能扫到 0x5E。如果扫描器扫到的是 0x0C,说明模块可能是 MLX90393 而非 TLV493D,两者 I2C 地址不同,库也不通用。
先拿一块小磁铁靠近传感器,看数值有没有变化。如果完全无变化,检查 I2C 通信是否正常。TLV493D 默认出厂有配置,无需额外写寄存器。如果数值抖动大,检查周围是否有电机、继电器、开关电源等强干扰源,可尝试将模块远离干扰源再测试。
可以。TLV493D 输出三轴磁场值(单位 mT),通过数学换算可以得到磁铁的相对位置或角度。但具体算法(如 atan2、三角定位)需要客户自行实现,不同磁铁和安装方式结果不同,这方面属于应用开发而非模块故障。
不能直接把芯片 VCC 接 5V。Arduino UNO/Nano 板上都有 3.3V 输出脚,接那个即可。如果模块自带 LDO 且丝印标注支持 5V 输入,则可以接 5V,但务必以手里模块实际丝印为准。
两者都是 I2C 三轴霍尔磁场传感器,但芯片不同,I2C 地址不同(TLV493D 固定 0x5E vs MLX90393 可配 0x0C~0x0F),Arduino 库也不同(Infineon TLV493D vs Adafruit MLX90393),不能混用。TLV493D 内置温度传感器是额外特性,MLX90393 的分辨率(16bit)比 TLV493D(12bit)更高。
TLV493D 支持 Low-power 和 Ultra-low-power 模式,可通过库函数或直接写寄存器配置。具体请参考 Infineon TLV493D 数据手册中的 Power Mode 章节。基础测试默认使用 Fast Mode,不需要额外配置。
Customer Service
客服快速回复参考,确认常见场景再引导客户看对应资料。
References
只放公开可访问链接和官方库入口,不放客户截图、订单信息或聊天隐私。
Datasheet
包含芯片功能、I2C 接口、寄存器映射、供电范围、封装和电气特性。
打开 Infineon 官网GitHub
Infineon 官方 Arduino 库,包含 I2C 基础读取例程和温度读取,可通过 Arduino IDE 库管理器安装。
查看 GitHubApplication
包含 TLV493D 的典型应用电路、电源模式配置、I2C 通信时序和 3D 位置检测参考设计。
打开应用指南