硬件开发笔记(十七):RK3568底板电路串口、485、usb原理图详解
前言
原理图有一些常用电路。
本篇就将集中常用电路分析完,如uart口,涉及usart串口、rs485、usb口。
串口
串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口(Serial Interface)是指数据一位一位地顺序传送。其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。
UART和USART都是串行通信中的重要接口,UART主要用于异步通信,而USART则支持同步和异步通信,具有更高的灵活性和性能。在实际应用中,应根据具体的需求和场景选择合适的接口进行通信。
UART(Universal Asynchronous Receiver/Transmitter)
定义
UART,即通用异步收发传输器,通常被用作计算机或其他设备之间传输数据的接口。它主要完成数据的串行化和并行化转换,使得数据能够在不同的设备之间有效地传输。
工作原理
UART将要传输的数据在串行通信与并行通信之间加以转换。作为把并行输入信号转成串行输出信号的芯片,UART通常被集成于其他通讯接口的连接上。它不是像SPI和I2C这样的通信协议,而是微控制器中独立的物理电路或独立的IC。
特点
UART的一个显著优点是它只使用三根线就可以在设备之间传输数据,包括发送线(TX)、接收线(RX)和地线(GND)。这种简单的连接方式使得UART在许多应用中成为首选的通信方式。
USART(Universal Synchronous/Asynchronous Receiver/Transmitter):
定义
USART,即通用同步/异步串行接收/发送器,是一个全双工通用同步/异步串行收发模块,也是一个高度灵活的串行通信设备。USART在UART的基础上增加了同步通信的功能,使其具有更广泛的应用场景。
工作原理
USART收发模块一般分为三大部分:时钟发生器、数据发送器和接收器。控制寄存器为所有的模块共享。时钟发生器由同步逻辑电路(在同步从模式下由外部时钟输入驱动)和波特率发生器组成。发送器部分由一个单独的写入缓冲器、一个串行移位寄存器、校验位发生器和用于处理不同帧结构的控制逻辑电路构成。接收器是USART模块最复杂的部分,包括时钟和数据接收单元、校验位校验器、控制逻辑、移位寄存器和两级接收缓冲器等。
特点
USART的主要特点包括全双工操作、支持同步和异步通信、独立的高精度波特率发生器、支持多种数据位和停止位配置、硬件支持的奇偶校验位发生和检验、数据溢出检测、帧错误检测等。此外,USART还支持多机通信模式和倍速异步通信模式,使得其在各种复杂的通信环境中都能表现出色。
底板接口电路
默认调试串口

这个使用的常规max232类型的芯片,进行ttl与串口232的电平转换:
- TTL是一种电平,即高电平为2.4V至5V,低电平为0V至0.4V。
- RS232电平分为正负两个极性,其电压范围为±3V至±25V,其中大于0V表示逻辑“0”,小于0V表示逻辑“1”,
USB3.0 x 2


USB2.0 x 2

如下图,使用了是USB共模电感电路进行滤波:

USB共模电感电路是一种用于滤除电源信号中的共模噪声的电路(电磁干扰的一种,与电磁兼容性相关)。共模噪声是指同时出现在电源的正极和负极的噪声信号,而差模噪声则仅出现在其中一极的噪声信号。
USB共模电感电路通常由一个共模电感器件和相应的连接电路组成。共模电感器件主要作用是提供一个高阻抗路径,以阻挡共模噪声进入USB设备或从USB设备传播出去。在USB设备的端口两个数据线(D+和D-)上分别加入了一个共模电感器件,从而实现了对共模噪声的滤除。
USB共模电感电路的原理是利用共模电感器件的高阻抗特性,使共模噪声信号无法通过这个电感器件流入或流出USB设备。这样可以有效地减少共模噪声对USB设备的干扰.
需要注意的是,USB共模电感电路只能滤除共模噪声,而无法滤除差模噪声,差模噪声是指只在一个数据线上出现的噪声信号。如果需要同时滤除共模噪声和差模噪声,通常还需要添加其他滤波元件,如差樘电感器件和滤波电容等总而言之,USB共模电,感电路是一种用于滤除电源信号中的共模噪声的电路,通过添加共模电,感器件和相应的连接电路,可以有效地减少共模噪声对USB设备的干扰。
下图随便找的两个示例:


