福利来了!!! STM32H750内置FLASH官宣128KB,实际竟然2MB。 一、 前言 有网友发现STM32H750小批量芯片内部竟有2MB FLASH,并非官宣的128KB。因此这将给一些用不习惯外部FLASH的小伙伴或者嫌弃外部FLASH性能差的小伙伴带来了一个重磅福利。 万万没想到ST竟然如此地慷慨,有网友猜测其原因应该是目前STM32H750的用量较少,舍不得去开晶元,当然将来如果STM32H750的用量起来后,可能就会重新开晶元,把2MB的内部FLASH降到128KB,毕竟内部FLASH是整个芯片价格占比最大的部分。此消息一出不知友友们有否有一种要赶快入手的冲动了。那么该消息是真是假,是不是真的有2MB的内部FLASH呢,下面我将以iCore4T(STM32H750IBK6)为例进行测试。 1、 iCore4T双核心板 2、 JLINK(或相同功能)仿真器 3、 MicroUSB线缆 4、 KeilMDK 开发平台 5、 STM32CubeMX开发平台 6、 装有WINXP(及更高版本)系统的计算机 三、 FLASH读写测试 为了快速完成测试,我找到了与STM32H750IBK6相同封装(BGA176)的同系列芯片STM32H743III6,其内部FLASH即为2MB,那么这2MB的FLASH存储是怎么组成的呢,大家请看下图: 从上图可以看出,2MBFLASH共分两个BANK,每个BANK共8个扇区。 现在打开工程配置软件 STM32CubeMx(我用的是最新版本Version 6.0.1) 配置芯片为STM32H743III6,进行基本的配置后生成最简工程(这里我不再详细介绍,大家可参考银杏知识库:http://gkwiki.cn了解更详细教程)。 在向FLASH写入数据的时候,目前我发现只能32字节对齐方式写入,我们暂且先这样将数据写入。由于工程代码需要占用一定的FLASH空间,我将FLASHBANK1的第一个扇区存放代码,剩余的空间用于读写测试。 测试方法:向一个扇区写入连续的数据0~255,读出数据并判断是否正确。以此方法连续对剩余的15个扇区进行测试,然后通过iCore4T的USBUART将测试结果输出到电脑终端,扇区测试通过显示绿色,扇区测试失败显示红色。 我们也可以通过J-FLASH直接将数据读出进行查看,这里我以最后一个扇区为例,将数据读取出来,截取最后一部分如下图: 果然没有让人失望,确实为写入的数据,至此说明,STM32H750内置FLASH确实为2MB 有网友说,STM32H750出厂时,仅对前128KB的存储空间进行了测试,并没有全部测试,后面的空间有的能用,有的不能用;2MB空间有的有,有的没有。现在我将上面的测试代码贴在下面,有兴趣的小伙伴赶紧拿起手中的iCore4T进行测试吧,相信不会让你失望的。 没有入手的小伙伴趁着ST现在的慷慨赶紧下手啦!!! FLASH读写测试工程: 提取码:niy9 四、 如何配置2MB FLASH适应STM32H750 我们提供的工程都是以STM32H750为例,那么怎样才能使用到剩余的FLASH呢? 现在我们以iCore4T出厂测试V3.1为例给大家介绍一下: 打开iCore4T出厂测试V3.1中的ARM工程,将优化等级修改为0,然后进行编译,编译之后我们发现会出现错误,如下图,其原因就是代码容量已经超出了128KB。将0x20000(128KB)修改为0x200000(2MB) 将0x00020000(128KB)修改为0x00200000(2MB) 以上两个地方修改完毕后,重新编译下载,发现已经编译通过并可以成功下载。 在终端键入TEST,发现已经成功运行。这样2MBFLASH就可以成功使用了。 |
STM32
超强工具——STM32CubeMX 你会用吗?
集结出发! STM32全国研讨会系列之一:ST智能门铃中国首秀
关于STM32启动文件的几个小问题
【银杏科技ARM+FPGA双核心应用】STM32H7系列35——USB_VCP_FS
【银杏科技ARM+FPGA双核心应用】STM32H7系列28——USB_HID
粉丝分享 | 图说CRC原理应用及STM32硬件CRC外设
STM32L151进入低功耗,并由RTC唤醒的故事
[转]stm32控制NFC模块(PN532)源码(P2P,模拟卡,读写卡等
STM32G070RB+LVGL移植
银杏科技的iCore4T双核心板
测试代码包里有板卡链接
如果像猜测的那样没开晶元的话,100脚的应该也是2MB,不过这个没有亲测
不用试,百分百就是。
这个接口我没有用到 我现在的板子上也没有接出来,可以上网查查