2016-05-28 6 views
0

私はarduinoが追加されたボタンでオブジェクトを配置しようとしています。 私はそれを管理するFunduinoを持っています。そこに4つのボタンがありますが、私はそれらの3つを使用します。しかし、私はシリアルポートからデータを取得できません。WinformのArduinoからデータを受け取る

だから私はあなたに私に、これらの3つのボタンが押されているかどうかをC#インターフェイスで取得する方法について、いくつかのヒントを教えてもらえますか?

ここでArduinoの中の私のコード:

// Store the Arduino pin associated with each input 
const byte PIN_BUTTON_SELECT = 6; // Select button is triggered when joystick is               pressed 

const byte PIN_BUTTON_RIGHT = 3; 
const byte PIN_BUTTON_UP = 2; 
const byte PIN_BUTTON_DOWN = 4; 
const byte PIN_BUTTON_LEFT = 5 
void setup() { 

Serial.begin(9600); 

// Specify each pin connected to a pushbutton as an input. 
// Also enable the Arduino's internal "pull-up" resistors 
// for each pushbutton we want to read--this means the shield 
// doesn't need to have resistors on it. 
// Note that when a pull-up resistor is used on a pin the 
// meaning of the values read are reversed compared to their 
// usual meanings: 
// * HIGH = the button is not pressed 
// * LOW = the button is pressed 
pinMode(PIN_BUTTON_RIGHT, INPUT); 
digitalWrite(PIN_BUTTON_RIGHT, HIGH); 

pinMode(PIN_BUTTON_LEFT, INPUT); 
digitalWrite(PIN_BUTTON_LEFT, HIGH); 

pinMode(PIN_BUTTON_UP, INPUT); 
digitalWrite(PIN_BUTTON_UP, HIGH); 

pinMode(PIN_BUTTON_DOWN, INPUT); 
digitalWrite(PIN_BUTTON_DOWN, HIGH); 

pinMode(PIN_BUTTON_SELECT, INPUT); 
digitalWrite(PIN_BUTTON_SELECT, HIGH); 
} 


void loop() { 


} 
+0

は9600が正しいボーレートですか? – Odrai

+0

はいそれはシリアルポートで動作します –

+0

以下の回答は仕事になりましたか、さらに詳しい情報が必要ですか? – Odrai

答えて

0

ループ方式での読み取り機能を実装:

void loop() { 
    // read the state of the pushbutton value: 
    buttonState = digitalRead(buttonPin); 

    // check if the pushbutton is pressed. 
    // if it is, the buttonState is HIGH: 
    if (buttonState == HIGH) { 
    // turn LED on: 
    digitalWrite(ledPin, HIGH); 
    } else { 
    // turn LED off: 
    digitalWrite(ledPin, LOW); 
    } 
関連する問題