当前位置:网站首页>单片机学习笔记3--单片机结构和最小系统(基于百问网STM32F103系列教程)
单片机学习笔记3--单片机结构和最小系统(基于百问网STM32F103系列教程)
2022-07-23 05:43:00 【山、】
第三章 单片机结构和最小系统
3.1 STM32结构

ARM公司负责设计内核,芯片厂商根据需求添加各类组件,生产出对应的芯片售卖。
上图中,Cortex-M3内核,调试系统由ARM公司设计;内部总线、外设、存储单元、时钟和复位等部分都由ST公司开发。
外设和存储单元与内核之间的通信通过内部总线实现。
3.1.1 总线结构
所谓总线(Bus),是指计算机设备和设备之间传输信息的公共数据通道。每条总线都只能对规定的地址范围进行访问。

1、ICode(Instruction Code):通过FLITF连接flash,用于读取flash中的指令。
2、DCode(Data Code):通过一个总线矩阵Bus matrix连接FLITF在连接flash,用于读取flash中的数据。
3、System系统总线:通过总线矩阵访问指令、数据、调试模块。连接内核与总线矩阵,然后与AHB,SRAM等相连。
4、DMA总线:连接通道与总线矩阵,产生DMA请求
其中FLITF(flash interface 闪存存储器接口)。AHB system bus 经过电桥电路分为APB1和APB2两条总线,分别挂载不同的外设。
在嵌入式领域AHB和APB是最常用的总线。AHB(Advanced High-performance Bus), 高速总线,用来接高速外设的,一般用于CPU与内部的高速RAM、 FLASH、DMA、Bridge的连接。APB (Advanced Peripheral Bus)高级外设总线( 低速总线),用来接低速外设的,一般用于连接外部设备,对性能要求不高,而考虑低功耗问题。
基于这个总线结构,ICode、Dcode、System Bus都是AHB总线。这里AHB系统总线经过两个AHB-APB桥转换成了两个APB总线。APB1上挂接有DAC、UART等外设,其最高频率可达36MHz;APB2上挂接有ADC、GPIO等外设,其最高频率可达72MHz。
3.1.2 存储结构
存储器的编址方式有统一编址和独立编址。
统一编址(存储器映像编址):外设和内存共用一片存储空间,同一地址,只能属于外设或内存之间的一个,通过访问的地址的不同判断是对外设还是对内存进行操作,访问端口和内存的指令是相同的。
独立编址:I/0端口地址不占用存储空间的地址范围,这样,在系统中就存在了另一种与存储地址无关的IO地址,CPU也必须具有专用与输入输出操作的IO指令和控制逻辑。
1、ARM存储结构
ARM Cortex-M3系列的处理器,采用存储器与I/O设备(外设)统一编址的方式,将部分存储器地址范围用于外设,这种通过存储器地址访问外设的方式,称为存储器地址映射。
对于32位的处理器,可寻址的范围为232字节,即232= 4 × 1024 × 1024 × 1024 = 4GB,也就是0x00000000至0xFFFFFFFF。
ARM将这4G空间从低地址到高地址依次划分为代码区(Code)、片上SRAM区(SRAM)、片上外设(Peripheral)、片外RAM(External RAM)、片外外设(External Device)和系统级(System level)。
2、STM32存储结构
ST公司基于上述32位处理器存储规定,设计了基于cortex-M3内核的存储架构。
其将4G空间分为了Block0、Block1、Block2、……、Block7,共8块,每块大小为512MB。

具体映射图在STM32F103xE数据手册——40页。
Block0包括操作字节空间、系统存储空间、flash、启动引脚存储空间等。
Block1包括64kb的SRAM还有一些预留空间。
Block2是STM32外设地址映射空间,包括所有片上外设存储空间比如GPIO、EXTI、DMA、ADC、IIC、SPI、USART、TIM等等。
Block3、Block4使用FMSC接口扩展分为了4个bank。
Block5是FMSC寄存器。
Block6、Block7没做开发,保留ARM公司原有设置.
3.2 最小系统
单片机最小系统是指用最少的原件组成单片机可以工作的系统,通常由以下几部分组成。
1、电源电路

将3.3V的电源输入给单片机,提供工作的电源。
2、时钟电路

使用两个外部晶振源,高速8MHz、低速32.768KHz,根据这两个外部晶振元为单片机配置时钟。具体配置方式后面介绍。
3、复位电路

