iar相关内容

如何强制 IAR 使用所需的 Cortex-M0+ 指令(此功能的优化将被禁用.)

我需要强制 IAR tp 在我的代码的某些部分使用某些 Cortex-M0+ 指令,同时使用 C 进行编码. 请不要提供纯 asm 函数或内联 asm 等. 我已设法为 51 条指令执行此操作,但无法为 ;ADR、BLX、RSBS、SBCS、SXTH 指令. 禁用此功能的优化(#pragma optimization=none) 考虑到教学行为,我尝试了很多方法.但IAR更 ..
发布时间:2021-11-17 22:42:10 其他开发

如何去除错误“未解决的包含"用于 Eclipse IDE 中用户定义的路径

我已将现有的 ARM 的 IAR C++ 项目导入到 Eclipse IDE 中,并为 IAR 工具链添加了插件.该项目已导入,但某些文件未包含在内.它给出了错误:未解决的包含"并且文本带有红色下划线.我已经为这些文件添加了路径,如下所示,但仍然存在相同的错误.请建议删除此错误. 包括“./../../../try_one/try_headers/limits.h" 解决方案 您需要 ..
发布时间:2021-11-17 22:40:53 其他开发

无法使用 IAR ARM 编译器强制函数表到特定地址

我有一个像这样定义的函数表类型 typedef 结构体{uint16_t 主要修订版;uint16_t 次要修订;uint8_t (*CommInit)(void *);uint8_t (*CommDeInit)(void);uint16_t (*Write)(uint8_t *, uint16_t);uint16_t (*Read)(uint8_t *, uint16_t);uint8_t ( ..
发布时间:2021-11-17 22:40:41 其他开发

如何使用 IAR 编译器为 ARM 编译 Google 测试

我正在尝试使用适用于 ARM 的 IAR 编译器编译 Google 测试框架,但我面临与缺少 pthread 等系统库相关的困难. 有没有人能够使用 IAR 编译器为 ARM 编译 Google 框架? 解决方案 过去几天我一直在尝试让 GoogleTest 工作,以便我可以使用模拟器在 IAR 中的 ARM 微控制器上执行单元测试,并且我已经放弃了.正如您所说,我遇到了 IAR 工 ..
发布时间:2021-11-17 22:11:37 其他开发

ARM Data Abort 错误异常调试

所以现在我知道我收到了 ARM 数据中止异常 - 我看到了如何捕获异常本身(STL 库中的错误地址),但我想在异常之前返回堆栈帧.我正在使用 IAR 工具链,它告诉我异常后调用堆栈不可用 - 有没有一种技巧可以说服工具向我显示调用堆栈?感谢所有快速帮助! 解决方案 如果您查看 ARM ARM(ARM 架构参考手册,只需 google“arm arm"),程序员模型 -> 处理器模式和寄存器 ..
发布时间:2021-11-17 22:10:44 其他开发

C 函数的内存位置

我想创建一个软件,稍后可以在我的微控制器上对某些功能(或块)进行编程,而无需再次重新刷新整个软件(刷新将由通信接口完成,例如 SPI).新块都将具有相同的 API(例如,5 个字节作为参数,1 个字节返回). 内存架构的组织方式如下图所示:内存架构 总而言之,FBL 和 APPL 块将在 MCU 上仅编程 1 次.在此过程的后期,我希望有可能在创建的块(BLOCK 1、BLOCK 2 ..
发布时间:2021-11-17 02:54:48 其他开发

像STM8一样编程STM32(寄存器级GPIO)

我像PD_ODR_ODR4 = 1;一样编写了STM8 GPIO,但是stm32f10x.h没有这个功能.有没有定义位的.h文件. 抱歉,我不知道如何更好地解释这个问题. 我尝试了多个 GPIO 库. 强文本 解决方案 你在问题​​中提到了 stm32f10x.h,所以我假设它是关于 STM32F1 系列控制器的.其他系列有一些差异,但大体程序是一样的. GPIO ..
发布时间:2021-08-30 19:27:08 其他开发

IAR 项目变量,如 $PROJ_DIR$

IAR 中是否有可能添加额外的项目变量,如 $PROJ_DIR$ 来指定我的项目环境? 我喜欢让我的项目保持便携性和适应性. 解决方案 当然有,根据手册: 变量/描述 $CONFIG_NAME$ 当前构建配置的名称,例如 Debug 或 Release. $CUR_DIR$ 当前目录 $CUR_LINE$ 当前行 $DATE$ 今天的日期 $EW_DIR$ IAR ..
发布时间:2021-07-23 19:34:48 其他开发

按应用程序访问链接程序脚本中定义的符号

在我的链接描述文件中,我定义了两个符号 定义符号_region_RAM_start__ = 0xC0000000;定义符号_region_RAM_end__ = 0xC00fffff; 然后我将它们导出,如下图所示 导出符号_region_RAM_start__;导出符号_region_RAM_end__; 从应用代码中,我尝试访问这些符号 extern const unsigne ..
发布时间:2021-05-29 21:22:31 其他开发

_WIN32的VSCode轮换定义

我在VisualStudio代码中有一个嵌入式项目,该项目在大多数情况下都能正常工作.我的问题是,总是以某种方式定义_WIN32,这会导致某些头文件中的错误包含. 我猜这是一个Intellisense问题,因为项目编译时没有任何错误(我使用IAR编译器).只是来自Intellisense的错误信息显示了错误.(例如,在一个头文件中,由于_WIN32定义,它尝试打开 ..
发布时间:2021-04-23 20:05:08 其他开发

IAR与'__attribute__((weak,alias(#f)))'的等效含义是什么?

我当时使用LPC系列(NXP)作为控件.现在,我们要切换到另一个MCU(Spansion),编译器是从GNU到IAR. IAR和GNU之间的某些属性不同,我想寻求帮助: 过去(GNU): #define ALIAS(f) __attribute__((weak, alias (#f))); #define CSV_IRQHandler(void) ALIAS(IntDefaultH ..
发布时间:2020-11-16 03:40:55 其他开发

将外部静态库的段放置到特定位置

我的应用程序调用了一些放置在外部静态库中的函数.我将外部静态库链接到我的应用程序,并且一切正常(在这种情况下,我使用的是GCC). 尽管如此,库的文本,.data和.bss节的位置(地址)是由链接器选择的.我可以通过修改链接描述文件来选择/更改它们的位置,但这很麻烦,因为我必须指定库的所有函数,变量等.我的意思是这样的: . = 0x1000; /* new location */ K ..
发布时间:2020-11-12 23:17:46 其他开发

无法在IAR Workbench上加载Flash loader

我正在IAR Workbench平台V7.70.1上工作,我试图下载一个简单的代码(一个简单的main仅带有一个while(1)),但是我没有成功在处理器上下载代码。我正在使用基于STM32F401RE处理器的STM公司的NUCLEO-F401RE板。我收到以下消息: 无法加载Flash loader:C:\Program Files\ \IAR Systems\嵌入式工作台7.5\arm\ ..
发布时间:2020-10-29 03:20:47 其他开发

如何在CMake中指定编译器?

我想使用IAR编译器。我注意到CMake已经有很多关于此编译器的文件: https://github.com/jevinskie/cmake/blob/master/Modules/Compiler/IAR.cmake 从我的理解中,常见的解决方案是在我的 CMakeLists.txt 中手动指定所有工具链: set(CMAKE_C_COMPILER iccarm) set( ..
发布时间:2020-10-03 18:39:25 其他开发

是否有人为MSP430的IAR嵌入式工作台实现__getzone()?

我必须在我的应用程序中处理一些时间转换。我想坚持使用尽可能多的标准库函数。现在,我正在使用time_t结构作为系统时基。但是,某些设备可以将时间同步到我的设备,该时间可能是UTC,也可能不是UTC。另外,我的设备会将时间同步到另一台设备,并且该时间将始终是UTC。 无论如何,我可以问用户该时间所在的时区是同步到我的设备,以及他们是否使用DST。当我的设备获得时间同步时,我可以使用mktime ..
发布时间:2020-09-28 04:21:07 其他开发

如何强制IAR使用所需的Cortex-M0 +指令(此功能将禁用优化.)

在用C编码时,我需要强制IAR tp在我的代码的某些部分中使用某些Cortex-M0 +指令. 请不要提供纯asm函数或内联asm等. 我已经设法完成了51条指令,但是不能执行; ADR,BLX,RSBS,SBCS,SXTH指令. 此功能的优化已禁用(#pragma Optimization = none) 我通过考虑指令行为尝试了很多事情. 但是IAR倾向于使用具有不同指 ..
发布时间:2020-09-07 03:13:20 其他开发

如何使用用于ARM的IAR编译器编译Google Test

我正在尝试使用用于ARM的IAR编译器来编译Google Test Framework,但是我遇到了与缺少诸如pthread之类的系统库有关的困难. 有人能够使用用于ARM的IAR编译器来编译Google Framework吗? 解决方案 过去几天,我一直在尝试使GoogleTest正常运行,以便可以使用模拟器在IAR中的ARM微控制器上执行单元测试,并且放弃了.如您所说,我遇到了I ..
发布时间:2020-09-07 02:46:34 其他开发

C功能的内存位置

我想创建一个软件,稍后可以在我的微控制器上对某些功能(或模块)进行编程,而不必再次刷新整个软件(刷新将通过通信接口(例如SPI)完成).新块将具有相同的API(例如,作为参数的5个字节,返回的1个字节). 内存架构将如下图所示组织: 内存架构 总而言之,FBL和APPL块在MCU上只能编程1次.在此过程的后面,我希望可以对已创建的块(块1,块2 ...)中的某些功能进行编程或更改. ..
发布时间:2020-05-08 19:40:02 其他开发

在结构中使用typedef枚举,避免类型混合警告

我正在和C99合作。我的编译器是IAR Embedded工作台,但我认为这个问题对于其他编译器也是有效的。 我有一个typedef枚举,其中有几个项目,我添加了一个元素到新类型的结构 typedef枚举 { foo1, foo2 } foo_t; typedef struct { foo_t my_foo; ... } bar_t; 现在 ..
发布时间:2017-08-24 01:12:29 其他开发

嵌入式C:寄存器访问

假设我们要在地址写 0xc000 ,我们可以在C中定义一个宏: #define LCDCW1_ADDR 0xc000 #define READ_LCDCW1()(*(volatile uint32_t *)LCDCW1_ADDR) #define WRITE_LCDCW1(val)((*(volatile uint32_t *)LCDCW1_ADDR我的问题是,当使用任何微控制器时, ..
发布时间:2016-12-22 22:51:38 其他开发