前言

  原理图有一些常用电路。
  本篇就将集中常用电路分析完,如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. 如何可视化编写和编排你的 K8s 任务

    简介: 通过任务调度 SchedulerX 来调度你的 K8s 任务,能够降低学习成本,加快开发效率,让你的任务失败可报警,出问题可排查,打造云原生可观测体系下的可视化 K8s 任务. 作者:学仁   ...

  2. Apsara Stack 技术百科 | 浅谈阿里云混合云新一代运维平台演进与实践

    ​简介:随着企业业务规模扩大和复杂化及云计算.大数据等技术的不断发展,大量传统企业希望用上云来加速其数字化转型,以获得虚拟化.软件化.服务化.平台化的红利.在这个过程中,因为软件资产规模持续增大而导致 ...

  3. 基于链路思想的SpringBoot单元测试快速写法

    ​简介:本文更偏向实践而非方法论,所提及的SpringBoot单元测试写法亦并非官方解,仅仅是笔者自身觉得比较方便.效率较高的一种写法.每个团队甚至团队内的每位开发可能都有自己的写法习惯和风格,只要能 ...

  4. OceanBase再破纪录!核心成员陈萌萌:坚持HTAP就是坚持我们做数据库的初心

    简介: 2021年5月20日,据国际事务处理性能委员会(TPC,Transaction Processing Performance Council)官网披露,蚂蚁集团自主研发的分布式关系型数据库Oc ...

  5. [GPT] 用dogecoin接受付款,如何实现收款回调,不借助中心化的第三方

      要在不借助中心化的第三方的情况下实现Dogecoin的收款回调,您可以按照以下步骤进行操作: 1. 设置一个用于接收收款回调的URL:您需要在您的网站或应用程序中设置一个用于接收收款回调的URL. ...

  6. [FAQ] VScode 用户代码片段设置

      以PHP为示例,配置如下: { "dpe": { "prefix": "dpe", "body": [ " ...

  7. WPF 已知问题 BitmapDecoder.Create 不支持传入 Asynchronous 的文件流

    这是在 GitHub 上有小伙伴报的问题,在 WPF 中,不支持调用 BitmapDecoder.Create 方法,传入的 FileStream 是配置了 FileOptions.Asynchron ...

  8. dotnet C# 如果在构造函数抛出异常 析构函数是否会执行

    假设在某个类型的构造函数里面抛出了异常,那么这个对象的析构函数是否会执行 如下面代码 private void F1() { try { _ = new Foo(); } catch { // 忽略 ...

  9. 算法~PBKDF2-SHA让密码更安全

    摘要:在当今的数字世界中,密码安全是至关重要的.为了保护用户密码免受未经授权的访问和破解,Password-Based Key Derivation Function 2 (PBKDF2)算法成为了一 ...

  10. python教程6.1-模块和包

    模块分类 1.内置标准模块(⼜称标准库)执⾏help('modules')查看所有python⾃带模块列表 2.第三⽅开源模块,可通过pip install 模块名 联⽹安装 3.⾃定义模块 模块导入 ...