arduino出错:没有命名类型

时间:2014-03-11 03:49:52

标签: arduino

我的arduino库有问题。编译器无法识别我的班级平台,并说:“错误:'平台'未命名类型”。

以下是主程序代码:

#include <Platform.h>

#define MOVE_FORWARD  0xFF
#define MOVE_BACKWARD 0xF0

// Error 'Platform' does not name a type
Platform plt(13, 14, 15);

void setup() {
    Serial.begin(9600);
}

void loop() {
    if (Serial.read() == MOVE_FORWARD)
        plt.move(5);
    if (Serial.read() == MOVE_BACKWARD)
        plt.move(-5);
}

这是Platform.h代码:

#ifndef PLATFORM_H
    #define PLATFORM_H

#include <arduino.h>
#include <Motor.h>

class Platform {
    public:
        Platform(int input_1, int input_2, int enable); // Pins for L293D
        void move(int distance);
    private:
        Motor *m_motors; // All motors connected to one L293D
};  

#endif

平台的实施:

#include "Platform.h"

Platform::Platform(int input_1, int input_2, int enable){
    m_motors = new Motor(input_1, input_2, enable);
}

void Platform::move(int distance){
    byte mm_delay = 100;
    byte motor_power = 128;
    if (distance > 0)
        m_motors->forvard(motor_power);
    else if (distance < 0)
        m_motors->backward(motor_power);
    delay(mm_delay*distance);
    m_motors->stop();
}

编译器的行为对我来说很奇怪,因为Motor库运行良好,Platform.h的结构与Motor.h的结构相同。

1 个答案:

答案 0 :(得分:0)

从上面的程序可以看出,由于以下原因,错误报告您的收到。您需要将标题包含文件从#include <Platform.h>更改为include "Platform.h"