senzi01 发表于 2013-11-6 16:44:12

新版IDE不支持旧版库的解决办法

强迫症犯了,不用最新版的IDE怎么舒服!
但有的时候需要用到第三方库的时候发现用旧版的IDE是会报错的(而用旧版比如0022之类的就不报错)
这怎么能忍?

下面介绍一种方法,可以使你的库支持新版的arduino IDE

第一步:找到库所在文件夹
第二步:库文件的.cpp 和.h文件
第三步:打开这些.cpp 和.h文件 并从中查找一下有没有以下东西
#include "wiring.h"
#include "WProgram.h"
#include "WConstants.h"
#include "pins_arduino.h"

发现这些东西就全都删掉
然后替换一行:
#include "Arduino.h"


原因是,上面的那些都是旧的,新版只需要一个#include "Arduino.h"就够了!

比如在这个Arduino学习笔记A9 - Arduino自制电话拨号器中就用到了一个库。
本来是一个很好的小制作,但是评论中就有人因为库不兼容的原因无法做实验
我改了之后就能用了,多好~


希望对大家有帮助

MoonSet 发表于 2013-11-6 22:21:45

对的,我在做BOXZ的时候就遇到相似问题,也是类似方法解决了,当时的库是AFMotor。

hmjack2008 发表于 2013-11-6 23:29:31

本帖最后由 hmjack2008 于 2013-11-6 23:31 编辑

1.        "pins_arduino.h" 应该还是有的, 在“1.0x版”的 harward/arduino/variants/ standard 目录中
2.        其他的3个.h文件在“022版”的harward/arduino/cores/arduino/ 目录中
3.        我自己是仿照 “022版”的WConstants.h” 方式 :[*]在 “1.0x版” 的harward/arduino/cores/arduino/ 目录中新增这3个文件(WProgram.h, wiring.h, WConstants.h).[*]这3个文件内容都只有一行 : (这样就能通用了)#include "Arduino.h"
页: [1]
查看完整版本: 新版IDE不支持旧版库的解决办法