当前位置: 首页 > news >正文

嵌入式面试八股文(六)·ROM和RAM的区别、GPIO的八种工作模式、串行通讯和并行通讯的区别、同步串行和异步串行的区别

目录

1.  ROM和RAM的区别

2.  GPIO的八种工作模式

3.  串行通讯和并行通讯的区别

3.1  串行通讯

3.2  并行通讯

3.3  对比

4.  同步串行和异步串行的区别

4.1  时钟信号

4.2  数据传输效率

4.3  应用场景

4.4  硬件复杂性


1.  ROM和RAM的区别

ROM(Read-Only Memory)只读存储器是一种只能读出事先存储数据的固态存储器。ROM 的特点是在数据存储后,数据不可以被修改,即只能读取数据,不能写入。ROM 在断电后仍然可以保存数据,因此常用于存储固定的系统信息或程序,例如操作系统或预设的应用程序等。

主要特点:

永久性:ROM中的数据在断电时不会丢失,因此被称为非易失性存储器。
只读性:ROM的内容只能被读取,无法直接修改。它通常在制造过程中被预先写入或烧录,供计算机系统在启动时使用。


RAM(Random Access Memory)随机存取存储器是一种可以随机读写数据的存储器。RAM 的特点是数据可以被随机读取和写入,但只有在电源存在的情况下可以保持数据的完整性。RAM 主要用于存储运行时使用的数据和缓存,例如操作系统的临时数据或应用程序的缓存数据等。

主要特点:

临时性:RAM存储的数据在断电时会丢失,因此称为易失性存储器。
可读写:RAM可以被快速读取和写入,它的存储单元可以根据需要来读取和修改数据。
容量和速度:RAM的容量可以从几兆字节(MB)到数百GB不等,速度非常快,可以通过高速总线迅速访问数据。


        ROM 常用于存储固定的系统信息或程序,例如操作系统或预设的应用程序等。

        而 RAM 则主要用于存储运行时使用的数据和缓存,例如操作系统运行时的临时数据或应用程序的缓存数据等。

2.  GPIO的八种工作模式

浮空输入(GPIO_Mode_In_FLOATING):该模式下,GPIO口不连接任何功能,处于浮空状态,可以用于读取外部的开关状态或传感器信号。

上拉输入(GPIO_Mode_IPU):该模式下,GPIO口通过上拉电阻连接到正电源,可以用于读取外部的开关状态或传感器信号。

下拉输入(GPIO_Mode_IPD):该模式下,GPIO口通过下拉电阻连接到地电源,可以用于读取外部的开关状态或传感器信号。

模拟输入(GPIO_Mode_AIN):该模式下,GPIO口可以作为一个模拟输入口使用,通常用于读取模拟信号,例如温度、湿度等传感器信号。

开漏输出(GPIO_Mode_Out_OD):该模式下,GPIO口可以通过控制输出高低电平,实现线与逻辑,并且可以实现电平的转换。

复用开漏输出(GPIO_Mode_AF_OD):该模式下,GPIO口可以通过控制输出高低电平,实现线与逻辑和电平转换的同时,还可以作为其他外设的扩展功能使用。

推挽输出(GPIO_Mode_Out_PP):该模式下,GPIO口可以通过控制输出高低电平,实现线与逻辑和电平转换的同时,还可以作为其他外设的扩展功能使用。

复用推挽输出(GPIO_Mode_AF_PP):该模式下,GPIO口可以通过控制输出高低电平,实现线与逻辑和电平转换的同时,还可以作为其他外设的扩展功能使用。

3.  串行通讯和并行通讯的区别

3.1  串行通讯

        数据逐位传输,传输线少,长距离传输时成本低,但数据的传输控制较复杂。按照实现数据同步的方式,可以分为同步串行异步串行两种。

        成本较低,布线简单,主要适合长距离传输和简单的点对点连接。常用于计算机与外部设备(如串口通信)之间的通讯。

3.2  并行通讯

        数据位同时通过多条数据线同时传输,传输速度较快,通常需要多条数据线,因此布线复杂,成本较高。

        因为多个数据位同时传输,所以会受到信号完整性和时钟同步的限制。

        适合短距离和需要高数据传输速率的应用,常见于计算机内部(如 CPU 与内存之间的通信)。

3.3  对比

特性串行通信并行通讯
通讯距离较远较近
抗干扰能力较强较弱
传输速率较慢较快
成本较低较高

4.  同步串行和异步串行的区别

4.1  时钟信号

同步串行:使用共享的时钟信号来同步数据的发送和接收。发送和接收设备在同一时刻对数据位进行采样。

异步串行:不使用共享的时钟信号。数据位的发送和接收通过起始位和停止位来界定,设备在发送数据时自行控制时序。

4.2  数据传输效率

同步串行:通常具有更高的传输效率,因为数据可以连续传输,没有额外的起始位和停止位。

异步串行:由于需要起始位和停止位,传输效率稍低,但更易于实现和控制。

4.3  应用场景

同步串行:常用于高速数据传输和短距离通信,如 SPI 和 I2C 接口。

异步串行:常用于较简单的串行通信场景,如 UART,适合长距离和低速传输。

4.4  硬件复杂性

同步串行:通常需要额外的硬件支持来生成和管理时钟信号。

异步串行:硬件设计较简单,易于实现,适合资源有限的应用。

千题千解·嵌入式工程师八股文详解_时光の尘的博客-CSDN博客


http://www.mrgr.cn/news/70116.html

相关文章:

  • 连接实验室服务器并创建虚拟环境,从本地上传文件到linux服务器,使用requirement.txt安装环境需要的依赖的方法及下载缓慢的解决方法(Linux)
  • 如何在 Ubuntu 22.04 上安装 ownCloud
  • 微信小程序=》基础=》常见问题=》性能总结
  • Day44 | 动态规划 :状态机DP 买卖股票的最佳时机IV买卖股票的最佳时机III
  • jmeter常用配置元件介绍总结之用linux服务器压测
  • 数据结构中数据有序性/ 单调性 ——二分查找
  • 声学中频率概念
  • 云计算在智能交通系统中的应用
  • 【LLM Agents体验 2】利用Dify本地部署Qwen2.5:7B大模型的安装指南
  • Python 第三方库 PyQt5 的安装
  • 科研绘图系列:R语言多个图形组合(scatterplot heatmap)
  • 【题解】—— LeetCode一周小结45
  • Maven 项目模板
  • Python学习从0到1 day27 第三阶段 Spark ⑤ 搜索引擎日志分析
  • iOS问题记录 - 503 Service Temporarily Unavailable
  • TypeScript 中的三斜杠指令语法
  • zookeeper常用命令
  • 系统启动时将自动加载环境变量,并后台启动 MinIO、Nacos 和 Redis 服务
  • Golang | Leetcode Golang题解之第556题下一个更大元素III
  • Linux 文件权限
  • 面试基础算法题-日常面试足够
  • C++ | Leetcode C++题解之第557题反转字符串中的单词III
  • 哈佛商业评论 | 营销近视症 Marketing Myopia
  • 游戏设计:推箱子【easyx图形界面/c语言】
  • 设计模式设计模式
  • 定时器输入捕获实验配置