【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访问外设或存储器的本质方式。

相关推荐
喜欢下雨t1 小时前
【嵌入式———SPI的基本操作——实验需求:案列1:软件模拟实现SPI协议和STM32的SPI模块实现(硬件实现)】
stm32·单片机·嵌入式硬件
金色光环1 小时前
1.stm32使用SSD1322 驱动3.12寸OLED
stm32·单片机·嵌入式硬件
腾飞的信仰8 小时前
51单片机同一个timer 作为定时器和波特率发生器么?
网络·单片机·51单片机
思考的味道11 小时前
系统的从零开始学习电子的相关知识,该如何规划?
嵌入式硬件
猿饵块13 小时前
STM32--PWM--函数
stm32·单片机·嵌入式硬件
学习噢学个屁13 小时前
基于51单片机步进电机控制—9个等级
c语言·单片机·嵌入式硬件·51单片机
GXSC15 小时前
国芯思辰| 医疗AED可使用2通道24位模拟前端SC2946(ADS1292)
嵌入式硬件
LaoZhangGong12315 小时前
分析rand()和srand()函数的功能
c语言·经验分享·stm32·单片机
国科安芯15 小时前
自研MCU芯片闪存驱动的实现:OpenOCD详细过程记录与操作指南
单片机·嵌入式硬件·架构
Sandman6z18 小时前
STM32CubeMX安装及使用分享
stm32·嵌入式硬件