可编程 USB 转串口适配器开发板 USB 转 UART I2C 应用

简介: USB 转UART 原理驱动程序安装后,计算机通过 COMx 与 MCU 进行通讯,当 USB2S 的 UART 透明传输功能为开启状态时(默认),MCU 可将 UART1 与UART2 的双向数据进行透明转发,即:实现了计算机的COMx 端口与 USB2S 的对外 UART2 端口的双向数据传输。

可编程 USB 转串口适配器开发板 USB 转 UART I2C 应用

可编程USB转 UART/I2C /SMBusS/SPI/CAN/1 -Wire适配器USB2S USB 转 UART 应用
可编程USB转串口适配11.jpg

1.1驱动安装
USB2S 内置了 USB 转UART 芯片,可使用CH340/CH341 驱动程序。驱动安装步骤如下: 双击运行“CH341SER\SETUP.exe”,打开驱动安装窗口。
点击【安装】按钮,稍后会提示“驱动安装成功”。如下图示。
USB 转 UART 应用 驱动安装.jpg

驱动安装成功后,若将 USB2S 插入计算机 USB 接口,在“设备管理器”中会发现新的 COM 接口, 如下图示。
USB 转 UART 应用 驱动安装后.jpg

1.2 USB 转UART 原理
驱动程序安装后,计算机通过 COMx 与 MCU 进行通讯,当 USB2S 的 UART 透明传输功能为开启状态时(默认),MCU 可将 UART1 与UART2 的双向数据进行透明转发,即:实现了计算机的COMx 端口与 USB2S 的对外 UART2 端口的双向数据传输。工作原理示意图如下:
USB 转 UART 原理.jpg

上面的方法是通过 MCU 固件程序实现UART1 与 UART2 之间数据透明传输。
下面的连接方法可实现真正的 USB 转 UART 功能,方法是通过跳线禁用 MCU,外部UART 设备直接连接到 UART1 接口。
USB 转 UART 原理2.jpg

对于绝大部分应用,第一种连接方法即可。

可编程USB转 UART/I2C /SMBusS/SPI/CAN/1 -Wire适配器USB2S UART 转 I2C 应用

1.1 AT24CxxEEPROM 芯片
1.1.1 芯片介绍

AT24Cxx 是可擦写 EEPROM 存储芯片,xx 表示容量,单位为 Kbits。USB2S 板上已有 1 片 AT24Cxx
(默认为 AT24C02),设备地址为 0xA0。

通过 AT24Cxx 的数据手册可知,读写时序如下: 写时序:
(1) 向 IIC 总线发送开始信号
(2) 向 IIC 总线发送芯片写地址(0xA0)
(3) 向 IIC 总线发送要操作的 EEPROM 地址
(4) 向 IIC 总线连续发送多个要写入的字节数据
(5) 向 IIC 总线发送停止信号,结束本次通讯读时序:
(1) 向 IIC 总线发送开始信号
(2) 向 IIC 总线发送芯片写地址(0xA0)
(3) 向 IIC 总线发送要操作的 EEPROM 地址
(4) 向 IIC 总线发送开始信号
(5) 向 IIC 总线发送芯片读地址(0xA1)
(6) 从 IIC 总线连续读取芯片输出的数据
(7) 向 IIC 总线发送停止信号,结束本次通讯

1.1.2 向 AT24C02 写入数据
向 AT24C02 的地址 0~3 写入 4 个字节(30 31 32 33)
向 UART1 发送字符串:IIC[WT6H]A0 00 30 31 32 33[STOP]
[IIC] 数据帧的目标是 IIC 接口
[START] 从目标接口输出开始信号
[WT6H] 从目标接口输出 6 个字节,后续数据类型为 16 进制。
A0 00 2 字节数据,AT24C02 芯片地址+要操作的EEPROM 地址
00 01 02 03 向 AT24C02 写入的 4 个字节数据[STOP] 从目标接口输出停止信号,结束本次通讯

1.1.3 从 AT24C02 读取数据
从 AT24C02 读取 4 个字节数据,数据起始地址为 0。
向 UART1 发送字符串:IIC[WT2H]A0 00STARTA1RD4N
从 UART1 返回 4 个字节(16 进制):30 31 32 33 [IIC] 数据帧的目标是 IIC 接口
[START] 从目标接口输出开始信号
[WT2H] 从目标接口输出 2 个字节,后续数据类型为 16 进制。

