【SoC基础】单片机之寄存器解析

📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨

📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852

📢:文章若有幸对你有帮助,可点赞 👍 收藏 ⭐不迷路🙉

📢:内容若有错误,敬请留言 📝指正!原创文,转载注明出处

文章目录

  • 1、寄存器位置
  • 2、寄存器种类
    • [2.1 通用用途寄存器](#2.1 通用用途寄存器)
    • [2.2 CPU执行相关寄存器](#2.2 CPU执行相关寄存器)
    • [2.3 外设控制寄存器](#2.3 外设控制寄存器)
  • [3. 寄存器在CPU访问外设过程中起到的作用](#3. 寄存器在CPU访问外设过程中起到的作用)

1、寄存器位置

寄存器通常存放在单片机的内部。

具体来说,寄存器是集成在单片机的中央处理器(CPU)内,作为CPU的一部分,用于暂存指令、数据和地址等信息,以支持CPU快速地进行数据处理和运算。此外,一些特殊功能寄存器还分布在单片机的其他功能模块中,用于控制和配置这些模块的工作模式和状态,如定时器、串口等模块都有各自对应的控制寄存器。

2、寄存器种类

寄存器种类繁多,在不同的系统和场景下有着不同的划分方式,以下为你从通用用途、CPU执行、外设控制三个方面对寄存器进行分类并制成表格:

2.1 通用用途寄存器

寄存器类型 说明 应用场景
通用数据寄存器 用于暂存数据和运算结果,可进行算术、逻辑运算等操作。如8086CPU中的AX、BX、CX、DX 数据处理、运算操作
地址寄存器 存储内存地址,方便CPU快速定位和访问内存单元。如基址寄存器、变址寄存器等 内存寻址、数据读取与存储

2.2 CPU执行相关寄存器

寄存器类型 说明 应用场景
程序计数器(PC) 存放下一条要执行的指令地址,使CPU按顺序执行程序 程序执行流程控制
指令寄存器(IR) 存放当前正在执行的指令,供CPU进行译码和执行 指令译码与执行
状态寄存器(PSW) 包含各种标志位,反映运算结果的状态(如进位、溢出、零标志等)和CPU的工作状态 条件判断、程序分支控制

2.3 外设控制寄存器

寄存器类型 说明 应用场景
控制寄存器 用于配置和控制外设的工作模式、功能等。如串口通信的波特率控制寄存器、定时器的工作模式控制寄存器 外设功能配置与控制
状态寄存器 反映外设的当前工作状态,如设备是否忙、是否有数据就绪等 外设状态监测与处理
数据寄存器 用于外设与CPU之间的数据传输,如串口的数据发送寄存器和接收寄存器 外设数据读写

3. 寄存器在CPU访问外设过程中起到的作用

本质上,CPU访问外设或存储器主要是通过地址总线、数据总线和控制总线来实现的,而不是寄存器。不过,寄存器在这个过程中也起着重要的辅助作用。

CPU通过地址总线发送地址信号来指定要访问的外设或存储器的具体位置,通过控制总线发送控制信号来确定操作类型(如读或写),通过数据总线来传输数据。

寄存器在其中的作用是暂存数据、地址和控制信息等,例如,CPU在访问外设或存储器之前,会先将地址信息存入地址寄存器,将数据存入数据寄存器,然后通过总线将这些信息发送出去。在数据传输完成后,也会将接收到的数据存入相应的数据寄存器。所以寄存器是协助CPU进行数据处理和传输的重要部件,但并非CPU访问外设或存储器的本质方式。

相关推荐
xuxie9912 分钟前
start7 电机闭环控制
单片机·嵌入式硬件
嵌入式-老费37 分钟前
esp32开发与应用(播放wav音频文件)
嵌入式硬件
LCG元1 小时前
嵌入式开发踩坑排查实战:从 STM32 外设初始化到 Linux SPI 驱动的 15 类硬件疑难故障深度复盘
linux·stm32·单片机
piaoyiren2 小时前
基于 STM32F103 蓝牙遥控云台超声波避障小车
stm32·单片机·嵌入式硬件·蓝牙·超声波测距·直流电机
ShallWeL2 小时前
Orin 上 USB / CSI 相机采集踩坑
人工智能·嵌入式硬件·智能硬件·agi
Zyed2 小时前
[FreeRTOS]Day8-Part1队列+红外遥控器玩游戏+旋转编码器玩游戏
stm32·单片机·玩游戏
JSMSEMI113 小时前
JSM4430 30V N 沟道增强型 MOSFET
单片机·嵌入式硬件
XMAIPC_Robot3 小时前
RK3588+FPGA半导体设备量产踩坑大全|发热、时序漂移、推理抖动、成像干扰、EMC干扰方案
人工智能·嵌入式硬件·fpga开发·arm+fpga
朝饮坠露兮14 小时前
#浮动源 vs 共地源:模拟 IC 测试中的 VI 源架构详解
嵌入式硬件
安妮细水长流17 小时前
汽车电子面试问题记录
单片机