复位电路,通过NRST引脚的高低电平控制复位信号。按键松开,NRST拉高,按键按下,NRST拉低,产生一个低电平的复位信号,芯片就会复位。POWER引脚连接电源转换芯片的使能引脚,若POWER被拉低,则电源转换就会停止,整个芯片的电源就被关闭了。通过复位引脚和电源引脚两个方面同时控制芯片的复位。
4、调试/下载电路

将单片机的JTAG和SWD接口分别引出来接到两个对应的排座上,通过这两种接口电路,单片机可以下载、调试程序。
5、启动方式选择电路

单片机的启动方式由boot0和boot1控制,具体内容之前介绍过。这里用两个开关对boot0和boot1的状态进行控制。
(一)boot0 = 0,boot1 = 0/1时,从用户闪存(flash)启动,是STM32内置的Flash,一般我们使用JTAG或者SWD模式下载程序时,就是下载到这个里面,重启后也直接从这启动程序。
(二)boot0 = 1,boot1 = 0时,从系统存储器启动,这种模式启动的程序功能是由厂家设置的。
(三)boot0 = 1,boot1 = 1时,从内置SRAM启动,既然是SRAM,自然也就没有程序存储的能力了,这个模式一般用于程序调试。
一般来说,对于不同的CPU,最小系统的电路会有不同的参考电路,可以再对应的数据手册中查询。以上五个最小系统电路图在STM32F103xE数据手册中都能找到相应的参考电路。
边栏推荐
- 论文解读:《开发和验证深度学习系统对黄斑裂孔的病因进行分类并预测解剖结果》
- Introduction and practice of Google or tools for linear programming
- How to build a liquid cooling data center is supported by blue ocean brain liquid cooling technology
- Lvgl8.1 version notes
- Installation and use of APP automated testing tool appium
- 以不太严谨但是有逻辑的数学理论---剖析VIO之预积分
- Eigen multi version library installation
- 2021信息科学Top10发展态势。深度学习?卷积神经网络?
- Inheritance and polymorphism
- Necessary mathematical knowledge for machine learning / deep learning
猜你喜欢

Gartner research: how is China's digital development compared with the world level? Can high-performance computing dominate?

Analyze the pre integration of vio with less rigorous but logical mathematical theory

Six trends and eight technologies of high-performance computing in data centers under "data center white paper 2022" and "computing from the east to the west"

利用pycaret:低代码,自动化机器学习框架解决回归问题

NLP自然语言处理-机器学习和自然语言处理介绍(一)

VIO---Boundle Adjustment求解过程

笔记 | 百度飞浆AI达人创造营:让人拍案叫绝的创意都是如何诞生的?

硬件知识2--协议类(基于百问网硬件操作大全视频教程)

知识图谱、图数据平台、图技术如何助力零售业飞速发展

How to develop the liquid cooled GPU server in the data center under the "east to West calculation"?
随机推荐
The use of padding.nn.bceloss
How to develop the liquid cooled GPU server in the data center under the "east to West calculation"?
保存实质审查请求书出现Schema校验失败的解决方法
Using or tools to solve the path planning problem with capacity constraints (CVRP)
ARM架构与编程4--串口(基于百问网ARM架构与编程教程视频)
K核苷酸频率(KNF,k-nucleotide frequencies)或K-mer频率
利用or-tools来求解带容量限制的路径规划问题(CVRP)
g2o安装路径记录--为了卸载
单片机学习笔记8--按键和外部中断(基于百问网STM32F103系列教程)
时间序列的数据分析(三):经典时间序列分解
After the VR project of ue4.24 is packaged, the handle controller does not appear
论文解读:《一种利用二核苷酸One-hot编码器识别水稻基因组中N6甲基腺嘌呤位点的卷积神经网络》
Nt68661 screen parameter upgrade-rk3128-start up and upgrade screen parameters yourself
NVIDIA 英伟达发布H100 GPU,水冷服务器适配在路上
论文解读:《利用注意力机制提高DNA的N6-甲基腺嘌呤位点的鉴定》
Notes | Baidu flying plasma AI talent Creation Camp: detailed explanation of deep learning model training and key parameter tuning
What technologies are used in pharmaceutical research and development in the field of life sciences? Cryoelectron microscope? Molecular simulation? IND?
Solution to schema verification failure in saving substantive examination request
使用PyOD来进行异常值检测
单片机学习笔记5--STM32时钟系统(基于百问网STM32F103系列教程)