2013-07-05 79 views
4

以控制3個直流電動機 和Arduino的Arduino的類「沒有指定類型」

和我創建的Arduino 4對象(主)我目前製造類 下面是代碼:

但是當我運行這段代碼很多錯誤發生這樣的

'elevator' does not name a type 
'elv1' was not declared in this scope 
'elv2' was not declared in this scope 
'elv3' was not declared in this scope 
'elv4' was not declared in this scope 

所以,我希望從人一些幫助,在這裏,關於我怎樣才能使我的課堂作業。

預先感謝您

這是我的代碼

elevator.h

#ifndef elevator_H 
#define elevator_H 

class elevator { 
    public: 
     int pos(int swa, int swb,int swc ,int swd); 
     void forwardDC(int A11,int A22); 
     void reverseDC(int A11,int A22); 
     void Breaking(int A11,int A22); 
     void stopDC(int A11,int A22); 
     char dir; 
}; 

#endif 

,這是elevator.cpp

#include "Arduino.h" 
#include "elevator.h" 

int elevator::pos(int swa ,int swb ,int swc ,int swd) { 
    int flag =0; 
    if (flag >= 4) 
     flag = 0; 
    if (digitalRead(swa) == HIGH) 
     flag = 1; 
    if (digitalRead(swb) == HIGH) 
     flag = 2; 
    if (digitalRead(swc) == HIGH) 
     flag = 3; 
    if (digitalRead(swd) == HIGH) 
     flag = 4; 
    return flag; 
} 

void elevator::forwardDC(int A11,int A22) { 
    digitalWrite(A1, LOW); 
    digitalWrite(A2, HIGH); 
    elevator::dir = 'F'; 
    delay(1000); 
} 

此聲明中的Arduino(.ino):

#include <elevator.h> 

elevator elv1; 
elevator elv2; 
elevator elv3; 
elevator elv; 
+1

TL; DR並格式化您的代碼。 – 2013-07-05 19:03:15

+0

也許你應該將一個參數傳遞給'#include'指令。 – Matthias

+0

我好高興,我無法理解你。你的意思是像這樣#include elv1 ?? –

回答

0

您必須添加該功能來創建新的電梯變量。

elevator.h

public: 
    elevator(); 
    ... 

elevator.cpp

elevator::elevator() { 
} 
1

當您使用

#include <elevator.h> 

這意味着從庫文件夾庫。相反,嘗試

#include "elevator.h"