嵌入式硬件-读懂原理图

2023-05-16

学习硬件的第一节课:学习读懂原理图

读懂原理图对嵌入式软件工程师和程序员尤为重要。在深入细节之前请注意,对所有的嵌入式设计人员来说、能懂得硬件工程师创建和使用的来描述其硬件设计的原理图和符号是非常重要的。无论硬件设计得多么复杂,不管有多少设计真正硬件的实践经验,这些图和符号都是迅速有效地理解复杂硬件设计的关键。它们还包含了与嵌入式程序员设计和硬件兼容的件的相关信息,并教会程序员如何成功地与硬件工程师沟通软件对硬件的需求。

下面介绍了几种不同类型工程中使用的硬件图。

  • 方框图:

    方框图通常在系统体系结构或更高的级别上呈现一个电路板的主要组件(处理器、总线,输入/输出、存储器)或某一个组件(如处理器)。简而言之,方图是对硬件抽掉其实现细节的一个基本概述。虽然方框图可以反映包含这些主要组件的实际物理布局,但它主要还是在系统体系结构级别呈现不同的组件或组件中的单元是如何作为一个整体工作的。它是描述和再现一个系统中的组件最简单的方法。方框图中使用的符号很简单,如用正方形或长方形代表芯片,用直线代表总线。方框图通常缺乏足够的细节、不足以使得软件设计者编写出所有能够准确控制硬件的底层软件(在没有经历大量头疼的调试、测试、出错甚至烧毁硬件的情况下)。然而,它们在传达硬件的基本概述方面非常有用、并为创建更详细的硬件图提供了基础。

在这里插入图片描述
​ 图1 AMD/国家半导体公司的x86参考板

  • 原理图:

    原理图是提供一个电路中所有器件或单个元件内部(从处理器到每一个电阻)更加详细的视图的电路图。原理图并不呈现电路板及组件的物理布局,而是提供系统中的数据流信息,定义各种信号的指定流向一一哪些信号在总线上的不同线路中传输,最终出现在处理器的引脚上,等等。在原理图中,使用原理图符号来描绘系统中的所有元件。它们通常看起来和其代表的物理器件并不相像,面是基于某种类的原理图符号标准对物理器件的一种简化表达。当试图确定系统的实际工作原理或通过调试硬件、编写和调试软件来管理硬件时,原理图对于硬件及软件设计者来说都是最有用的。

在这里插入图片描述
​ 图2 原理图示例

在这里插入图片描述
​ 图3 常用的原理图符号

  • 接线图:

    这种图用来表示电路板上或芯片内部的主要元件和次要元件之间的总线连接关系。在接线图中,用垂直及水平方向的连线来表示总线的信号线,并使用原理图符号或者更简单的符号(与板上元件或元件内单元在物理上比较相像)。这些图可以表示对组件或电路板的物理布局的近似描述。

  • 逻辑图:

    逻辑图使用逻辑符号(与、或、非、异或等)和逻辑输入/输出(1和0)来表示各种电路信息。它并不取代原理图,但可以帮助简化某些特定类型的电路以了解它们如何实现其功能。

  • 时序图:

    时序图显示电路中各种输入和输出信号的时序图形以及这些不同信号之间的关系。它们在硬件的用户手册和数据手册中是继方框图之后第二常见的

    不管是什么类型的图,为了看懂图,首先要学习图中使用的标准符号、约定以及规则。表1中展示了时序图中使用的符号示例以及与每个符号关联的输入/输出信号的约定。

    ​ 表1 时序图符号表
    在这里插入图片描述

图4中是一个时序图的示例,其中每行代表了不同的信号。关于图中信号的上升和下降的符号表达,上升时间由信号从低电平变化到高电平所需的时间表示,下降时间由信号要组件从高电平变化到低电平所需的时间表示(符号中斜线经历的整个时间)。当比较两个信号时,在两个被比较的信号的上升沿或下降沿的中心位置测量延迟时间。在图4中的第一个下降符号信号中,在信号B和C以及A和C之间有一个下降时间的延迟。比较图4中信号A和B的第一个下降符号,时序图表明两者之间没有延迟。

