闪存存储器由主存储块、信息块、闪存存储器接口寄存器组成:, C2 S8 G3 Q0 r$ J8 K0 O 1、主存储器:: T6 L* u! [- @. L6 n1 T% s# q- e# I 用来存放代码和数据常数(如 const 类型的数据)。起始地址是 0X08000000, B0,B1都接GND的时候就是从0x08000000开始运行代码的。 2、信息块: 系统存储器,用于存储 ST 自带的启动程序,串口下载代码,当B0接V3.3,B1接GND时,运行的就是这部分代码。# D( |5 i7 ]8 ?# a$ e9 m+ A1 i 选择字节,则一般用于配置写保护、读保护等功能。: B9 n! ?' I6 \5 p0 J$ | 对于小容量、中容量和大容量的产品而言,可以通过 USART1接口启用自举程序。 对于互联型产品而言,可以通过以下某个接口启用自举程序: USART1 、 USART2( 重映像的) 、 CAN2( 重映像的 ) 或 USB OTG 全速接口的设备模式 ( 通过设备固件更新 DFU 协议 ) 。 3、闪存存储器接口寄存器:6 ]2 x7 X' F1 F$ u; c0 I4 H6 f1 l 该部分用于控制闪存读写等,是整个闪存模块的控制机构。 % H2 v5 X1 ~) q, {) j 启动模式和区域: ( Q& K4 O3 W+ D) ?- [1 \( a 从主闪存存储器启动:主闪存存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(0x0800 0000)访问它,即闪存存储器的内容可以在两个地址区域访问,0x0000000或0x0800 0000。) h7 ]3 R, v/ z+ e- h3 l: T; a 从系统存储器启动:系统存储器被映射到启动空间(0x0000 0000),但仍然能够在它原有的地址(互联型产品原有地址为0x1FFF B000,其它产品原有地址为0x1FFF F000)访问它。% t. Z" E* i, u+ b; N4 C 从内置SRAM启动:只能在0x2000 0000开始的地址区访问SRAM。! U* j! I' ?& j8 a: h* p: { $ \* O, ^! i9 t9 @: A( E$ ]2 d6 ?: F ─ 主存储块容量: 小容量产品主存储块最大为4K×64位,每个存储块划分为32个1K字节的页(见表2)。 中容量产品主存储块最大为16K×64位,每个存储块划分为128个1K字节的页(见表3)。% h2 T7 o8 ^6 `4 i 大容量产品主存储块最大为64K×64位,每个存储块划分为256个2K字节的页(见表4)。 互联型产品主存储块最大为32K×64位,每个存储块划分为128个2K字节的页(见表5)。 / ^& _( H/ N+ J ─ 信息块容量: X' U# V" u6 q 互联型产品有 2360 × 64 位 ( 见表 5) 。( j2 t' t# K% ?2 o 其它产品有 258 × 64 位 ( 见表 2 30/754 、表3 、表 4) 。. t: _ h f% |+ V ) m' g8 _0 {/ }8 j ─闪存存储器接口的特性为: ● 带预取缓冲器的读接口 ( 每字为 2 × 64 位 ) ● 选择字节加载器' Z( J! H* H( _" \& d. f( M1 l ● 闪存编程 / 擦除操作 ● 访问 / 写保护/ c9 X: J9 p5 j& @1 b0 u ─编程和擦除闪存:+ {+ H* ^4 @# ]9 t5 m 闪存编程一次可以写入16位(半字)。 闪存擦除操作可以按页面擦除或完全擦除(全擦除)。全擦除不影响信息块。1 A- j' I' @ s; b& z6 v) g; |- I# Y 为了确保不发生过度编程, 闪存编程和擦除控制器块是由一个固定的时钟控制的。 写操作(编程或擦除)结束时可以触发中断。仅当闪存控制器接口时钟开启时,此中断可以用来从WFI模式退出。 附表: , @: X" b6 X/ z. g4 O- O " r+ k& t7 r1 I) {0 K! C- V5 ~ 9 L& t% H; X! I( m 6 _ `& [, B7 u5 N4 Y; y / z: n8 F3 r9 B3 ` - }3 N1 D$ `3 F$ s4 D0 N 3 p) W1 X8 ]- k: g 2 w) v7 Q- ?1 l. Q% U3 u C 2 M$ ? O* T/ y" a' J) ~ , [8 B( N1 F P: p6 C& r' d0 N; P |
【经验分享】STM32F1 GPIO工作原理
【经验分享】STM32F0xx_DMA收发USART数据配置详细过程
【经验分享】STM32F1和STM32F4 区别
【经验分享】STM32F1系列之常用外设说明
【经验分享】STM32介绍
【经验分享】STM32F1x系列——Flash 模拟 EEPROM
【经验分享】STM32F1在MDK下新建标准库函数工程
【经验分享】stm32f1的存储器与复位
【经验分享】STM32F10X-架构
【经验分享】stm32F1 us延时函数