导航:首页 > 编程语言 > stm32闪存编程教程

stm32闪存编程教程

发布时间:2024-09-13 10:13:38

⑴ ST福利:如何使用STM32F103C8T6的后64KB flash

ST福利揭秘:利用STM32F103C8T6的隐藏闪存资源

在STM32F103C8T6和CBT6型号中,虽然它们都采用LQFP48封装,但主要区别在于闪存容量,C8T6为64KB,而CBT6则拥有更大的128KB。实际上,C8T6与CBT6使用的是同一die封装,ST公司巧妙地提供了额外的64KB闪存空间供用户利用。

通过简单的操作,我们可以充分挖掘C8T6的这一潜能。首先,确保使用SWD接口连接DAPLink仿真器,仅需GND、SWCLK、SWDIO和3V3四根线。接着,从github下载预先配置好的openocd环境和脚本,无需额外安装,双击即可执行。

操作流程包括:检测芯片ID,通过flash_write.bat将预先准备的128KB镜像写入,验证写入成功,然后使用flash_mp.bat导出数据并进行hash校验。这些脚本分别执行挂载、闪存操作、擦除以及设置读写权限。

重要的是,openocd允许用户通过自定义配置来指定闪存大小,即使IDE如Keil或IAR未识别C8T6的全部闪存容量。这得益于openocd的底层灵活性,通过调整flash bank配置,我们可以利用C8T6的额外空间。

总结,尽管CBT6是更直接的选择,但对openocd和DAPLink有深入理解的开发者,可以通过这种方式充分利用STM32F103C8T6的后64KB闪存,扩展应用的存储能力。

⑵ stm32的嵌入式闪存:大容量产品主存储块最大为64k*64位,每个存储块划分为256个2k 字节的页,这两句话

按照存储单元的元[位]来讲,这两种说法是相等的:
64K * 64bits = 64 * 4 *2K * 8bits = 256个2K字节;
也就是说,总的存储容量还是没变的。
我的理解是这样的:
前者侧重页外,后者侧重页内,两种说法是和存储器的组织形式有关的:
主存储块的最大数目 = 64K * 64位,而每个单独的页(也就是存储芯片)的构成形式是2K*8位,那么就需要进行扩展:
首先应进行位扩展,即2K * 8位扩展为2K * 64位,则需要8个存储芯片,3根片选线,11根地址线;
然后进行字扩展,即2K 扩展为 64K,此时需要32个位扩展后的存储芯片,5根地址线;
如此共需要存储芯片数量为:32 * 8 = 256个,也就是存储块内共需要256个页,19根地址线。

阅读全文

与stm32闪存编程教程相关的资料

热点内容
linux好用的编辑器 浏览:998
linuxpartprobe 浏览:315
视频教育网站源码 浏览:513
java指定位数的随机数 浏览:900
300公斤压缩机 浏览:549
java时间转换毫秒数 浏览:290
我的世界怎么开挂在服务器 浏览:848
app怎么退定金 浏览:925
php获取外网地址 浏览:172
单片机lan 浏览:582
html炫酷黑页源码 浏览:955
如何远程更新服务器 浏览:785
服务器导轨怎么安装图解 浏览:984
如何设置加密共享文档 浏览:656
单片机双灯左移右移 浏览:927
网页无法打开pdf 浏览:556
linux命令scp 浏览:519
怎样把图片转为pdf格式 浏览:115
linux变量类型 浏览:840
linux中网卡配置 浏览:704