为什么我得到这个错误?

Arduino:1.6.9(Windows 10),主板:“Arduino Mega ADK”

从C: Users Disheet Downloads humanoid_1 humanoid_1.ino:1:0:

C: Users Disheet Documents Arduino libraries ax12v2 / ax12.h:66:23:错误:冲突声明'typedef unsigned char boolean'

typedef unsigned char boolean;

                   ^

在sketch humanoid_1.ino.cpp中包含的文件中:1:0:

C: Program Files(x86) Arduino hardware arduino avr cores arduino / Arduino.h:117:14:error:'boolean'有一个前面的声明为'typedef bool boolean'

typedef bool boolean;

          ^

C: Users Disheet Downloads humanoid_1 humanoid_1.ino:在函数'void setup()'中:

人形1:5:错误:'SetPosition'未在此范围内声明

SetPosition(1,0); //// id,posiotin 0-1023

              ^

C: Users Disheet Downloads humanoid_1 humanoid_1.ino:在函数'void loop()'中:

人形1:13:错误:'SetPosition'未在此范围内声明

SETPOSITION(1512);

                ^

为“ax12.h”找到了多个库使用:C: Users Disheet Documents Arduino libraries ax12v2未使用:C: Users Disheet Documents Arduino libraries Bioloid退出状态1'SetPosition'was was没有在此范围内声明

此报告将包含更多信息,并在“文件” - >“首选项”中启用“在编译期间显示详细输出”选项。


你需要找到typedef unsigned char boolean; 在你的库中,并将其更改为与Arduino.h中的版本相匹配。

boolean在Arduino.h中已经是typedef,它是一个bool ,而不是unsigned char

在AX12库中搜索:https://github.com/7Robot/Arduino/blob/master/AX12/libraries/ax12/ax12.h#L66

并将其更改为typedef bool boolean;

这是前一段时间更新的,因此您的IDE版本比AX12库更新。

链接地址: http://www.djcxy.com/p/78607.html

上一篇: Why I got this error?

下一篇: Strange C++ Arduino serial behavior