Arduinoがシリアルコマンドを解析して解釈するための簡単なライブラリを作成しようとしています。サンプルライブラリでの私の目標は、期待されるコマンドを読み取り、いくつかのLEDをオンにすることです。arduinoを介してシリアル通信が機能するようになりました。ライブラリで処理してほしいです。たとえば...私は私のarduinoに次のコードを持っています
Arduinoコード:
#include <serialComms.h>
serialComms testing = serialComms();
void setup()
{
Serial.begin(9600);
}
void loop() // not terribly concerned with the main loop, only the serialEvent, which I have tested and works
{
}
void serialEvent()
{
testing.readNewBytes();
testing.assignBytes();
}
serialComms.cpp
#include <Arduino.h>
#include <serialComms.h>
void serialComms::init()
{
// This is where the constructor would be...right now we are too stupid to have one
}
void serialComms::readNewBytes() // Target Pin,Values
{
digitalWrite(11,HIGH);
delay(250);
digitalWrite(11,LOW);
assignBytes();
}
void serialComms::assignBytes()
{
for(int t = 0;t<5;t++)
{
digitalWrite(10,HIGH);
delay(250);
digitalWrite(10,LOW);
}
}
serialComms.h
#ifndef serialComms_h
#define serialComms_h
/* serialComms Class */
class serialComms
{
public:
serialComms() {};
void init();
void readNewBytes(); // Will be used to create the array --> two variables for now...
void assignBytes();
};
#endif
私の質問は次のとおりです...
1.)ライブラリは適切に構造化されていますか?メッセージを送信してserialEventをトリガーするときにLEDを点滅させたいだけです。arduinoでコードを実行すると、次のエラーが発生します。
testingLibraries:2: error: 'serialComms' does not name a type
testingLibraries.ino: In function 'void serialEvent()':
testingLibraries:16: error: 'testing' was not declared in this scope
.cppファイルと.hファイルは、libraryフォルダーのserialCommsという名前のフォルダーにあります。ここからどこへ行けばいいのかよくわかりませんが、何か考えはありますか?