欢迎光临散文网 会员登陆 & 注册

单片机中都有FLASH还需要EEROM吗?

2022-05-10 22:04 作者:大方老师单片机课堂  | 我要投稿

单片机中FLASH为啥还需EEROM


///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以~点我头像黑色字体加我地球呺也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比///

既然打算学,基础的东西元件的得知道是什么,这样写代码的时候才能知道自己在干什么!


ROMFlash断电后都能储存数据RAM则不能

其实闪存flashROM的一种它的全---FLASH EEPROM

EEPROM---电可擦除可编程只读存储器

Flash

Flash是⼀种⾮易失性存储器,即断电之后数据也不会丢失,这个存储器的特点是不能以字节的方式擦除信息,它按扇区block)操作

32的芯片有些参数 Flash的大256k64k512k,它可以用于存储代码,也可以用于存储数据。

我们编译好的程序就放在这个地方。内核通 ICode总线来取里面的指令。

也存放常 const修饰的

SRAM

静态随机存取存储器SRAM)是随机存取存储器的⼀种。所谓,是指这存储器只要保持通电,⾥⾯储存的数据就可以恒常保持。

相对之下,动态随机存取存储器DRAM)⾥⾯所储存的数据就需要周期性地更新

程序的变量,堆栈等的开销都是基于内部SRAM。内核通DCode总线来访问它。

单片机中FLASH为啥还需EEROM

flash可以一个字节一个字节写,但是删除的话,得一整个扇区删除。

目前常见flash一个扇区4k的大小。如果你只要删改一个哪怕一个字节的数据。都要先flash的至少一个扇区的数据读ram里。然后修改。改好了后再把这个扇区的数据再存回去。如果只是小数据量的修改。则这样一折腾,操作复杂。而mega3282kRAM。存不下一个扇区的数据。所以内置EEPROM,可以按字节删改。

stm32 F10xxx系统结构,图下面是每个名词的介绍,结合着看

系统构架

四个驱动单:

.CortexTM-M3DCode线(D-bus)系统总线(S-bus)

.DMA1DMA2

四个被动单元

.SRAM

.内部闪存存储器

.FSMC

.AHBAPB(AHB2APBx),它连接所有APB设备

我们可以把驱动单元理解成CPU部分,被动单元都理解成外设。下面我们简单介绍下驱动单元和被动单元的各个部件

这些都是通过一个多级AHB总线构架相互连接,如下图所:

AHB总线延伸出来的两APB1APB2总线,上面挂载STM32各种各样的特色外设。我们经常说GPIO、串口I2CSPI这些外设就挂载在这两条总线上,这个是我们学STM32的重点,就是要学会编程这些外设去驱动外部的各种设备。


ICode总线

该总线CortexTM-M3内核的指令总线与闪存指令接口相连接。指令预取在此总线上完成。

ICodeIInstruction,即指令。程序编译之后生成的二进制文件都是一条条指令,烧录后寄存FLASH中,内核要读取这些指令来执行程序就必需通ICode总线,它简直每时每刻都须要被使用,它是专门用来取指的。

由上图也可看ICodeM3内核Flash接口

DCode总线

该总线CortexTM-M3内核DCode总线与闪存存储器的数据接口相连(常量加载和调试访

)

DCodeDData,即数据,那说明这条总线是用来取数的。我们在写程序的时候,数据有常量和变量两种,常量就是固定不变的,C语言中const关键字修饰,是放到内部FLASH?当中的,变量是可变的,不管是全局变量还是局部变量都放在内部SRAM。由于数据能够Dcode总线DMA总线访问,所以为了避免访问冲突,在取数的时候须要经过一个总线矩阵来仲裁,决定哪个总线在取数。

系统总线

此总线连CortexTM-M3内核的系统总线(外设总线)到总线矩,总线矩阵协调着内核DMA

的访问。

DMA总线

线 DMAAHB线 ,线 CPU DCode DMASRAM、闪存和外设的访问。

总线矩阵

总线矩阵协调内核系统总线DMA主控总线之间的访问仲,仲裁利用轮换算法。在互联型产品,总线矩阵包5个驱动部(CPUDCode、系统总线、以太DMADMA1总线DMA2线)3个从部(闪存存储器接(FLITF)SRAMAHB2APB)。在其它产品中总线矩阵包4个驱动部(CPUDCode、系统总线DMA1总线DMA2线)4个被动部(闪存存储器接(FLITF)SRAMFSMCAHB2APB)

AHB外设通过总线矩阵与系统总线相,DMA访问。

首先,说点不靠谱的APBAHB总线,我个人感觉这个类似于个PC系统里的北桥和南桥总线。

南桥总线上挂接的都是鼠标、键盘这些慢速的设备,北桥上挂接显卡等高速设备。南桥频次低,北桥频次高。另外,南桥最后也要接到北桥上。

这些感觉都类似APBAHB

一定要看图,比照着!

AHB总线延伸出来的两APB1APB2总线,上面挂载STM32各种各样的特色外设。我们经常说GPIO、串口I2CSPI这些外设就挂载在这两条总线上,这个

单片机中都有FLASH还需要EEROM吗?的评论 (共 条)

分享到微博请遵守国家法律