A0 00 2 字节数据,AT24C02 芯片地址+要操作的EEPROM 地址
[START] 从目标接口输出开始信号
[WT1H] 从目标接口输出 1 个字节,后续数据类型为 16 进制。
A1 AT24C02 芯片的读地址
[RD4N] 从目标接口连续读取 4 个字节数据 [STOP] 从目标接口输出停止信号,结束本次通讯

1.1.4 跨页写入数据

AT24C02 每页为 8 字节,EEPROM 地址 0~7 为第 1 页、8~15 为第 2 页,以此类推。当向芯片连续写入数据时,在写完每页最后 1 个字节后必须向其发送停止信号,以使芯片对当前页进行存储,继续写入后续数据时需要重新开始写入时序。
芯片存储数据需要一定时间,向其发起新的通讯前应有适当延时。也可以直接向其继续写入若返回了[ERRxxx]表示芯片正忙,重新发送直到无错误返回。
例如:从 EEPROM 地址 0 开始写入 10 个字节数据,则应先写入 0~7,延时,再写入 8~9。

IIC[WT10H]A0 00 00 01 02 03 04 05 06 07STOPIIC[WT4H]A0 08 08 09[STOP]

例如:直接向芯片写入字符串数据

IIC[WT2H]A0 00[WT8S]87654321STOPIIC[WT4H]A0 08 38 39[STOP]

相关文章
|
XML 存储 数据可视化
Flowable学习笔记(一、入门)
Flowable学习笔记(一、入门)
2741 1
Flowable学习笔记(一、入门)
|
Java 开发工具 git
你需要的Java jar包反编译工具来了
在我们进行java开发过程中,有时候需要看一下某个jar包是否确定已经是我们更新过的代码,那么此时,就需要使用反编译工具看一下jar包中对应的java源码。下文介绍一个高效率的jar包源码查看工具:jd-gui
你需要的Java jar包反编译工具来了
|
数据采集 人工智能 决策智能
Mobile-Agent-v2问世,自动化手机操作能力再上新台阶
【6月更文挑战第22天】Mobile-Agent-v2,一款多智能体AI系统,提升手机操作自动化,通过规划、记忆和错误纠正代理优化任务执行,实验显示比前代性能提升30%,但面临计算资源需求高、数据依赖及用户反馈需求等挑战。[论文链接](https://arxiv.org/abs/2406.01014)**
801 7
|
存储 JSON 测试技术
【cocos 2d微信小游戏开发教程】基础使用笔记分享(三)
【cocos 2d微信小游戏开发教程】基础使用笔记分享(三)
122 0
|
SQL Oracle 关系型数据库
MySql基础一之【了解MySql与DBeaver操作MySql】
MySql基础一之【了解MySql与DBeaver操作MySql】
335 0
|
SQL 监控 安全
数据库安全:SQL注入防御实践
【7月更文挑战第11天】SQL注入攻击作为一种常见的网络攻击手段,对数据库的安全性和业务稳定构成了严重威胁。为了有效防御SQL注入攻击,开发者和数据库管理员应采取一系列实践措施,包括输入验证与过滤、使用参数化查询、限制数据库用户权限、使用Web应用程序防火墙、定期更新和打补丁、实施实时监控和审计以及使用HTTPS协议等。通过这些措施的实施,可以显著提升数据库的安全性,降低遭受SQL注入攻击的风险。同时,开发者和数据库管理员应持续关注新的安全威胁和防御技术,不断提升自身的安全防护能力。
|
C++ 计算机视觉
CV之FC:人脸识别之判断相似度极高的国内外明星根据人工智能算法(AP云)预测判别是否为同一个人
CV之FC:人脸识别之判断相似度极高的国内外明星根据人工智能算法(AP云)预测判别是否为同一个人
CV之FC:人脸识别之判断相似度极高的国内外明星根据人工智能算法(AP云)预测判别是否为同一个人
|
SQL Java HIVE
使用 Paimon + StarRocks 极速批流一体湖仓分析
本文整理自阿里云智能高级开发工程师王日宇,在 Flink Forward Asia 2023 流式湖仓(二)专场的分享。
80516 3
使用 Paimon + StarRocks 极速批流一体湖仓分析
|
API vr&ar Android开发
一文搞懂ARKit,ARCore,RealityKit和Vuforia
AR框架的一个核心是含能够理解特征的场景和各种类型的锚点。锚点有很多种,可根据特定场景来摆放3D模型 ,甚至可以真人来做距离测量(ARBodyAnchor)。并且这些框架不容忽视的优势是具有进行场景重建和人形遮挡(occlusion)的32位尝试数据。
1570 4
|
缓存 前端开发 JavaScript
CDN配置项
CDN配置项
212 0