1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
小白问题,看了一些资料,关于STM8S003或者005的EEPROM的操作必须要用FLASH_ProgramBlock和FLASH_EraseBlock,就是必须在RAM中执行,但是如果进行这些操作前,RAM不够给这些个程序用怎么办?这些程序应该是先放一个到RAM中,执行完后再放另一个,应该是这样的吧,这些个程序大小是多少呢?到哪里去看呀
|
|
相关推荐
1个回答
|
|
首先,我们需要了解STM8S003和STM8S005的EEPROM操作。EEPROM(Electrically Erasable Programmable Read-Only Memory)是一种可以通过电信号擦除和编程的非易失性存储器。在STM8系列微控制器中,EEPROM操作通常涉及到FLASH存储器的读写和擦除。
关于您提到的问题,我将分步骤进行解答: 1. RAM不足问题:在STM8S003和STM8S005微控制器中,RAM的大小分别为1KB和2KB。如果RAM不足以容纳整个EEPROM操作程序,您可以考虑以下几种解决方案: a. 优化程序,减少RAM占用。 b. 使用外部RAM扩展,如使用I2C或SPI接口的外部RAM。 c. 将程序分成多个部分,分阶段加载到RAM中执行。 2. 程序大小:FLASH_ProgramBlock和FLASH_EraseBlock函数的大小取决于编译器和优化设置。通常,这些函数的大小在几百字节到几千字节之间。您可以在编译后的HEX文件中查看这些函数的实际大小。 3. 查看程序大小:您可以使用HEX文件查看器(如STM8 Flash Programmer)打开编译后的HEX文件,查看各个函数的地址和大小。此外,您还可以在编译器的输出日志中查看每个函数的代码大小。 4. 程序执行顺序:您提到的将程序分成多个部分,分阶段加载到RAM中执行是可行的。您可以先加载FLASH_EraseBlock函数到RAM,执行完成后再加载FLASH_ProgramBlock函数。这样可以确保RAM中始终有足够的空间来执行当前需要的函数。 总之,针对STM8S003和STM8S005的EEPROM操作,您需要考虑RAM大小限制,并采取相应的措施来解决RAM不足的问题。同时,您可以使用HEX文件查看器或编译器输出日志来查看程序的实际大小。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1767 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1619 浏览 1 评论
1069 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
724 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1673 浏览 2 评论
1935浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
727浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
567浏览 3评论
592浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
551浏览 3评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 19:21 , Processed in 0.871552 second(s), Total 76, Slave 60 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号