
USB串口版i2c-tools调试器:UK524-EKO
简介
USB串口版本的Linux i2c tools兼容调试器,实现了i2cdetect、i2cdump、i2cget、i2cset、i2ctransfer功能,轻松Win/Mac/Linux跨平台调试。
简介:USB串口版本的Linux i2c tools兼容调试器,实现了i2cdetect、i2cdump、i2cget、i2cset、i2ctransfer功能,轻松Win/Mac/Linux跨平台调试。开源协议
:CC BY-NC-SA 3.0
描述
UK524-i2ctools使用说明
版本号:V1.03C
发布日期:2025年6月8日
Linux内核i2c tools是一个灵活且强大的i2c/twi/smbus调试工具,但可惜的是Win/Mac系统下没有类似的工具,UK524-i2ctools通过USB虚拟串口(CDC)技术,实现了Linux内核i2c tools的大部分功能,并通过CDC技术实现了Win/Mac系统的跨平台兼容。
- UK524-i2ctools硬件特征

- 采用高速USB虚拟串口(CDC免驱),UART波特率可达2Mbps;
- i2c时钟1-400000Hz可配置,内置10KΩ上拉电阻;
- 512 Byte数据缓冲区,单次i2c读取最大32 Bytes;
- 实现Linux i2c tools功能:i2cdetect、i2cdump、i2cget、i2cset、i2ctransfer;
- 板载PIIC接口(GH1.25 4Pin),线序兼容Grove/Qwiic/ STEMMA接口;
- 保留4Pin 2.54mm i2c(SCL/SDA)标准接口;
- 500mA VUSB供电,板载3.3V LDO,最大输出电流500mA;
- 标准2.54mm双列直插,物理尺寸1.78cm*2.54cm。
二、UK524-i2ctools串口终端交互操作指令表
|
命令符 |
简写 |
Linux命令 |
说明 |
|
d |
detect |
i2cdetect |
I²C设备地址扫描 |
|
p |
dump |
i2cdump |
寄存器范围读取 |
|
g |
get |
i2cget |
单个寄存器读取 |
|
s |
set |
i2cset |
寄存器写入 |
|
t |
transfer |
i2ctransfer |
I²C复合读写(I²C Stream数据流) |
|
- |
rdscl |
read SCL |
读取I²C时钟频率 |
|
- |
wrscl |
write SCL |
写入I²C时钟频率 |
|
h |
help |
help |
查看帮助页 |
三、UK524-i2ctools命令列表
0:快速检测(发送START条件)
1:仅尝试读取
2:发送单次写命令(数据为0x00)
3:发送写命令0x00并尝试读取寄存器
示例1:d 0x20 0x5F #扫描地址0x20到0x5F || d #扫描所有I²C地址

- p=i2c dump
命令格式:i2cdump address [begin end [mode] ]
功能:读取设备的连续寄存器值
Mode模式说明:
0:逐个读取寄存器
1:支持地址自动递增的设备
2:逐个读取寄存器(不发送写命令)
3:支持地址自动递增(不发送写命令)
示例2:p 0x50 0x00 0x10 1 #读取设备0x50的寄存器0x00-0x10(自动递增模式)

- g=i2c get
命令格式:i2cget address [register]
功能:读取单个寄存器的值
参数说明:
address:设备地址(必需)
register:寄存器地址(可选,不指定时直接读取设备)
示例3:g 0x50 0x10 #读取设备0x50的寄存器0x10

value:支持二进制、十六进制或十进制(如0b1010,0x0A,10)
示例4:s 0x50 0x10 0x55 #十六进制写入

- t=i2c tranfer (i2c write)
命令格式:tranfer address operations(w/r) operations_count
功能:对i2c器件(address)复合读写(i2c stream数据流方式)
参数说明:
address:要操作的i2c器件地址
w operations:写操作标识,可以连续写入数据,支持二进制、十六进制或十进制
r operations:读操作标识,可以连续读出数据,只支持十进制数,最大32Byte
示例5:t 0x50 w 0x10 0x1A 0x1B #向AT24C02的0x10号寄存器连续写入0x1A 0x1B

- t=i2c tranfer (i2c read)
命令格式:tranfer address operations(w/r) operations_count
功能:对i2c器件(address)复合读写(i2c stream数据流方式)
参数说明:
address:要操作的i2c器件地址
w operations:写操作标识,可以连续写入数据,支持二进制、十六进制或十进制
r operations:读操作标识,可以连续读出数据,只支持十进制数,最大32 Bytes
示例6:transfer 0x50 w 0x10 r 3 #从24C02的0x10寄存器连续读出3 Bytes数据

- t=i2c tranfer (i2c write-read-read)
命令格式:tranfer address operations(w/r) operations_count
功能:对i2c器件(address)复合读写(i2c stream数据流方式)
参数说明:
address:要操作的i2c器件地址
w operations:写操作标识,可以连续写入数据,支持二进制、十六进制或十进制
r operations:读操作标识,可以连续读出数据,只支持十进制数,最大32Byte
示例7:t 0x50 w 0x10 0xA1 w 0x30 r 3 w 0x10 r 8 #向AT24C02的0x10号寄存器写入0xA1,随后从AT24C02的0x30号寄存器连续读出3 Bytes数据,最后再从AT24C02的0x10号寄存器连续读出8 Bytes数据,共读出11 Bytes数据。

四、UK524-i2ctools时钟设置
- rdscl = read SCL ( i2c clock )
功能:参看当前i2c 时钟频率
示例5:rdscl #查询时钟频率 - wrscl = write SCL ( i2c clock )
功能:重新设置i2c时钟频率(范围:1-400000,单位:Hz)
命令:wrscl #调整时钟频率
示例6:wrscl 400000 #设置时钟频率为400kHz

五、UK524-i2ctools帮助命令
输入h或help可随时查看帮助页面。

六、UK524-CDC2I2C-EKO-PIIC原理图与PCB设计图
UK524-CDC2I2C-EKO-PIIC采用集成单芯片方案,无需外部晶振,外围电路非常简单,只需3.3V电源和简单的上下拉电阻即可,原理示意图如下。

UK524-CDC2I2C-EKO-PIIC的PCB布局也很简单,完整的CDC2I2C Adapter转换器尺寸只有15.24mm×20.32mm大小。

UK524-CDC2I2C-EKO-PIIC完整的开源方案在立创开源社区,链接如下:
设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程知识产权声明&复刻说明
本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。
请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。


评论