Arduino 上的 typedef 结构:变量没有命名类型

typedef struct on Arduino : variable does not name a type

我想在 arduino mega 上为 20 个传感器制作一个 typedef struct(或类似的,如果我不能),但我有一个错误,我不明白为什么。是来自 arduino 编译还是来自我的代码?你认为我必须将我的代码放在头文件中吗?

 typedef struct {
          char nom[8]; 
          int pin; 
          int onOff; 
          int pente;
          int offset;
          int maximun;
          int minimum;
          int constante1;
          int constante2;
          int hyst1;
          int hyst2;
          float moyenne; 
          float valeurs[]; 
          int frequence; 
        } structSondes;

    structSondes sondes[20];
    structSondes test;
    sondes[0].pin=1;
    test.pin=1;

我在编译时遇到这个错误:

error: ‘sondes’ does not name a type

error: ‘test’ does not name a type

您没有提供完整的代码,所以只能猜测。

我怀疑问题是语句:

 sondes[0].pin=1;
 test.pin=1;

写在 ino 文件的主体中,而不是函数内部。