前言

  原理图有一些常用电路。
  本篇就将集中常用电路分析完,如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原理图详解的更多相关文章

  1. “全栈2019”Java第七十七章:抽象内部类与抽象静态内部类详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  2. 分享我开发的网络电话Android手机APP正式版,图文详解及下载

    分享我开发的网络电话Android手机APP正式版,图文详解及下载 分享我开发的网络电话Android手机APP正式版 实时语音通讯,可广域网实时通讯,音质清晰流畅! 安装之后的运行效果: 第一次安装 ...

  3. Android开发之手势滑动(滑动手势监听)详解

    Android开发之手势滑动(滑动手势监听)详解 在Android应用中,经常需要手势滑动操作,比如上下滑动,或左右方向滑动,处理手势滑动通常有两种方法:一种是单独实现setOnTouchListen ...

  4. 硬件开发笔记(一):高速电路设计Cadence Aleego软件介绍和安装过程

    前言   红胖子软硬通吃的前提的使用AD,涉及到高速电路板,要配合高速硬件工程师,使用Aleegro更合适,遂开启了Aleegro设计电路板学习,过程保存为开发笔记,旨在普及和沟通技术,共同进步,学无 ...

  5. 【JAVAEE学习笔记】hibernate01:简介、搭建、配置文件详解、API详解和CRM练习:保存客户

    今日学习:hibernate是什么 一.hibernate是什么 框架是什么: 1.框架是用来提高开发效率的 2.封装了好了一些功能.我们需要使用这些功能时,调用即可.不需要再手动实现. 3.所以框架 ...

  6. [Java入门笔记] 面向对象编程基础(二):方法详解

    什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能上来看,方法都有点类似与函数.但是,方法与传统的函数还是有着不同之处: 在 ...

  7. 【Android UI设计与开发】8.顶部标题栏(一)ActionBar 奥义·详解

    一.ActionBar介绍 在Android 3.0中除了我们重点讲解的Fragment外,Action Bar也是一个非常重要的交互元素,Action Bar取代了传统的tittle bar和men ...

  8. 【Android UI设计与开发】8.顶部标题栏(一)ActionBar 奥义·详解

    一.ActionBar介绍 在Android 3.0中除了我们重点讲解的Fragment外,Action Bar也是一个非常重要的交互元素,Action Bar取代了传统的tittle bar和men ...

  9. STM32F412应用开发笔记之八:迪文串口屏显示驱动

    迪文的显示屏使用起来比较方便,其使用串口通讯,即可支持RS232,又可以支持TTL电平.在NUCLEO-F412ZG实验板上,USART2已经引到了CN9上,我们就利用USART2来实现与迪文串口屏的 ...

  10. 硬件开发笔记(四):硬件开发基本流程,制作一个USB转RS232的模块(三):设计原理图

    前者   前面建立好的基础的元器件,下面开始设计原理图.   需求 USB转RS232,输出RS232 可以选择性输出5V的TTL 可以选择性输出3.3V的TTL   设计原理图 步骤一:CH340G ...

随机推荐

  1. 力扣5(java)-最长回文串(中等)

    题目: 给你一个字符串 s,找到 s 中最长的回文子串. 示例 1: 输入:s = "babad"输出:"bab"解释:"aba" 同样是符 ...

  2. 力扣190(java)-颠倒二进制位(简单)

    题目: 颠倒给定的 32 位无符号整数的二进制位. 提示: 请注意,在某些语言(如 Java)中,没有无符号整数类型.在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论 ...

  3. 零基础玩转SLS日志查询-SLS Query Builder发布

    ​简介:日志服务(Log Service,简称 SLS) 是阿里云提供的行业领先的日志大数据解决方案,一站式提供数据收集.清洗.分析.可视化.告警等功能.智能查询分析是数据中台重要的一环,SLS支持秒 ...

  4. dotnet 6 通过 DOTNET_ROOT 让调起的应用的进程拿到共享的运行时文件夹

    我的应用是独立发布的,在用户的设备上不需要额外去安装 .NET 运行时.但是我的应用有一个需求是下载另一个应用作为插件,由本应用调起插件进程.本文告诉大家如何解决调用插件的进程时,赋值给插件进程运行时 ...

  5. 快速入门一篇搞定RocketMq-实现微服务实战落地

    1.RocketMq介绍 RocketMQ起源于阿里巴巴,最初是为了解决邮件系统的高可靠性和高性能而设计的.在2016年开源分布式消息中间件,并逐渐成为Apache顶级项目.现在是Apache的一个顶 ...

  6. PLC输出指令频率F计算

    本文章为学习记录,水平有限,望各路大佬们轻喷!!!    转载请注明出处!!!

  7. Swift File Manager 三种文件路径查找方法对比

    目录 1. 引言 2. 三种文件路径查找方法 2. 1 NSSearchPathForDirectoriesInDomains(_:_:_:) 2.2 urls(for:in:) 2.3 url(fo ...

  8. ruby rails 批量插入数据,bulk_insert-----Gem包使用

    Gemfile文件里添加 gem 'bulk_insert' #批量插入 命令行执行安装依赖 bundle install 数据源 ["1.180.3.187", 161, 260 ...

  9. 04.2 go-admin前后端打包为一个服务上线

    目录 一.思路: 二.打包go-admin-ui为静态文件 a.修改配置文件 b.打包 c.复制dist到go-admin的static目录里 三.配置go-admin a.配置路由 b.访问页面 视 ...

  10. 26ObjectStream

    ObjectStream ObjectOutputStream 用于将属性和内容保存到文件中,保存数据类型和值,即序列化,该流为处理流 static和transient修饰的属性无法序列化,切被序列化 ...