USB TO UART/I2C/SPI/JTAG

来自Waveshare Wiki
跳转至: 导航搜索
USB TO UART/I2C/SPI/JTAG
{{{name2}}}
{{{name3}}}
功能简介
特性 无特性,不解释
产品尺寸 53mm x 22mm
特性 USB转UART/I2C/SPI/JTAG模块
' 无特性,不解释
' 无特性,不解释
接口 I2C UART USB

说明

产品参数

参数名称 参数
产品类型 工业级USB转UART/I2C/SPI/JTAG转换器
供电电压 USB口,5V
工作电流 55mA~65mA
工作电平 3.3V/5V(通过开关切换)
工作温度 -40℃~85℃
操作系统 Linux、Windows 11 / 10 / 8.1 / 8 / 7
USB 接口 接口形式 USB-B 型接口
接口保护 自恢复保险丝、ESD 静电保护
UART 接口 支持通道 2路(红色双开关须设置成 M0 模式)
接口形式 6PIN 防反接接口
通信速率 1200bps ~ 9Mbps(M0 模式)
1200bps ~ 7.5Mbps(M1/M2/M3 模式)
硬件流控 CTS和RTS
I2C 接口 支持通道 1路(红色双开关须设置成 M1/M2 模式)
接口形式 12PIN 防反接接口 (前4个引脚为I2C)
通信速率 20KHz~750KHz(低速/标准/快速/高速模式)
SPI 接口 支持通道 1路(红色双开关须设置成 M1/M2 模式)
接口形式 12PIN 防反接接口 (后8个引脚为SPI)
通信速率 468.75KHz~30MHz(可选)
JTAG 接口 支持通道 1路(红色双开关须设置成 M3 模式)
接口形式 12PIN 防反接接口 (后8个引脚为JTAG)

功能说明

  • USB TO UART/I2C/SPI/JTAG 是一款高速 USB 总线转接设备,支持USB 转 2路UART,USB 转 1路UART+1路I2C+1路SPI,USB 转 1路UART+1路JTAG
  • 处于模式0时,产品提供了 2 个高速串口
  • 处于模式1或模式2时,产品提供了1个高速串口、 1 个 2 线 I2C 接口(SCL 线、SDA 线)和 1 个 4 线 SPI 接口(CS 线、SCK线、SDI(MISO) 线、SDO(MOSI) 线)
  • 处于模式3时,产品提供了 1 个 JTAG 接口,支持 4 线或 5 线接口(TMS 线、TCK 线、TDI线、TDO 线和 TRST 线)
  • 处于模式2时为 HID 免驱模式(设备管理器中为人机接口设备),故在设备管理器中的端口看不到新增设备
  • I2C 与 SPI 都是作为 Host/Master 主机模式不支持从机模式。

模式说明

请在调整完模式后再上电

USB TO UART I2C SPI JTAG Mode.jpg

接口说明

USB TO UART I2C SPI JTAG Entity.jpg


Windows下使用

环境搭建

驱动安装

安装提供驱动CH341PAR与CH343SER(驱动程序),安装后可通过设备管理器查看串口对应端口

Windows下端口识别1.png
  • 另一种查看方式:进入设备管理器->点击上方”查看“->”按连接列出设备“-> 选择”基于ACPI x64 的电脑“->”PCI Express 根复合体“->”Intel(R) USB 3.20可扩展主机控制器- 1.20 (Microsoft)“(不同计算机存在不一样的可能)->”USB根集线器(USB 3.0)“->在多个”通用USB集线器“中的”USB Composite Device“可找到CH347相关设备
  • 说明:除模式0外,其余模式存在一个串口端口

Python IDLE 环境搭建

  • 安装Python IDLE(安装网址:Python IDLE),请注意安装时选中添加到 PATH
  • 点击“WIN + R”,输入 cmd 回车,在窗口输入pip install pyserial
pip install pyserial
pip install numpy
pip install pillow
  • 请确保已通过上方指令成功安装 pyserial 库、numpy 库、pillow 库

UART接口使用演示

若想使用2个串口,请将模式切换开关拨至模式0后再连接电脑
USB TO UART I2C SPI JTAG TO UART Software 0.png

SSCOM下,串口自收发通信

以下为演示使用产品的两个串口进行自收发,请将模式切换为模式0

硬件连接