在这里插入图片描述
图4 时序图示例

欢迎关注,微信公众号
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

嵌入式硬件-读懂原理图 的相关文章

  • pandas str.endswith筛选结尾字符串为一个范围内的行

    span class token keyword import span numpy span class token keyword as span np span class token keyword import span pand
  • 聚类集成方法python实现(基于相似度、基于重标记法)

    一 写此篇的背景 有个同学给我两篇论文 基于聚类集成的特征选择方法研究 李玥 基于基聚类器对齐的聚类集成方法研究 杨康 xff0c 基于相似度的方法跟他讲了一遍他自己复现好了 xff0c 但是他觉得他的数据集有几万条 xff0c 时间和空间
  • pandas 如何获得每类A的月末数据B

    一 描述问题 如何取到下面这个dataframe中 xff0c 每一类Code对应的月末数据 df span class token operator 61 span pd span class token punctuation span
  • pandas groupby分组后对每个组进行fillna填值

    一 初始数据如下 xff0c 希望分组后 xff0c 组间数据互不干扰的填充 span class token keyword import span pandas span class token keyword as span pd s
  • VS2022配置Games101作业环境

    一 首先配置opencv4 43 contrib 1 opencv源码下载 访问github上的opencv主页 首先点进第一个opencv 我这里默认就是4 x xff0c 点开可以知道分支为4 x 还需要点Tags 我这里使用的是4 5
  • Games101 VS2022 C++ auto推断不出变量类型

    在写Games101 Homework2的时候 xff0c 下面这句的 auto推断不出3个变量的类型 span class token comment If so use the following code to get the int
  • 密度聚类:OPTICS算法详解

    很多人不理解OPTICS算法绘出的图该怎么理解 为什么波谷就算一类 xff0c 有个波峰又算另一类了 xff0c 本篇在第三部分的第2 3节详细讲这个是什么判别分类的 本篇会添加一些个人思考过程 xff0c 可能有不严谨的地方 xff0c
  • 密度聚类:OPTICS算法简单易懂版

    前几天写了一篇详解版 xff0c 感觉可能太详细了阅读量不高 xff0c 所以修改精简成这篇 很多人不理解OPTICS算法绘出的图该怎么理解 为什么波谷就算一类 xff0c 有个波峰又算另一类了 xff0c 本篇在第三部分的第2 3节详细讲
  • 跟着LearnOpenGL文档做的纹理显示不出来,但也不报错

    跟着LearnOpenGL文档入门章的纹理一节 xff0c 把源代码复制下载都运行不了 xff0c 有这么3条要注意的点 一 下载完stb image h xff0c 引用时要加上 define STB IMAGE IMPLEMENTATI
  • 【C++】一文搞懂C++中的std::是什么

    1 C 43 43 中的std 是什么 xff1f std 是个名称空间标示符 xff0c C 43 43 标准库中的函数或者对象都是在命名空间std中定义的 xff0c 所以我们要使用标准函数库中的函数或对象都要使用std来限定 标准库在
  • 详解GMM高斯混合模型EM模型

    一般讲到GMM就会讲到EM 我不过多的介绍EM算法 这里只是举一些例子来看看真实的GMM怎么用EM算的 一 GMM的作用 记住GMM的作用 xff0c 就是聚类 xff01 二 GMM有hard和soft两种 hard GMM和soft G
  • MiniAlphaGo黑白棋 蒙特卡洛搜索

    做个笔记 一 蒙特卡洛在黑白棋的应用 输入 xff1a 棋盘 x1d44f x1d45c x1d44e x1d45f x1d451 当前执子方 x1d450 x1d45c x1d459 x1d45c x1d45f 搜索时间 x1d461 x
  • 基于LLVM的C编译器--lcc——以CLion用SSH连接WSL Ubuntu22.04为例

    Windows 10 22H2CLion 2022 3 1Ubuntu 20 04 xff08 Microsoft Store内的WSL发行版 xff09 一 下载WSL xff0c 换源 xff0c 切换到WSL2 1 1 保证windo
  • Windows有CUDA但是没有nvcc命令

    明明有CUDA xff0c 但是cmd中输入nvcc V无效 但是如果打开anaconda prompt xff0c 输入nvcc V就有效 这可能是因为直接用的pytorch官网命令conda下载安装的 xff0c 然后又没有把anaco
  • win下配置pytorch3d

    一 配置好的环境 xff1a py 3 9 43 pytorch 1 8 0 43 cuda 11 1 cudnn 8 0 43 pytorch3d 0 6 0 43 CUB 1 11 0 你可能觉得pytorch3d 0 6 0版本有点低
  • 【pytorch3d】running build_ext error: [WinError 2] 系统找不到指定的文件

    在win10上安装pytorch3d时 xff0c 遇到如下错误 xff1a running build ext error span class token punctuation span WinError span class tok
  • windows下安装jax

    一 首先下载jaxlib 需要去这个非官方网站去找到适合自己的版本 xff0c 下载到本地 然后使用对应的虚拟环境pip install 该文件名即可 二 然后下载对应的jax 一行命令即可 pip span class token fun
  • STM32 HAL库串口收发数据

    STM32 HAL库串口收发数据 许多传感器的使用方法是 xff1a 单片机给传感器发送一帧数据 xff0c 然后传感器返回单片机一帧有用数据 xff0c 所以串口的收发功能十分重要 STM32cubeMX的配置 时钟和下载方式就不讲了 串
  • W7,显卡型号nvidia geforce 840M,安装tensorflow-gpu

    记录一下 xff0c 以防忘记 1 首先我拿驱动精灵把显卡驱动升到最新 xff0c 然后在NVIDIA 控制面板里查看支持CUDA9 1 xff0c 但是我下载了CUDA9 0 43 cudnn7 0 xff0c 先不用安装 注意 xff0
  • IP和MAC的作用

    IP地址的作用以及MAC地址的作用 MAC地址是一个硬件地址 xff0c 用来定义网络设备的位置 xff0c 主要是数据链路层负责 IP地址是IP协议提供的统一的地址格式 xff0c 为互联网上的每一个网络和每一台主机分配一个逻辑地址 xf

