寄存器与固件库开发的简介

STM32的芯片架构
STM32芯片主要由内核片上外设组成
以下图为例(我们所使用的STM32就属于Cortex-M系列)
在这里插入图片描述
芯片制造商得到CM3处理器内核的使用授权后,它们就可以把CM3内核用
在自己的硅片设计中,添加存储器,外设, I/O以及其它功能块。不同厂家设计出的单片机
会有不同的配置,包括存储器容量、类型、外设等都各具特色。(以stm32F103为例,就是属于ARMv7架构,cortex-M系列下的M3核,为ST公司生产的芯片)
M3/M4处理器的框图在这里插入图片描述
注:流水线技术就是将一条指令分解成一连串执行的子过程。例如:把指令的执行过程细分为取指令、指令编码、取操作数和执行 4 44 个子过程。这样多条指令可以重叠执行,因为取指令操作、指令编码操作、取操作、执行操作 是可以同时执行的。如下图所示:其中 1、2、3、4、5 表示要处理 5 条指令。
在这里插入图片描述
Stm32 存储器映射
STM32芯片上可访问的存储空间被分为八个主要块,每个块为512MB.(程序存储器、数据存储器、寄存器和输入输出端口都在这)

每一个存储器本身并没有地址,给每个存储器分配地址的过程叫做存储器映射,这是由生产厂商分配的,而给存储器重新分配地址叫做存储器的重映射
每一个存储器里面由各种外设各种寄存器,给寄存器分配地址的过程叫做寄存器映射,重新分配地址叫做寄存器的重映射
在这里插入图片描述
在这里插入图片描述
其中我们主要使用学习到的就是Block0 Block1 Block2三个部分
在这里插入图片描述
片上外设根据不同的时钟,分为三条总线:
在这里插入图片描述
寄存器及寄存器映射
给特定功能的内存单元起个别名就叫寄存器,给已经分配好地址的有特定功能的内存单元起别名就叫寄存器映射
寄存器的学习与使用我们在51单片机中就有接触过。
那么如何在STM32中访问寄存器内容呢?

在这里插入图片描述
以GPIO这个外设为例子:
1.确认挂接在那个总线上,找到外设基地址;
2.通过翻阅手册确认端口地址
3.确认寄存器地址
3.通过阅读手册确认寄存器的基本功能

具体流程大家查看:
https://blog.csdn.net/zcy_cyril/article/details/105833995

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值