Tôi muốn chuyển một số mã của mình ra một tab thứ hai trong Arduino IDE, để giữ mọi thứ được tổ chức tốt hơn. Lúc đầu, tôi chỉ thử di chuyển một chức năng, và nó dường như hoạt động tốt. Tôi có thể gọi hàm từ setup()
hàm trong tab chính của mình và không có vấn đề gì khi biên dịch hoặc tải lên.
Tuy nhiên, tôi đã thử đặt cả lớp vào tab thứ hai và đột nhiên nó không hoạt động nữa. Ví dụ:
Tab 1:
TestClass obj;
void setup()
{
obj.init();
}
void loop()
{
//...
}
Tab 2:
class TestClass
{
public:
void init()
{
//...
}
};
Khi tôi cố gắng biên dịch nó, nó đã cho tôi các lỗi sau:
tab1:1: error: 'TestClass' does not name a type
tab1.ino: In function 'void setup()':
tab1:5: error: 'obj' was not declared in this scope
Tại sao nó nhận ra một hàm trong một tab khác, nhưng không phải là một lớp? Có cách nào để làm cho nó hoạt động trong Arduino IDE hay tôi cần sử dụng một giải pháp thay thế như Eclipse?
tab1
và tab2
tương ứng. Các tên được đặt bằng IDE, vì vậy các tệp bên dưới là cả hai .ino
.
#include
nào?