随机推荐

  • SPI简介

    SPI全称是Serial Perripheral Interface xff0c 也就是串行外围设备接口 SPI是Motorola公司推出的一种同步串行接口技术 xff0c 是一种高速 xff0c 全双工的同步通信总线 SPI时钟频率相比I
  • npm 错误码 EMISSINGARG

    EMISSINGARG Error npm ERR node v6 6 0 npm ERR npm v3 10 3 npm ERR code EMISSINGARG npm ERR typeerror Error Missing requi
  • axios.response返回数据格式

    axios response接口中存储的是如下内容 xff1a 96 data 96 是服务器的提供的回复 xff08 相对于请求 xff09 data 96 status 96 是服务器返回的http状态码 status 200 96 s
  • flask实现下载文件、前后端

    采用前后端分离的过程中 xff0c 前端只能下载静态文件中的文件或者url下载文件 但是 xff0c 一般情况下文件要么是远程或者存在于其他文件夹 这种情况就需要采用后端预先下载文件 xff0c 传递给前端 flask有几种文件传输方式 x
  • python+flask 简单并发,使用gevent库

    pip install geventfrom gevent wsgi import WSGIServer 关键这个WSGIServer 127 0 0 1 5000 app serve forever
  • java中Array.remove()方法,源码中不对负索引进行检查

    public E remove int index 检查remove源码是 xff0c 发现 其中对index 的检查仅限于上溢出检查 没有显示的对下溢出进行检查 xff1f rangeCheck index modCount 43 43
  • java- 类名.this.成员 和 this.成员 的区别

    this 成员 xff1a this用于本类中 xff0c 自身的引用 xff0c 调用自身对象属性 类名 this 成员 用于内部内 xff0c 调用外部类的成员 用 外部类 this 表示外部类的引用 xff0c 用以 和 自身类进行区
  • java异常 Exception in thread “main“ java.lang.IllegalArgumentException: Comparison method violates its

    Exception in thread 34 main 34 java lang IllegalArgumentException Comparison method violates its general contract at jav
  • 速查matplotlib-python中画图曲线的形状和颜色

    速查matplotlib python中画图曲线的形状和颜色 在属性值先写颜色 xff0c 后写形状如 xff1a r 红色曲线 b 蓝色短横线 等 字符描述 39 39 实线样式 39 39 短横线样式 39 39 点划线样式 39 39
  • python-pyplot直方图,标注直方图数据

    话不多说 由于自己一直忘记直方图的一些细节 xff0c 经常不用 xff0c 老得百度 xff0c 干脆自己记下来好了 这是直方图的写法与标注直方图的数据写法 如下 from matplotlib import pyplot as plt
  • 从零开始学JetsonTX2----can bus开发

    step by step implementation 搞硬件开发 xff0c 先把技术手册搞到手 这个网页把几乎Jetson tx2的开发资料都汇总了一下 找教程开始配置can所需要系统环境 NIVIDA社区的教程 xff1a https
  • CAN总线详解

    目录 CAN 协议简介1 xff0c 何为CAN 1 1 CAN的应用实例1 2 总线拓扑图1 3 CAN的特点 2 xff0c CAN 电气属性3 xff0c CAN 协议3 1 数据帧3 2 遥控帧3 3 错误帧3 4 过载帧3 5 间
  • 内存对齐规则总结

    由于某些硬件平台不能任意访问地址数据 xff0c 只能在某些地址处取某些特定类型的数据 xff1b 并且处理器访问未对齐的内存时 xff0c 需要多次读取并对多余数据进行剔除 xff0c 相较于对齐内存访问 xff0c 耗费了更多的时间 x
  • 一些常用库的使用(CMAKE部分)

    opencv span class token function find package span span class token punctuation span OpenCV span class token number 3 1
  • 将RTKLIB编译成静态库

    rtklib编译 在写自己的程序时 xff0c 想要调用rtklib h xff0c 和它的一些文件来进行运行 xff0c 想要将rtklib编译成静态库安装在系统的目录下 xff0c 这样基于rtklib的二次开发就不用再使用源码了 xf
  • TIM_SetCompare2()

    对于 void TIM SetCompare2 TIM TypeDef TIMx uint16 t Compare2 的理解 void TIM SetCompare2 TIM TypeDef TIMx uint16 t Compare2 C
  • C语言语句YPR[0]=(BUF[1]<<8|BUF[2]),以及 >> 8 &0xFF如何理解?

    C语言语句 YPR 0 61 BUF 1 lt lt 8 BUF 2 如何理解 这是一个赋值语句 xff0c 把等式右边的值赋给左边 xff1b 先来看右边是怎么运算的 xff0c 由于移位运算符 lt lt 的优先级大于位运算符 xff0
  • word文档编辑时字体突然发生变化解决方法

    word文档在编辑时字体突然发生变化 xff0c 第1步 点击 开始 xff0c 图片中右下角 箭头 第2步 选择需要的字体 xff0c 第3步 设置默认字体 xff0c 确定
  • AD(Altium Designer)如何铺铜

    在PCB PcbDoc文件中 xff1a 在软件下方选择 34 Top Layer 顶层 34 xff08 1 xff09 执行 34 放置 34 gt 铺铜 xff1b 或者快捷键 34 PG 34 会弹出 34 Properties 属
  • 嵌入式硬件-读懂原理图

    学习硬件的第一节课 学习读懂原理图 读懂原理图对嵌入式软件工程师和程序员尤为重要 在深入细节之前请注意 对所有的嵌入式设计人员来说 能懂得硬件工程师创建和使用的来描述其硬件设计的原理图和符号是非常重要的 无论硬件设计得多么复杂 不管有多少设