完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我想将我的软件版本和数据存储在STM32的Flash的一个特定部分。我试图在keil mdk中配置stc文件,但它似乎不起作用。所以谁能帮我找到哪一步不对,谢谢。
的 1.我在keil中设置使用用户配置的stc文件; 的 2.我这样设置sct文件: ;添加0x0x0801B000起始地址,2k=0x800长度定义为myram段存放用户数据 3.我将 MYRAM 定义为 __attribute__((section("myram"))): 的 4.我使用MYRAM来定义用户数据const变量: 然后我重建这个程序并将十六进制下载到STM32G4,但是sct文件定义了样式 在 0x0801B000 的 MYRAM 部分找不到变量; 的 但是当我在+地址使用style liking属性时,它很有用; 所以属性at+address方法是有用的,但是如果我想在UserData_BlockValue2后面再定义一个const变量,由于UserData_BlockValue2的长度,我不得不计算地址,这似乎有点乏味。 我想知道是否可以使用 sct 文件来定义闪存的一部分来存储我的常量变量 Value1、Value2、Valu3...等等,这些变量的地址会自动依次位于该部分?谢谢。 |
|
相关推荐
1个回答
|
|
将版本字符串定义为 const
static const char xxxx[]={"version string"};// 确保将编译为 RO 数据 新建一个REGION,写入LOAD地址*(.rodata.xxxx) LR_IROM2 0x0801B000 0x00000800 { ; 加载区域 size_region ER_IROM2 0x0801B000 0x00000800 { ; 加载地址=执行地址 *(.rodata.xxxx) } } 请注意,LR_IROM2 区域必须在默认区域之外。 |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2928 浏览 1 评论
3294 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1880 浏览 1 评论
3731 浏览 6 评论
6144 浏览 21 评论
STM32H7打开DCache后,出现了串口接收信息为空的现象,是哪里出了问题?
33浏览 5评论
用NANO STM32F103RBT6的开发板烧录不了是哪里出了问题?
42浏览 5评论
33浏览 5评论
外部中断触发类型为双边沿触发,进入中断回调后有什么办法判断该边沿是上升沿还是下降沿?
27浏览 5评论
STM32L071CBT6低温环境下无法正常工作是什么原因引起的?
33浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-3-21 17:23 , Processed in 0.910757 second(s), Total 77, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191