USB TO UART/I2C/SPI/JTAG(UART0) USB TO UART/I2C/SPI/JTAG(UART1)
UART0.TXD UART1.RXD
UART0.RXD UART1.TXD

USB TO UART I2C SPI JTAG TO UART Hardware Connection.JPG

软件操作

  • 开启两个SSCOM程序(SSCOM),分别选中产品的两个端口号

USB TO UART I2C SPI JTAG TO UART Software 1.png

  • 设置为相同波特率,输入要发送的字符,选择“加时间戳和分包显示”,设定“50ms/次,定时发送”

USB TO UART I2C SPI JTAG TO UART Software 2.png

  • 点击“打开串口”即可接收到数据,现象如下

USB TO UART I2C SPI JTAG TO UART Software 3.png

Python IDLE下,串口自收发通信

以下为演示使用产品的两个串口进行自收发(示例程序

硬件连接

USB TO UART/I2C/SPI/JTAG(UART0) USB TO UART/I2C/SPI/JTAG(UART1)
UART0.TXD UART1.RXD
UART0.RXD UART1.TXD

USB TO UART I2C SPI JTAG TO UART Hardware Connection.JPG

软件操作

  • 开启Python IDLE,点击上方”File -> Open...“,进入示例程序中“../USB-TO-UART-I2C-SPI-JTAG-Demo/Windows/Code”
  • 进入UART文件夹,选择打开 UART.py 文件(请注意查看是否为对应端口

USB TO UART I2C SPI JTAG TO UART program 1.png

  • 点击上方“Run”->“Run Module”或直接点击 F5 运行程序

USB TO UART I2C SPI JTAG TO UART program 2.png

  • 效果如下

USB TO UART I2C SPI JTAG TO UART program 3.png

I2C接口使用演示

若想在使用 I2C 或 SPI 时使用串口调试助手进行 UART 的收发,请将模式切换成 模式1(模式2 为HID免驱模式,不会显示在端口中)

Python IDLE下,I2C获取测距模块数据

以下为演示使用产品的 I2C 功能获取I2C模式下的TF-Luna的数据(TF-Luna相关资料引脚说明) 的数据(示例程序)

硬件连接

请将模式切换开关拨至模式1或模式2,并在接好连线后再连接电脑

Peripheral(TF-Luna) USB TO UART/I2C/SPI/JTAG
1脚 VCC
2脚 I2C.SDA
3脚 I2C.SCL
4脚 GND
5脚 GND(最先连接,配置TF-Luna为I2C模式(TF-Luna所需))
6脚 悬空

USB TO UART I2C SPI JTAG TO I2C Hardware Connection.png

软件操作

  • 开启Python IDLE,点击上方”File -> Open...“,进入示例程序中“../USB-TO-UART-I2C-SPI-JTAG-Demo/Windows/Code”(示例程序)
  • 进入I2C文件夹,选择打开 I2C.py 文件
①如果同时使用多个 USB TO UART/I2C/SPI/JTAG 设备,请在①处进行设备选择(类似设备序号,0、1、2...等等)
②根据实际需要操作的I2C设备地址进行修改

USB TO UART I2C SPI JTAG TO I2C program 2.png

  • 点击上方“Run”->“Run Module”或直接点击 F5 运行程序

USB TO UART I2C SPI JTAG TO I2C program 3.png

  • 效果如下

USB TO UART I2C SPI JTAG TO I2C program 4.png

使用上位机,I2C调试测距模块

以下为演示使用产品的 I2C 功能 打开与关闭 I2C模式下的TF-Luna的数据输出(TF-Luna相关资料)
下载 I2C调试软件( USB TO UART/I2C/SPI/JTAG 调试软件),无需安装,直接打开即可使用。

硬件连接

请将模式切换开关拨至模式1或模式2,并在接好连线后再连接电脑

Peripheral(TF-Luna) USB TO UART/I2C/SPI/JTAG
1脚 VCC
2脚 I2C.SDA
3脚 I2C.SCL
4脚 GND
5脚 GND(最先连接,配置TF-Luna为I2C模式(TF-Luna所需))
6脚 悬空

USB TO UART I2C SPI JTAG TO I2C Hardware Connection.png

软件操作

  • 开启 USB TO UART_I2C_SPI_JTAG Demo软件进入I2C调试界面,开启设备

USB TO UART I2C SPI JTAG TO I2C Software 1.png

  • 点击初始化SPI(因为该软件与SPI共用界面),不用管初始化按键前的那些参数
  • 在I2C输入框中输入需要发送的数据(输入为十六进制数据),点击 写/读
20 5A 05 07 00 66

1.其中 0x20 为TF-Luna的I2C写入地址
2.0x5A 0x05 0x07 0x00 0x66 为关闭TF-Luna数据输出的指令(TF-Luna的红灯将会熄灭) USB TO UART I2C SPI JTAG TO I2C Software 2.png

  • 输入 20 5A 05 07 01 67 点击 写/读,将打开TF-Luna的数据输出(TF-Luna的红灯重新被点亮)
20 5A 05 07 01 67

USB TO UART I2C SPI JTAG TO I2C Software 3.png

  • 现象如下(拍摄效果对比人眼观察更显眼,使用人眼观察请转动TF-Luna,防止角度原因未观察到)

USB TO UART I2C SPI JTAG TO I2C Hardware Connectionc 1.png

SPI接口使用演示

若想在使用 I2C 或 SPI 时使用串口调试助手进行 UART 的收发,请将模式切换成 模式1(模式2 为HID免驱模式,不会显示在端口中)

Python IDLE下,SPI驱动OLED屏

以下为演示使用产品的 SPI 功能点亮SPI模式下的OLED(OLED相关资料) (示例程序)

环境配置说明

当前示例已搭建好环境,无需进行下方操作

  • DLL文件要放到demo程序所处目录下,示例文件中存放有两个DLL文件(分别对应64位系统与32位系统),请根据系统进行调整

USB TO UART I2C SPI JTAG TO I2C program 0.png

  • 或者可修改程序中的文件路径为DLL文件存放位置

USB TO UART I2C SPI JTAG TO SPI program 1.png

硬件连接

请将模式切换开关拨至模式1或模式2,并在接好连线后再连接电脑

Peripheral USB TO UART/I2C/SPI/JTAG
RES UART1.RTS(用于控制OLED进行复位(OLED所需))
D/C UART1.CTS(用于指示发送的为命令还是数据(OLED所需))
CS SPI.CS0
CLK SPI.SCK
DIN SPI.SDO
GND SPI.GND
VCC SPI.VCC

USB TO UART I2C SPI JTAG TO SPI Hardware Connection.png

软件操作

  • 开启Python IDLE,点击上方”File -> Open...“,进入示例程序中“../USB-TO-UART-I2C-SPI-JTAG-Demo/Windows/Code”(示例程序)
  • 进入SPI文件夹,选择打开 example.py 文件
①如果同时使用多个 USB TO UART/I2C/SPI/JTAG 设备,请在CH347T_Config.py文件中的①处进行设备选择(类似设备序号,0、1、2...等等)

USB TO UART I2C SPI JTAG TO SPI program 2.png

  • 点击上方“Run”->“Run Module”或直接点击 F5 运行程序

USB TO UART I2C SPI JTAG TO SPI program 3.png

  • 效果如下

USB TO UART I2C SPI JTAG TO SPI program 4.png

使用上位机,SPI调试OLED屏

以下为演示使用产品的 SPI 功能点亮SPI模式下的OLED(OLED相关资料) 下载 SPI调试软件( USB TO UART/I2C/SPI/JTAG 调试软件),无需安装,直接打开即可使用。

硬件连接

请将模式切换开关拨至模式1或模式2,并在接好连线后再连接电脑

Peripheral USB TO UART/I2C/SPI/JTAG
RES I2C.VCC(使OLED处于工作(OLED所需))
D/C URAT0.GND(用于指示发送的为命令还是数据(OLED所需))
CS SPI.CS0
CLK SPI.SCK
DIN SPI.SDO
GND SPI.GND
VCC SPI.VCC

USB TO UART I2C SPI JTAG TO SPI Hardware Connection 0.png

软件操作

  • 开启 USB TO UART_I2C_SPI_JTAG Demo软件进入SPI调试界面,开启设备

USB TO UART I2C SPI JTAG TO SPI Software 0.png

  • 根据使用环境初始化SPI参数,选择完参数点击初始化SPI(多点击几下初始化SPI,防止初始化失败)

USB TO UART I2C SPI JTAG TO SPI Software 1.png

  • 在SPI输入框中输入需要发送的数据,根据所需操作选择SPI读、SPI写或SPI读写

USB TO UART I2C SPI JTAG TO SPI Software 2.png
1.下方数据为OLED初始化指令(使用鼠标右键进行数据粘贴,不能使用键盘快捷键)

AE D5 80 A8 3F D3 00 40 8D 14 20 00 A1 C8 DA 12 81 CF D9 F1 DB 40 A4 A6 AF 21 00 7F 22 00 07

USB TO UART I2C SPI JTAG TO SPI Software 3.png

  • 初始化效果如下(本来屏幕是不亮的)

USB TO UART I2C SPI JTAG TO SPI Software A4.png

  • 将OLED的D/C脚连接到VCC(接到GND为发送命令,接到VCC为发送数据)

USB TO UART I2C SPI JTAG TO SPI Hardware Connection 1.png

  • 发送清屏数据(使用鼠标右键进行数据粘贴,不能使用键盘快捷键),点击一次SPI写将清除一部分
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • 发送点亮数据(使用鼠标右键进行数据粘贴,不能使用键盘快捷键),点击一次SPI写将点亮一部分
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF

USB TO UART I2C SPI JTAG TO SPI Software 4.png

JTAG接口使用演示

OpenOCD下,STM32单片机调试和烧录

以下为演示使用产品的JTAG接口向 STM32F429IGT6开发板 中烧录程序
请注意:保证设备处于3V3状态而非5V(要与需要烧录的设备保持同一电位)

硬件连接

外部JTAG接口 USB TO UART/I2C/SPI/JTAG
TDI TDI
TDO TDO
TMS TMS
TCLK TCK
TRST(不接) TRST(不接)
GND GND

前置操作

  • 开启Telnet功能

USB TO UART I2C SPI JTAG TO JTAG Software.png

  • 点击win+R键,输入"cmd"进入命令窗口
  • 进入资料包路径中的“USB-TO-UART-I2C-SPI-JTAG-Demo\Windows\Software\OpenOCD-CH347\bin”目录下(演示为存放于桌面的情况)
cd Desktop\USB-TO-UART-I2C-SPI-JTAG-Demo\Windows\Software\OpenOCD-CH347\bin

Windows下JTAG前置操作1-3-1.png

  • 连接CH347与STM32F4(openocd.exe -f ch347.cfg -f + 参数 :此处参数为所连接芯片的配置文件,可将文件复制到第2点的bin文件夹下,否则需要加上配置文件的路径)
说明:常见芯片的配置文件存放于“USB-TO-UART-I2C-SPI-JTAG-Demo\Windows\Software\OpenOCD-CH347\scripts\target”中,可将其复制到当前文件夹
openocd.exe -f ch347.cfg -f stm32f4x.cfg

Windows下JTAG前置操作1-4-4.png

  • 点击“win+R”开启新的命令窗口
  • telnet.exe Localhost 4444(根据上方返回结果)
telnet.exe Localhost 4444

Windows下JTAG前置操作1-5.png

  • 出现以下文字,则为连接成功

Windows下JTAG前置操作1-6.png

  • 使用openocd向STM32F4中烧入程序

程序下载

  • 拷贝hex文件到“USB-TO-UART-I2C-SPI-JTAG-Demo\Windows\Software\OpenOCD-CH347\bin”目录下

说明:示例文件中,bin文件下存放有Test文件夹,文件夹下有两个文件分别对应 Open429I-C (套餐A) 下按键对灯源的顺时针与逆时针控制

  • 在Telnet窗口中输入“halt”回车执行,暂停正在运行的程序
halt
  • 执行“program STM32F429_439xx.hex”进行程序下载(program + 参数 :此处参数为需要下载的hex文件,可以将其复制到前置操作中提到的bin文件夹中或者您需要将参数改为 路径+需要下载的hex文件或者elf文件)
请注意:文件命名时不要有空格
program STM32F429_439xx.hex

Windows下JTAG操作 CH347T进行MCU程序下载成功1-1.png

程序调试

  • 在程序下载中已经有用到调试相关命令“halt”,暂停正在运行的程序
  • 使用“flash probe 0”进行扫描Flash
  • 执行各种调试指令进行功能调试(例:reset 重启、halt 暂停、resume 恢复等)

Windows下JTAG操作 CH347T进行MCU调试1-1.png

移植说明

移植参考

环境配置说明

  • DLL文件要放到demo程序所处目录下,示例文件中存放有两个DLL文件(分别对应64位系统与32位系统),请根据系统进行调整

USB TO UART I2C SPI JTAG TO I2C program 0.png

  • 或者可修改程序中的文件路径为DLL文件存放位置

USB TO UART I2C SPI JTAG TO I2C program 1.png

示例参考

说明: 程序基于 Rapberry Pi 驱动 OLED 的程序进行修改
参考链接:OLED相关资料, 参考的示例为”../OLED_Module_Code /RaspberryPi/python“下的文件(参考的示例程序))

  • 文件”../USB-TO-UART-I2C-SPI-JTAG-Demo/Windows/Code“中的I2C与SPI两个应用示例
    • 应用1:使用本产品的I2C接口点亮OLED(使用设备:0.96inch OLED (A))
    • 应用2:使用本产品的SPI接口点亮OLED(使用设备:0.96inch OLED (A))

文件说明

  • CH347T_Config.py对应参考示例中”../OLED_Module_Code/RaspberryPi/python/lib/waveshare_OLED/config.py“,定义CH347T的设备初始化等操作
  • OLED_Library_Function.py对应参考示例中”../OLED_Module_Code/RaspberryPi/python/lib/waveshare_OLED/OLED_0in96.py“,定义OLED的设备初始化等操作
  • example.py对应参考示例中”../OLED_Module_Code/RaspberryPi/python/lib/waveshare_OLED/OLED_0in96_test.py“,为程序主流程
  • pic文件夹中存放图片与字体文件
更多关于函数说明,详见:应用开发手册

Linux(Raspberry Pi)下使用

环境搭建

驱动安装

下载文件包到树莓派,并解压文件

wget https://www.waveshare.net/w/upload/2/2b/USB-TO-UART-I2C-SPI-JTAG-Demo.zip
unzip USB-TO-UART-I2C-SPI-JTAG-Demo.zip -d ./USB-TO-UART-I2C-SPI-JTAG-Demo

执行示例:
Linux驱动安装-1.png
Linux驱动安装-1-3-1.png
进入驱动文件所处目录

cd USB-TO-UART-I2C-SPI-JTAG-Demo/Raspberry/Driver/driver/

在树莓派上安装执行环境

sudo apt-get install raspberrypi-kernel-headers

在Ubuntu 上需要使用其他指令安装

sudo apt-get update
sudo apt-get install build-essential 
sudo apt install python3-pip

Linux驱动安装-1-4-2.png
执行编译并加载驱动

make
sudo insmod ch34x_pis.ko

使驱动程序永久工作

sudo make install

Linux驱动安装-1-5-1.png

  • 安装 serial 库(失败的话请执行 sudo pip3 install pyserial
pip install pyserial
  • 将模式切换至模式1再连接树莓派,查询设备可看到设备"ch34x_pis*"
ls /dev/

USB TO UART I2C SPI JTAG Driver 0.png

  • 各模式识别到的设备
模式 设备号
模式0 tty* and tty*((常为ttyACM*)
模式1 ch34x_pis* and tty*
模式2 hidraw*
模式3 ch34x_pis* and tty*

前置操作

  • 查看系统信息
uname -a
Linux前置操作1-3.png

如果返回值为 armv61 或 armv71 ,则代表是32位ARM架构(为树莓派)。如果返回值为aarch64 ,则代表是64位ARM架构(为树莓派)。如果返回值是x86_64,则不是树莓派,选择x64文件夹
Linux前置操作1-5-2.png
当前使用的是树莓派64位的库,如果你的查询结果为 aarch64 ,则无需进行下方的操作

  • 进入下载的文件,“../USB-TO-UART-I2C-SPI-JTAG-Demo/Raspberry/Code/lib/XXX”(XXX:根据上方查询结果选择文件夹)
cd 
cd USB-TO-UART-I2C-SPI-JTAG-Demo/Raspberry/Lib/aarch64

USB TO UART I2C SPI JTAG Environment.png

  • 将so为后缀的文件拷贝至程序文件夹中(文件夹中原本存在一个.so文件为aarch64上使用的,用你当前系统适配的.so文件将其替换)

例:将其拷贝到I2C示例中

sudo cp libch347.so ../../Code/I2C/

USB TO UART I2C SPI JTAG Environment 3.png

  • 或拷贝到SPI示例中
sudo cp libch347.so ../../Code/SPI/
  • 使用UART时与使用普通UART设备一致(Raspberry 识别到的设备号一般为 ttyACM*,可通过插拔设备查询新增设备)

1.先不连接 USB TO UART/I2C/SPI/JTAG ,使用指令查询当前设备

ls /dev/tty*

2.连接 树莓派 与 USB TO UART/I2C/SPI/JTAG,再次查询 “ls /dev/tty*”,新增设备即为本产品的设备号

ls /dev/tty*

USB TO UART I2C SPI JTAG Environment 4.png

UART接口使用演示

以下为演示使用产品的两个串口进行自收发,请将模式切换至模式0(为两个 tty* 设备)

Python 环境下,串口自收发通信

硬件连接

USB TO UART/I2C/SPI/JTAG(UART0) USB TO UART/I2C/SPI/JTAG(UART1)
UART0.TXD UART1.RXD
UART0.RXD UART1.TXD

USB TO UART I2C SPI JTAG TO UART Hardware Connection.JPG

软件操作

  • 查询当前识别到的设备号

1.先不连接 USB TO UART/I2C/SPI/JTAG ,使用指令查询当前设备

ls /dev/tty*

2.连接 树莓派 与 USB TO UART/I2C/SPI/JTAG,再次查询 “ls /dev/tty*”,新增设备即为本产品的设备号

ls /dev/tty*

USB TO UART I2C SPI JTAG Environment 4.png

  • 进入UART示例目录,编辑程序 UART.py
cd USB-TO-UART-I2C-SPI-JTAG-Demo/Raspberry/Code/UART/
vi UART.py

USB TO UART I2C SPI JTAG TO UART 0.png USB TO UART I2C SPI JTAG TO Linux UART 2.png

  • 光标移动到位置①处,修改为识别到的设备号(移动光标使用'上下左右键' -> 点击'i'然后进行修改 -> 修改完点击'Esc' -> 输入’:wq‘保存退出)

USB TO UART I2C SPI JTAG TO UART 1.png

  • 执行程序
sudo python3 UART.py 

USB TO UART I2C SPI JTAG TO Linux UART 3.png

I2C接口使用演示

若想在使用 I2C 或 SPI 时使用 UART 进行数据收发,请将模式切换成 模式1或 模式2(模式1为ch34x_pis* 与 tty* 设备,模式2为 hidraw* 设备)

Python 环境下,I2C获取测距模块数据

硬件连接

请将模式切换开关拨至模式1或模式2,并在接好连线后再连接电脑

Peripheral(TF-Luna) USB TO UART/I2C/SPI/JTAG
1脚 VCC
2脚 I2C.SDA
3脚 I2C.SCL
4脚 GND
5脚 GND(最先连接,配置TF-Luna为I2C模式(TF-Luna所需))
6脚 悬空

USB TO UART I2C SPI JTAG TO I2C Hardware Connection.png

软件操作

  • 查询当前识别到的设备号(连接 树莓派 与 USB TO UART/I2C/SPI/JTAG,查询设备)

模式1 查询'ch34x_pis*'与'tty*',可在连接本设备与未连接本设备各查一次('ch34x_pis*'用于SPI/I2C,'tty*'用于UART)

ls /dev/ch34x_pis*

USB TO UART I2C SPI JTAG TO Linux I2C 0.png USB TO UART I2C SPI JTAG TO Linux I2C 1.png

模式2 查询'hidraw*',可在连接本设备与未连接本设备各查一次

ls /dev/hidraw*

USB TO UART I2C SPI JTAG TO Linux I2C 2.png

  • 进入I2C示例目录,编辑程序 I2C.py
cd USB-TO-UART-I2C-SPI-JTAG-Demo/Raspberry/Code/I2C/
vi I2C.py 

USB TO UART I2C SPI JTAG TO Linux I2C 3.png

  • 光标移动到位置①处,修改为识别到的设备号(移动光标使用'上下左右键' -> 点击'i'然后进行修改 -> 修改完点击'Esc' -> 输入’:wq‘保存退出)

USB TO UART I2C SPI JTAG TO Linux I2C 4.png

  • 执行程序
sudo python3 I2C.py

USB TO UART I2C SPI JTAG TO Linux I2C 5.png

SPI接口使用演示

若想在使用 I2C 或 SPI 时使用 UART 进行数据收发,请将模式切换成 模式1或 模式2

Python 环境下,SPI驱动OLED屏

硬件连接

请将模式切换开关拨至模式1或模式2,并在接好连线后再连接电脑

Peripheral USB TO UART/I2C/SPI/JTAG
RES UART1.RTS(用于控制OLED进行复位(OLED所需))
D/C UART1.CTS(用于指示发送的为命令还是数据(OLED所需))
CS SPI.CS0
CLK SPI.SCK
DIN SPI.SDO
GND SPI.GND
VCC SPI.VCC

USB TO UART I2C SPI JTAG TO SPI Hardware Connection.png

软件操作

  • 查询当前识别到的设备号(连接 树莓派 与 USB TO UART/I2C/SPI/JTAG,查询设备)

模式1 查询'ch34x_pis*'与'tty*',可在连接本设备与未连接本设备各查一次('ch34x_pis*'用于SPI/I2C,'tty*'用于UART)

ls /dev/ch34x_pis*

USB TO UART I2C SPI JTAG TO Linux SPI 0.png USB TO UART I2C SPI JTAG TO Linux SPI 1.png

模式2 查询'hidraw*',可在连接本设备与未连接本设备各查一次

ls /dev/hidraw*

USB TO UART I2C SPI JTAG TO Linux SPI 2.png

  • 进入SPI示例目录,编辑程序 CH347T_Config.py
cd USB-TO-UART-I2C-SPI-JTAG-Demo/Raspberry/Code/SPI/
vi CH347T_Config.py 

USB TO UART I2C SPI JTAG TO Linux SPI 3.png

  • 光标移动到位置①处,修改为识别到的设备号(移动光标使用'上下左右键' -> 点击'i'然后进行修改 -> 修改完点击'Esc' -> 输入’:wq‘保存退出)

USB TO UART I2C SPI JTAG TO Linux SPI 4.png

  • 执行程序
sudo python3 example.py

USB TO UART I2C SPI JTAG TO Linux SPI 5.png

  • 效果如下

USB TO UART I2C SPI JTAG TO Linux SPI 6.png

FAQ

常见问题

这种情况可能是切换模式后没有进行断电操作
1.首先断开设备与电脑的连接 2.拨动模式切换开关,调整到需要的模式
3.重新连接设备与电脑

{{{3}}}
{{{4}}}

{{{5}}}


这种情况可能是没有将TF-Luna(外接的设备)配置到I2C模式

1.断开TF-Luna与设备的所有连线
2.首先连接TF-Luna的第五根线,再依次连接其他线
{{{3}}}
{{{4}}}

{{{5}}}


USB TO UART I2C SPI JTAG TO problem 1.png

  • 点击 WIN + R ,执行以下 PIL 安装指令
pip install pillow
  • 若不能正常下载则使用其他源进行下载执行
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pillow
{{{3}}}
{{{4}}}

{{{5}}}


  • 存在1:可能是与本产品通信的设备与设备当前通信电平不匹配导致
1.请检查与本产品通信的设备的允许电平是3.3V还是5V
2.拨动电平切换开关,将通信电平调至与外接设备一致
  • 存在2:可能是与本产品通信的设备功耗较高或使用本产品的VCC口供电的设备较多导致
1.请将连接至本产品的设备使用外部设备供电,并将供电设备的GND与本产品的GND连接
2.请注意,各个设备的GND需要连接到一起
{{{3}}}
{{{4}}}

{{{5}}}


  • 请在I2C 输出框中输入 设备地址 + 寄存器地址 如下

USB TO UART I2C SPI JTAG TO problem I2C 1.png

  • A0 表示设备地址左移1位后的地址(读写位会自动处理,只需将设备地址偏移一位就行), 00 00 表示需要读取的寄存器地址
  • 寄存器地址若为 16 位,则先发送低字节(根据从设备要求进行发送,部分设备需先发送高字节),如读取 0x0004 地址的10个字节(输入长度位置需填写需要读取的字节数)

USB TO UART I2C SPI JTAG TO problem I2C 2.png

  • 请注意,若从设备对于数据获取有其他对应操作,请根据从设备具体操作进行相关调整
{{{3}}}
{{{4}}}

{{{5}}}


请检查通信设备是否支持5V通信

{{{3}}}
{{{4}}}

{{{5}}}


技术支持

联系人:欧工
EMAIL:2355861365@qq.com
QQ:2355861365
微信:扫下方二维码添加
欧工企业微信联系二维码.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证