极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12595|回复: 0

Arduino编写库函数Library出错,求解?

[复制链接]
发表于 2016-4-29 14:09:43 | 显示全部楼层 |阅读模式
ino文件编译没问题,下载到板子上也是正常的,本想建立一个库函数,方便以后调用,分成.cpp和.h编译出错,检查了很多遍,网上和自建库函数有关的帖子也都看过,Arduino.cc的教程也反复看了几遍,有关书籍也看了,还是不能解决。
下面是IDE 1.6.8 报错的信息:

Arduino:1.6.8 (Windows 7), 开发板:"Arduino Nano, ATmega328"

In file included from D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Print.h:27:0,

                 from D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Stream.h:26,

                 from D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\libraries\Wire\src/Wire.h:26,

                 from D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:3:

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Printable.h:25:1: error: unknown type name 'class'

class Print;

^

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Printable.h:33:1: error: unknown type name 'class'

class Printable

^

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Printable.h:34:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token

{

^

In file included from D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Stream.h:26:0,

                 from D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\libraries\Wire\src/Wire.h:26,

                 from D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:3:

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Print.h:34:1: error: unknown type name 'class'

class Print

^

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Print.h:35:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token

{

^

In file included from D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\libraries\Wire\src/Wire.h:26:0,

                 from D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:3:

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Stream.h:49:1: error: unknown type name 'class'

class Stream : public Print

^

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\cores\arduino/Stream.h:49:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

class Stream : public Print

              ^

In file included from D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:3:0:

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\libraries\Wire\src/Wire.h:33:1: error: unknown type name 'class'

class TwoWire : public Stream

^

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\libraries\Wire\src/Wire.h:33:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

class TwoWire : public Stream

               ^

D:\arduino-1.6.8-windows\arduino-1.6.8\hardware\arduino\avr\libraries\Wire\src/Wire.h:82:1: error: unknown type name 'TwoWire'

extern TwoWire Wire;

^

In file included from D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:4:0:

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811/CCS811.h:41:1: error: unknown type name 'class'

class CCS811

^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811/CCS811.h:42:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token

{

^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:7:7: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

CCS811::CCS811()

       ^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:14:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

void  CCS811::begin() {

             ^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:19:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

bool  CCS811::_HardWare_ID(){  

             ^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:39:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

bool  CCS811::_Valid_Firmware(){

             ^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:62:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

void   CCS811::_Boot_to_Firmware_Mode(){

              ^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:70:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

void  CCS811::_Measure_Mode(){  

             ^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:83:21: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

unsigned int  CCS811::Read_Value(CCS811MeasureType type){

                     ^

D:\arduino-1.6.8-windows\arduino-1.6.8\libraries\CCS811\CCS811.c:137:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token

void  CCS811::init_CCS811(){

             ^

exit status 1
Error compiling for board Arduino Nano.

在文件 -> 首选项开启
“编译过程中显示详细输出”选项
这份报告会包含更多信息。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-15 05:22 , Processed in 0.034681 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表