2012-01-12 116 views
6

我已经试图通过将Arduino库编译到他们自己的独立库中并链接到Eclipse中的项目,但一直有一些问题。纯粹的Arduino C

有没有一个体面的指导如何让这个启动和运行?我一直在努力找到一个实际上可行的在线... arduino.cc指南有一些缺陷,并排除故障让我疯了。

我在Mac上  OS   X 10.5带有Uno板。

编辑:值得注意的是,大多数Arduino C指南不指定必要的波特率,只是MCLK频率(16   MHz)。确保你已经改变了这个或AVRDude不会理解如何刷你的IC。

回答

0

Arduino无法在纯C设置下工作,因为它需要C++编译器。但是,如果你想在你的项目中包含arduino核心和其他库,然后阅读。在这里,我们可以看到如何在代码中使用Arduino以太网库。

一步一步的指导

  1. 获取Arduino的核心和变种/文件。
  2. 获取相关库,例如Arduino的以太网库
  3. 目录结构

    • /
      • 的lib/Arduino的/芯
      • 的lib/Arduino的/变种// pins_arduino.h
      • 的lib/Arduino的/ Makefile中
      • lib/arduino/build
      • lib/
  4. 样品make文件可以从以下网址下载: https://gist.github.com/rjha/b7cda6312552c3e15486

  5. 首先创建Arduino的核心作为静态库。要做到这一点:

    • $ cd到的lib/Arduino的文件夹
    • $使清洁
    • $做出的lib
  6. 这将创建的lib/Arduino的/建设/ libarduino.a静态库文件。

  7. 接下来我们到了主要项目Makefile。在那里我们可以定义任何Arduino库,例如。作为Arduino SPI或Arduino以太网作为针对Arduino核心库编译的目标。

  8. 在我们自己制定的目标中,我们可以包括Arduino Target,它们又包含Arduino核心。

对于(7)和(8)例如,参照该要旨

https://gist.github.com/rjha/e7b123d3dc4346b5830c

(9)使用-larduino并保持libarduino.a创建十六进制和一般链接,链接时搜索PATH。例如,参见Gist以上的例子。

(10)使用此结构,您可以在自己的代码中使用任何Arduino库。

大部分Arduino库都是明智的混乱依赖关系,代码质量也很差。唯一的好处是你可以得到一些现成的库来链接你的代码。