STM32单片机命名规矩
关于许多刚刚开始触摸STM32系列单片机的人来说,或许会对这一系列的单片机感到茫然,不知道这突然之间呈现的这么多的单片机他们之间到底是怎样去差异的,话不多说,直接上图:
注解:
(1)STM32指的是ST(意法半导体)公司出产的32bit的MCU(微操控器)
(2)F—指的是产品类型为通用类型
(3)1xx指的是产品的子系列
(4)封装指的是对应芯片引脚的封装格局
stm32的体系架构
一。首要说说STM32F10x芯片由丝印所体现出的共同点和差异。
先简略说说命名规矩:
101根本型,102USB根本型,103增强型,105或107互联型。
T:36脚,C:48脚,R:64脚,V:100脚,Z:144脚。
C:256K SRAM, D:384K SRAM, E:512K SRAM。
咱们正对芯片的丝印,会看到芯片左下角会有一个小圆点(正方向),有的在右上角会有一个稍大点的圆圈符号,接近左下角小圆点的管脚号为1,然后以逆时针方向,ZET6最终一个管脚号为144,VET6最终一个管脚号为100,便是Z的管脚多于V的,说以说Z的功用也要多于V的;接下来说说丝印上的ARM和ST,crotex-Mx内核是由ARM公司(就叫做IP厂商)规划的,一块32除了内核还必须有外围电路,ST公司在取得ARM内核规划的授权后,据此规划出外围电路(SOC厂商,像三星,苹果,飞思卡尔。。。都是SOC厂商,其运用的内核都是IP厂商授权的),比如说贮存程序的FLASH,贮存变量的SRAM,外设(GPIO,IIC,SPI,USTAR等等),小结一下32的芯片构架是由内核(驱动单元)和外设(被迫单元)组成。
二.STM32F10xx 的体系结构的了解
(1)驱动单元
Icode总线:
咱们写好的程序写好后通过编译都变成一条条指令存储在外设的FLASH里边,内核要读取这些指令来履行程序就必须通过Icode总线(专门用来取指)。
DCode总线与DMA总线:
即为DATA,咱们知道常量const 寄存在内部FLASH里边,而变量存在内部SRAM里边。这些数据能够由DCode和DMA来读取,为了防止两者一起去读取数据然后形成抵触,所以在两者读取数据的时分会有一个总线矩阵来裁决谁来读取数据。
System总线:
读取数据,最首要仍是用来拜访外设的寄存器,即读写寄存器都是通过这条总线来完结的。
DMA总线:
说先说这条总线也是首要老传输数据的,这个数据能够是某个外设的数据寄存器,能够是SRAM,能够是内部的FLASH
咱们以一个例子来阐明DMA总线的效果,还有简略的差异一下DMA和DCode的差异,假如咱们没有DMA ,现在要从SRAM里读取一个数据到内部的外设数据寄存器DR,首要CPU通过DCode总线将数据从SRAM读到CPU的内部的通用寄存器里来暂存数据,然后在通过DCode总线将数据传到DR,这样通过了CPU作为数据的中转。可是咱们现在有了DMA总线,只需求CPU发送指令就能够将SRAM里的数据直接发送到DR。
(2)被迫单元
内部FLASH:
内部闪存存储器,咱们编写好的程序通过编译后变成一条条指令寄存在这里,Crotex-Mx通过ICode总线拜访内部FLASH来取指。
内部SRAM:
StaTIc Random Access Memory
它是一种具有停止存取功用的内存,不需求改写电路即能保存它内部存储的数据。不像DRAM(Dynamic Random Access Memory)那样需求改写电路,每隔一段时间,固定要对DRAM改写充电一次,不然内部的数据即会消失,因而SRAM具有较高的功用,可是SRAM也有它的缺陷,即它的集成度较低,相同容量的DRAM内存能够规划为较小的体积,可是SRAM却需求很大的体积,所以在主板上SRAM存储器要占用一部分面积。
当然SRAM的长处便是速度快,不用合作内存改写电路,可进步全体的工作功率。
SRAM的缺陷是集成度低,功耗较大,相同的容量体积较大,并且价格较高,所以少数用于关键性体系以进步功率。
像程序的变量,仓库等等的开支都是依据内部的SRAM,Crotex-Mx通过DCode总线来拜访它。
FSMC:
Flexible StaTIc Memory Controller
可变静态存储操控器,这是STM32系列选用一种新式的存储器扩展技能,因为通过对特别功用寄存器的设置,FSMC能够依据不同的外部存储器类型,宣布相应的数据/地址/操控信号类型以匹配信号的速度,然后使得STM32系列微操控器不只能够运用各种不同类型、不同速度的外部静态存储器,并且能够在不添加外部器材的情况下一起扩展多种不同类型的静态存储器,满意体系规划对存储容量、产品体积以及本钱的归纳要求。
着重一下,只能拓宽静态内存。
STM32F10xx体系时钟树:
先来说说5个时钟源,如图左面部分:
1.HSI是高速内部时钟,RC振荡器频率为16MHz,能够直接作为体系时钟或通过二分频后用作PLL的输入。
2.HSE是高速外部时钟,可接4~26MHz石英陶瓷谐振器或许接外部时钟源,能够直接作为体系时钟或通过二分频后用作PLL的输入。
3.LSE是低速外部时钟,接32.768KHz石英晶体,首要是RTC时钟源。
4.LSI是低速内部时钟,RC振荡器,32KHz左右,供独立看门狗和主动唤醒单元运用。
5.PLL围锁相环倍频输出,32上面有两个PLL