STM32 __attribute__((section(“***“)))

news2024/12/23 22:12:42

1.在参考例程做STM32 IAP升级时遇到了关于__attribute__((section("***")))的问题,例程使用的是

uint8_t USART_RX_BUF[USART_REC_LEN] __attribute__ ((at(0X20001000)));

例程在使用CUBEIDE编译时提示warning: 'at' attribute directive ignored [-Wattributes]

2.调查发现是由于CUBEIDE使用的gcc编译器和KEIL的编译器不同造成的。

可以通过使用__attribute__((section("***")))进行解决,具体步骤如下:

在ld文件中配置对应的内存区域

修改数组的内存地址指向描述方式

uint8_t USART_RX_BUF[USART_REC_LEN] __attribute__ ((section(".app_ram")));

也可以通过宏定义进行实现,如下:

#define APPRAM __attribute__((section(".app_ram")))//APPRAM宏

APPRAM uint8_t USART_RX_BUF[USART_REC_LEN];

3.直接编译会提示错误

section `.app_ram' will not fit in region `APP_ADDR'

region `APP_ADDR' overflowed by 57344 bytes

根据提示说明内存超了。经过分析发现,app_ram定义了一个64K大小的内存区域,而

USART_RX_BUF[USART_REC_LEN]的USART_REC_LEN定义为120K大小的数组

#define USART_REC_LEN 120*1024

超过了app_ram的大小。

4.找到问题原因后,可以直接修改USART_REC_LEN的大小,或者修改app_ram的内存大小都可以解决问题。

5.具体分配多大区域,需要根据工程的大小以及内存使用情况酌情修改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1110090.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

长钢管每米直线度检测 在线直线度测量仪轻松搞定!

钢管是一种常见的建筑材料,广泛应用于各种建筑和工程领域。钢管的直线度对于其使用性能和使用寿命具有重要影响,因此需要对钢管的直线度进行检测。传统的钢管直线度检测方法是通过测量多段钢管的直线度和弯头的角度来实现,这种方法不仅效率低…

Python常用语句(初学入门)不要一直做脚本小子

目录 一、判断语句 1、if语句 2、if-else语句 3、if-elif语句 4、if嵌套 二、循环语句 1、while循环 2、for循环 3、while嵌套 三、Python的其他语句 1、break语句 2、continue语句 3、pass语句 4、else语句 ~~~摆脱脚本小子,从现在开始学习Python~~~ …

将用友U8的数据可视化需要哪些工具?

将金蝶U8的数据可视化需要一个奥威BI数据可视化工具,以及一套专为用友U8打造的标准化BI数据分析方案。 奥威BI SaaS平台:一键链接用友U8,立得报表 别的BI软件围绕用友U8的数据做可视化:1、准备配置环境;2、下载安装配…

canvas绘制多种文字效果:描边,阴影,渐变色等

canvas可以绘制多种样式的文字效果&#xff1a;比如渐变&#xff0c;阴影&#xff0c;描边等效果&#xff0c;如下图&#xff1a; 示例代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta…

淘宝天猫商品详情接口(店铺所有商品接口,商品搜索列表接口)代码展示

业务背景&#xff1a;大家有探讨稳定采集淘宝天猫商品详情页面的数据包括App端和H5端及PC端&#xff0c;采集数据包括&#xff1a;获取商品列表主图、价格、标题&#xff0c;sku&#xff0c;商品评论日期&#xff0c;评论内容&#xff0c;评论图片&#xff0c;买家昵称&#xf…

动态天气预报:Living Weather HD for Mac

Living Weather HD能够为Mac用户提供及时、准确、个性化的天气信息&#xff0c;并提供了丰富的定制选项&#xff0c;使用户能够更加方便地查看天气状况。 具有以下特点&#xff1a; 显示世界各地的准确天气预报和当地时间。自动探测出用户所在的首个地点&#xff0c;并通过搜…

如何用滚动字幕丰富视频内容?只需5个步骤

视频制作需要各种元素来吸引观众的注意力&#xff0c;其中滚动字幕是一个非常实用的工具&#xff0c;可以提供背景信息&#xff0c;引导观众&#xff0c;或者作为一种装饰元素。以下是如何使用滚动字幕丰富视频内容的五个步骤&#xff1a; 1. 下载并安装适合的辅助工具 为了快速…

fault-localization-data下载配置

一、rjust-fault-localization-data下载配置 Ubuntu 22.04.03、运行环境为&#xff1a;jdk1.7 、ant1.8. 、maven 3.8. 所需文件下载地址JDK 7/1.7jdk-7u80-linux-x64.tar.gzFault-localization-dat地址 或者git clone https://bitbucket.org/rjust/fault-localization-data.…

C语言基于AVL树实现简单的文件数据库

目录 前言一、设计思路二、文件存储格式三、数据库操作3.1. 数据库结构3.2. 数据库初始化3.3. 插入3.4. 删除3.5. 修改3.6. 查询3.7. 清空 四、示例代码 前言 之前介绍了C语言实现AVL树&#xff0c; 本文是对AVL树的一个简单应用&#xff0c;在资源偏紧张的硬件设备中可以使用…

C++当中的IO流介绍 - operator 类型()的特殊用法

C语言当中的IO流 C语言中我们用到的最频繁的输入输出方式就是 scanf () 与 printf()。 scanf(): 从标准输入设备(键盘)读取数据&#xff0c;并将值存放在变量中。printf(): 将指定的文字/字符串输出到标准输出设备(屏幕)。 注意&#xff1a;宽度输出和精度输出控制。C语言借助…

数字图像处理实验记录二(直方图和直方图均衡化)

文章目录 一、基础知识1&#xff0c;什么是直方图2&#xff0c;直方图有什么用3&#xff0c;直方图均衡化4、原理代码实现 二、实验要求任务1&#xff1a;任务2&#xff1a; 三、实验记录任务1&#xff1a;任务2&#xff1a; 四、结果展示任务1&#xff1a;任务2&#xff1a; 五…

利用Cpolar永久免费内网穿透软件实现IStoreOS安装与远程访问

文章目录 前言1. ssh局域网登陆iStoreOS系统2. 安装Cpolar内 网穿透软件3. 测试公网远程链接4. 公网使用固定http地址远程访问iStoreOS webui界面 前言 iStoreOS系统是基于OpenWrt定制的软路由系统&#xff0c;提供了如轻nas&#xff0c;云盘&#xff0c;文件共享等众多网络服务…

【EI会议征稿】2024年智能电网与人工智能国际学术会议(SGAI 2024)

2024年智能电网与人工智能国际学术会议&#xff08;SGAI 2024) 2024 International Conference on Smart Grid and Artificial Intelligence 随着时代的发展&#xff0c;基础的电网技术已经比较成熟&#xff0c;但与日俱增的用电需求以及不断转变的用电模式促使我们需要不断地…

Go 存储系列:LSM存储引擎 LevelDB

概念介绍 LSM-Tree 被是一种面向写多读少应用场景的数据结构 &#xff0c;被 Hbase、RocksDB 等强力 NoSQL 数据库采用作为底层文件组织方式。 简单的LSM-Tree 包含 2 层树状数据结构&#xff1a; Memtable 并完全驻留在内存中&#xff08;假设 T0&#xff09; SStables 存储…

可视化(Visual) SQL初探

一、背景 在当今数字化时代&#xff0c;数据信息作为企业和组织的宝贵资源之一&#xff0c;如何挖掘其中的价值并帮助企业和组织个体决策&#xff0c;已然成为炙手可热的话题。数据分析作为其具体载体&#xff0c;是从数据中提取信息、洞察机遇、制定战略、做出决策的关键过程…

在云计算环境中,如何利用 AI 改进云计算系统和数据库系统性能

文章目录 前言一、关于唐明洁教授二、AI for System2.1 面向分布式作业的人工智能2.1.1 现阶段企业云计算系统环境所遇到的普遍痛点2.1.2 云计算系统环境所遇到的普遍痛点的解决方案&#xff08;一&#xff09;Google Autopilot Eurosys 2021方案&#xff08;Pod级别&#xff0…

熟练使用 Redis 的五大数据结构:Java 实战教程

入门 入门阶段主要记住 Redis 的命令&#xff0c;熟练使用 Redis 的 5 大数据结构就可以了。 如果没有 Redis 环境&#xff0c;可以直接通过这个网址https://try.redis.io/&#xff0c;很赞&#xff0c;它会给你模拟一个在线的环境可供你尽情使用&#xff01; 熟练使用Redis的…

C++11lambda表达式--你了解C++的lambda表达式吗?他的底层是怎样的呢?

文章目录 1.lambda表达式的出现1.1C98对内置类型排序1.2C98对自定义类型排序1.3C11中lambda表达式对数据进行排序 2.lambda表达式的语法2.1lambda表达式语法的介绍2.2lambda表达式语法的讲解1.交换函数的lambda表达式写法2.捕捉列表捕捉3.捕捉列表混合捕捉4.不能相互赋值 可以拷…

excel怎么固定前几行前几列不滚动?

在Excel中&#xff0c;如果你想固定前几行或前几列不滚动&#xff0c;可以通过以下几种方法来实现。详细的介绍如下&#xff1a; **固定前几行不滚动&#xff1a;** 1. 选择需要固定的行数。例如&#xff0c;如果你想要固定前3行&#xff0c;应该选中第4行的单元格。 2. 在E…

2023年全网最新 Windows10 搭建 Node.js 环境教程

目录 一、Node.js安装包下载1.1 官网下载node.js安装包1.2 百度网盘获取node.js安装包 二、Windows上安装Node.js三、配置npm在安装全局模块时的路径和缓存cache的路径二、Pycharm 调用 NodeJS 运行 js 代码的环境配置 本文将向大家介绍在 Windows10 上安装 Node.js 的方法。本…