【发布时间】:2016-06-05 13:36:06
【问题描述】:
解决了。
我试图控制 IAR Embedded Workbench 中的变量值(使用 STM32F303xC 微控制器)。我将 library.h 文件中的变量声明为:
extern int my_variable1;
extern float another_variable //... etc
然后在 library.c 中
int my_variable1 = 15;
float another_variable = 328.47;
在 main.c 中
my_variable1 = 38;
another_variable = pow(10,2) + another_variable/8
但在观看、实时观看和快速观看中会出现错误:(第 1 列)未知或模棱两可的符号。
我用这个 IDE 编写了几个程序,静态变量的声明工作,它允许我使用手表查看变量的值。在其他程序中,我将变量声明为
int my_variable1;
在主文件中,在主函数之外,它也可以工作。
我该如何解决这个错误?
就我们而言,真正的问题似乎是:
有没有办法在 IAR Embedded Workbench 中显示 .c-s 之间共享的变量值?
【问题讨论】:
-
将静态变量声明为标头的范围是什么?..
-
这样你就可以只读取 .h 并识别所有的变量和这个头文件提供的函数。
-
没有理由一开始就在头文件中声明变量。使变量“全局静态”更没有意义,就像去油漆店要“白黑”油漆一样。
-
此外,通过这种方式,您可以只共享 .h 中的声明而不共享 .c 文件(和源代码)
-
全局静态是一种矛盾
标签: c microcontroller watch stm32 iar