注意:可能是设计习惯或者都可以的状态,这个电路发现有多种形式。
UART x 2

RS485 x 1

使用了SIT3485E进行串口与485的电平以及逻辑转换,此图没有实现硬件上下拉,是软件控制,这部分可以进行一些调整。
SIT3485E集成芯片

SIT3485E是一款3.0V~5.5V宽电源供电、总线端口ESD水平达到15KVHBM以上、总线耐压范围达到±15V、半双工、低功耗,功能完全满足TIA/EIA-485标准要求的RS-485收发器。
SIT3485E 包括一个驱动器和一个接收器,两者均可独立使能与关闭。当两者均禁用时,驱动器与接收器均输出高阻态。SIT3485E具有1/8负载,允许256个SIT3485E收发器并接在同一通信总线上。可实现高达12Mbps的无差错数据传输。
SIT3485E 工作电压范围为 3.0~5.5 V,具备失效安全(fail-safe)、限流保护、过压保护等功 能。
在使用RS485收发器SIT3485ESA进行485通信时,常用的方式是使用软件控制方向。在空闲状态下,MCU控制485_EN为低电平,使SIT3485ESA处于接收状态;在准备发送数据之前,MCU会拉高485_EN,SIT3485ESA就会处于发送状态,发送完毕之后,485_EN重新处于低电平,SIT3485ESA也再次处于接收状态。
总结
串口、485为常用串行通讯接口,单片机也好,复杂的系统也罢都是离不开这几项的,然后还有USB,本篇完。
硬件开发笔记(十七):RK3568底板电路串口、485、usb原理图详解的更多相关文章
- “全栈2019”Java第七十七章:抽象内部类与抽象静态内部类详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- 分享我开发的网络电话Android手机APP正式版,图文详解及下载
分享我开发的网络电话Android手机APP正式版,图文详解及下载 分享我开发的网络电话Android手机APP正式版 实时语音通讯,可广域网实时通讯,音质清晰流畅! 安装之后的运行效果: 第一次安装 ...
- Android开发之手势滑动(滑动手势监听)详解
Android开发之手势滑动(滑动手势监听)详解 在Android应用中,经常需要手势滑动操作,比如上下滑动,或左右方向滑动,处理手势滑动通常有两种方法:一种是单独实现setOnTouchListen ...
- 硬件开发笔记(一):高速电路设计Cadence Aleego软件介绍和安装过程
前言 红胖子软硬通吃的前提的使用AD,涉及到高速电路板,要配合高速硬件工程师,使用Aleegro更合适,遂开启了Aleegro设计电路板学习,过程保存为开发笔记,旨在普及和沟通技术,共同进步,学无 ...
- 【JAVAEE学习笔记】hibernate01:简介、搭建、配置文件详解、API详解和CRM练习:保存客户
今日学习:hibernate是什么 一.hibernate是什么 框架是什么: 1.框架是用来提高开发效率的 2.封装了好了一些功能.我们需要使用这些功能时,调用即可.不需要再手动实现. 3.所以框架 ...
- [Java入门笔记] 面向对象编程基础(二):方法详解
什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能上来看,方法都有点类似与函数.但是,方法与传统的函数还是有着不同之处: 在 ...
- 【Android UI设计与开发】8.顶部标题栏(一)ActionBar 奥义·详解
一.ActionBar介绍 在Android 3.0中除了我们重点讲解的Fragment外,Action Bar也是一个非常重要的交互元素,Action Bar取代了传统的tittle bar和men ...
- 【Android UI设计与开发】8.顶部标题栏(一)ActionBar 奥义·详解
一.ActionBar介绍 在Android 3.0中除了我们重点讲解的Fragment外,Action Bar也是一个非常重要的交互元素,Action Bar取代了传统的tittle bar和men ...
- STM32F412应用开发笔记之八:迪文串口屏显示驱动
迪文的显示屏使用起来比较方便,其使用串口通讯,即可支持RS232,又可以支持TTL电平.在NUCLEO-F412ZG实验板上,USART2已经引到了CN9上,我们就利用USART2来实现与迪文串口屏的 ...
- 硬件开发笔记(四):硬件开发基本流程,制作一个USB转RS232的模块(三):设计原理图
前者 前面建立好的基础的元器件,下面开始设计原理图. 需求 USB转RS232,输出RS232 可以选择性输出5V的TTL 可以选择性输出3.3V的TTL 设计原理图 步骤一:CH340G ...
随机推荐
- 阿里的 RocketMQ 如何让双十一峰值之下 0 故障?
简介: 2020 年双十一交易峰值达到 58.3 W 笔/秒,消息中间件 RocketMQ 继续数年 0 故障丝般顺滑地完美支持了整个集团大促的各类业务平稳. 作者 | 愈安来源 | 阿里巴巴云原生公 ...
- 庖丁解牛|图解 MySQL 8.0 优化器查询转换篇
简介: 本篇介绍子查询.分析表和JOIN的复杂转换过程 一 背景和架构 在<庖丁解牛-图解MySQL 8.0优化器查询解析篇>一文中我们重点介绍了MySQL最新版本8.0.25关于SQ ...
- [FAQ] GitHub 开启二次验证之后,如何通过 https clone 项目 ?
在 Github Personal Access Tokens 页面,点击生成一个新的 tokon. 此时使用这个 token 作为用户的密码来 clone 项目.
- [Contract] 测试 Solidity 合约代码的两种方式 与 优缺点
第一种,使用 Truffle 这类继承了测试工具的框架,只要编写 js 脚本就可以测试 web3 与合约的逻辑. 优点是完全可控,粒度够细,便于集成测试:缺点是需要花费一些时间编写测试脚本,不过值得. ...
- 3.Exporter概述
一.Exporter概述 所有可以向Prometheus提供监控样本数据的程序都可以被称为一个Exporter.而Exporter的一个实例称为target,如下所示,Prometheus通过轮询的方 ...
- iceoryx源码阅读(三)——共享内存通信(一)
目录 0 导引 1 整体通信结构 2 RelativePointer 2.1 原理 2.2 PointerRepository 2.3 构造函数 2.4 get函数 3 ShmSafeUnmanage ...
- [kernel] 带着问题看源码 —— 进程 ID 是如何分配的
前言 在<[apue] 进程控制那些事儿>一文中,曾提到进程 ID 并不是唯一的,在整个系统运行期间一个进程 ID 可能会出现好多次. > ./pid fork and exec c ...
- Vue3.x+springboot集成pageoffice
说明:由于pageoffice浏览器是ie内核,vue3不兼容ie.所以需要把页面放在后端 一,前端项目: 1.index.html页面引用pageoffice.js <script type= ...
- 在 JS 中调整 canvas 里的文字间距
实现说明: 在 JS 中 canvas 原生没有支持对文字间距的调整,我们可以通过将文字的每个字符单独渲染来实现.本案例从 CanvasRenderingContext2D 对象的原型链上扩展了一个用 ...
- Chart.js (v2.9.4)--如何像高版本一样支持skipNull
项目开发中,用到Chart.js展示图表,用起来也非常方便,配置很灵活,很好用,给个数据集,设置一些配置值,实例化一个Chart出来,图表就非常丝滑地展现出来了. 但是作为开发人员都知道的一个真理,永 ...