5

Arduino Unoを購入したばかりで、現在点滅するLEDを作ろうとしています。どうすればこれができるのだろうと思っていたのですが、Arduino Playground を見て、入力を取得するプログラムを見つけました。Arduinoに出力する必要があります。Arduino を必要とする別のプログラムが既にあるため、Java 以外を使用することはできません。アイデアを残してください。

4

1 に答える 1

0

編集: Javaでこれをやりたいようです。

jayeffが言及したサイトからの抜粋:

OutputStream には、コンピューターから Arduino にデータを送信するための 3 つの異なる書き込みメソッドが付属しています。上記の例では、 を使用 output.write(String)してデータを送信できますoutput.write("Hello Arduino!")

Java を使用して Arduino に書き込もうとしている場合は、これが答えです。

http://arduino.cc/playground/Interfacing/Java


編集:Java以外のものを使用したい場合は、ここに行きます:

求めなさい、そうすればあなたは受け取るでしょう。これは、シリアルをサポートする任意のプログラミング言語で行うことができます。

確かに言語ごとに他の方法がありますが、Google マシンで 5 分で見つけたいくつかの方法を次に示します。

注:厄介なシリアルの問題の自動リセットに注意してください。詳細については、以前の回答を参照してください。

これが私のC++コードです(見苦しいですが動作します)

#include <SerialStream.h>
#include <iostream>
#include <string>
#include <stdio.h>
#include <stdlib.h>

using namespace std;
class SerialComm {
    LibSerial::SerialStream myss;
public:

    SerialComm(int argc, char** argv) {
        myss = new LibSerial::SerialStream("/dev/ttyS0", ios_base::out);
        myss.SetBaudRate(LibSerial::SerialStreamBuf::BAUD_57600);
        myss.SetCharSize(LibSerial::SerialStreamBuf::CHAR_SIZE_8);
        myss.SetFlowControl(LibSerial::SerialStreamBuf::FLOW_CONTROL_NONE);
        myss.SetParity(LibSerial::SerialStreamBuf::PARITY_NONE);
        myss.SetNumOfStopBits(1);

        const int Dsize = 2;
        char buffer[1];
        buffer[0] = 125; //0b00000001;
        buffer[1] = '\0';
        bitset(buffer[0]);
        //myss << buffer;
        myss.write(buffer,1);
        //myss.Close();

    }
}
于 2012-07-05T15:26:05.563 に答える