STM32中将常量存储在FLASH中(CONST关键字)

发布者:Tianyun2021最新更新时间:2016-08-05 来源: eefocus关键字:STM32  常量  存储  FLASH 手机看文章 扫描二维码
随时随地手机看文章
今天在写程序时,想把一个字符串常量存储在STM32的FLASH中,看了一会儿别人的例子程序,知道是用const这个关键字,但第一次没有成功。

前提:我用的是STM32F103ZE单片机,

  • FLASH的存储范围为:0x08000000~0x0807ffff,
  • RAM的存储范围:0x20000000~0x200007ff

失败例子:

#include.....

。。。。

int main(void)

{

u8 const c[]="somen";

while(1); 

}

通过调试,查看c[]数组的存储位置为0x200*****的位置,常量仍旧处在RAM中。

成功的例子:

#include.....

u8 const c[]="somen";

int main(void)

{

while(1); 

}

通过调试,可以发现c[]数组的存储位置为0x08******的位置,常量在FLASH中。

关键字:STM32  常量  存储  FLASH 引用地址:STM32中将常量存储在FLASH中(CONST关键字)

上一篇:keil提示:statement is unreachable
下一篇:STM32中断程序

推荐阅读最新更新时间:2024-03-16 15:03

基于时间触发模式的电子控制系统设计
引 言 电子控制系统一般都是实时系统,常需处理许多并发事件的输入数据流。这些事件的到来次序和几率通常是不可预测的,而且还要求系统必须在事先设定好的时限内做出相应的响应 。对于如何控制系统的复杂行为,普遍采用的是事件触发方案,即系统的所有行为响应系统外部事件而执行。然而,中断丢失与事件触发系统的开销是人们经常忽略的一个问题,文献 讨论了一个这样的例子:一个包含27个任务、采用RM调度算法的事件触发系统,CPU的实际利用率仅为18%。同时,电子控制系统也可以看作是一个能实时采集一组定义好的输入值,同时在预先确定的时间间隔给出一个正确输出的实时系统。为了满足安全、低成本及程序尽可能简单等苛刻要求,电子控制系统的开发最终走向时间触发结构
[工业控制]
EB与Argus共推OTA软件方案 保障端对端通信及存储安全
随着互联车辆的不断普及,空中下载(OTA)软件升级市场业正处于上升期。最近,伊莱比特(Elektrobit,EB)与Argus Cyber Security共同发布了一款新OTA软件。 据两家公司透露,新款端对端方案旨在解决汽车软件升级所面临的挑战。该款模块化方案基于车载软件客户端,保障了端对端通信及数据存储的安全性。 空中下载升级策略技术基于某项数据技术,在软件升级时,用户只需要传输软件中的内容变更部分(文件),从而降低空中下载界面的数据传输量及所需的存储空间,并采用相同的令牌。该软件还提供各类诊断及设备管理协议,旨在为上述服务提供辅助。 该方案采用了直观的监控配置及管理主控台,专为汽车设计,有助于为用户节省时间。此外,该软
[汽车电子]
STM32内部RAM在线调试配置方法及详细说明
Ⅰ、 写在前面 本文主要讲述的内容:基于Keil开发工具下,STM32内部RAM在线调试配置方法,以及每一项配置的详细说明。如需要了解更多相关的文章,可以到我博客,或微信公众号查看。 让程序运行在RAM中调试代码有两优点:1.速度快;2.减少对芯片FLASH读写次数,增加芯片寿命。 本文牵涉的知识比较多,如果弄明白所有细节问题,对自己这方面的技能是一种很大的提升。 本文基于ST公司Cortex-M内核的STM32来讲述其配置方法,其实也适用于其他公司(如:TI、NXP等)的Cortex-M芯片,原理都是一样的。 本文内容已经整理成PDF文件,提供给大家下载: http://pan.baidu.com/s/1d
[单片机]
<font color='red'>STM32</font>内部RAM在线调试配置方法及详细说明
STM32应用-5-LORA模块测试
在一个物品定位项目中,需要用Lora实现物品定位功能。此项目没有选择NBIOT因为客户对于NB需要SIM卡,以及NB的成本并不满意,因此选择更低成本,且无需SIM卡的LORA方式。 硬件连接 其中,Lora模块的管脚连接方式如下: 序号 引脚 引脚方向 备注 1 M0 输入(不可悬空) 和M1配合,决定模块的工作模式(极弱上拉,如不使用可接地) 2 M1 输入(不可悬空) 和M0配合,决定模块的工作模式(极弱上拉,如不使用可接地) 3 RXD 输入 TTL串口输入,连接到外部TXD引脚(可配置为漏极开路或上拉输入,详见手册) 4 TXD 输出 TTL串
[单片机]
<font color='red'>STM32</font>应用-5-LORA模块测试
关于STM32的入门问题
前言 前两天在群里看到群友们在讨论学习STM32的话题,并且今天也有一位机械专业的准研究生读者也问了STM32的入门问题。 正好我也有一点点经验,所以试着分享一下这个话题。我也不是什么大神,只是一名普通的工程师,以下分享仅仅是自己的一点经验及看法,仅供参考,希望能对一些初学的朋友有所帮助。老鸟略过~~ 找资料 在知乎,我也有看到类似问题:学STM32要买什么书籍、看什么书籍? STM32编程作为一项实操性很强的技能,所以要多实操。初学的话,我觉得书籍就暂时先不买吧,先考虑入手一块STM32开发板,然后跟着开发板的教程走。 几年前,做STM32的教程有很多家: 现在市面上还比较火的基本就只剩前4家了,从这4家中选择一家买
[单片机]
关于<font color='red'>STM32</font>的入门问题
STM32固件库中assert_param的作用
在学习stm32库函数过程中,笔者遇到大量的assert_param语句。经查明,assert_param的作用就是用来判断传递给函数的参数是否是有效值。 以下是从固件库中复制粘贴的: void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalState NewState) { assert_param(IS_RCC_APB2_PERIPH(RCC_APB2Periph)); assert_param(IS_FUNCTIONAL_STATE(NewState)); if (NewState != DISABLE) { RCC- APB2ENR |
[单片机]
百度推出网盘云存储服务与微软谷歌竞争
百度网盘云存储服务 新浪科技讯 北京时间3月29日凌晨消息,百度(Nasdaq:BIDU)周三宣布推出名为网盘(pan.baidu.com)的最新云存储服务,这项服务将与微软(微博)SkyDrive、Dropbox以及传闻中的谷歌(微博)Google Drive展开竞争。 百度网盘将提供15GB的免费空间,可能通过向重度用户收费提供更多空间的方式来创造营收。百度网盘将兼容Windows、Mac OS X、Android和iOS等最流行的桌面和移动平台。 百度还可能会将这项服务与其百度·易智能手机平台整合在一起。通过这些新产品,百度正致力于多样化除在线广告以外的营收渠道,目前该公司几乎全部营收都来自于在线广告。
[网络通信]
百度推出网盘云<font color='red'>存储</font>服务与微软谷歌竞争
STM32 IO模拟串口程序
  随着单片机的使用日益频繁,用其作前置机进行采集和通信也常见于各种应用,一般是利用前置机采集各种终端数据后进行处理、存储,再主动或被动上报给管理站。这种情况下下,采集会需要一个串口,上报又需要另一个串口,这就要求单片机具有双串口的功能,但我们知道一般的单片机只提供一个串口,那么另一个串口只能靠程序模拟。   1、串口传输协议   首先,必须要知道串口通讯时数据是怎样传输的?这里以异步传输字符为例子,如下图所示:      一般字符传输都采用:1位起始位,8位数据位,1位停止位,没有校验位 的形式传输,其他形式的这里不讲。串口异步传输在空闲状态时都必须是高电平。第一位传输的是起始位,起始位会将原来空闲时的高电平拉成低电平,起
[单片机]
<font color='red'>STM32</font> IO模拟串口程序
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved