タグ付けされた質問 「serial」

シリアル通信は、Arduinoとコンピューター間の標準的なUSB接続で、標準のUSB A / Bケーブルを使用するか、USB /シリアルコンバーターを使用してTX / RXピンを介します。シリアルライブラリを参照することもできます。


12
文字列に複数の変数を印刷するにはどうすればよいですか?
端末に出力したい変数がいくつかあるとしたら、それらを文字列で印刷する最も簡単な方法は何ですか? 現在、私は次のようなことをしています: Serial.print("Var 1:");Serial.println(var1); Serial.print(" Var 2:");Serial.println(var2); Serial.print(" Var 3:");Serial.println(var3); これを行うためのより良い方法はありますか?

20
シリアルデータプロットプログラム
Arduinoからシリアルデータをプロットする必要があります。 次のサポートが必要です。 さまざまなデータ形式(たとえば、符号付き、符号なし、8ビット、16ビット)。 同じ軸に複数のデータをプロットします。 ファイルデータをエクスポート/インポートします。 Arduinoからシリアルデータをプロットすることは一般的なニーズであるため、私の質問は次のとおりです。 あなたが提案した方法の利点/欠点は何ですか?
36 serial 

6
Serial.begin():なぜ28800を常に使用しないのですか?
オンラインの多くのサンプルコードSerial.begin(9600)では、セットアップブロックに行を追加しています。 Serial.begin()公式ドキュメントの内容を調べると、ビット/秒のデータ転送を制御していると書かれています。 したがって、明らかな質問は、最高の転送速度である28800を使用してはどうですか?なぜ人々は9600に落ち着くのですか?ここでの制限は何ですか?
35 serial 

3
なぜシリアルモニターを起動するとスケッチが再開されるのですか?
シリアルデータを送信するスケッチをアップロードすると、スケッチがアップロードされるとすぐにTX / RX LEDが点滅します。その後、シリアルモニターを起動すると、スケッチが再起動するように見えます。 この動作を示す最低限のスケッチ: void setup() { Serial.begin(9600); Serial.println("Setup"); } void loop() { Serial.println("Loop"); delay(1000); } 複数のボードと、MacおよびWindowsバージョンのIDEでテスト済み。 出力例-シリアルモニターを開くと、「セットアップ」に戻ります。 どうしてこれなの?



2
USB HIDとしてのArduino
Arduino Unoを使用してHIDデバイス(キーボードなど)を構築することは可能ですか? 現時点では、Arduinoにボタン入力があり、シリアルラインに出力があります。では、現在のファームウェアをHIDキーボードのように動作するものに変換するにはどうすればよいですか? 新しいウィンドウデバイスドライバを作成しますか? シリアルデータを取得し、WindowsにHID入力として読み取らせるソフトウェアレイヤーを作成しますか? 可能であれば、これを達成するためのより良い方法はありますか?


4
通信プロトコルのベストプラクティスとパターン
2つのarduino間で使用されるシリアルプロトコルを設計するたびに、車輪を再発明しているように感じます。人々が従うベストプラクティスやパターンがあるのだろうか。この質問は実際のコードに関するものではなく、メッセージの形式に関するものです。 たとえば、arduinoに最初のLEDを3回点滅させるように指示したい場合、次のように送信します。 ^L1,F3\n '^':新しいコマンドを開始します 'L':コマンドを定義します(L:このコマンドをLEDに向けます) 「1」:最初のLEDをターゲット '、':コマンドラインセパレータ、このメッセージの新しい値 'F':Flashサブコマンド 「3」:3回(LEDを3回点滅) '\ n':コマンドを終了します 考え?通常、新しいシリアルプロトコルの作成方法を教えてください。arduino 1からarduino 2にクエリを送信してから応答を受信する場合はどうでしょうか?
19 serial 

2
他のコンポーネント/デバイスがUnoに接続されているときにスケッチをアップロードできないのはなぜですか?
Arduino Uno(より具体的にはSainSmartクローン)を使用して、一連のLEDを順番に点滅させるかなり単純な回路を作成したかったのです。私はスケッチを書き、それはうまくコンパイルしました。その後、8個のLEDS +抵抗器をピン0から7に接続し、USB経由でUnoをコンピューターに接続しました。 過去にスケッチを正常にアップロードしたことがあるので、設定やドライバーなどが正しいと確信しています。ただし、今回スケッチをアップロードしようとしても、うまくいきませんでした。 Arduinoのピンに接続したものをすべて削除しようとしたところ、突然アップロードが再び機能しました。 なぜこれが起こるのですか?スケッチをアップロードするたびにボードからすべてを切断する必要があるということですか?

13
Arduino Nanoのアップロードでエラーが発生する:avrdude:stk500_recv():プログラマーが応答していません
スケッチをアップロードしようとしているArduino Nano(Sainsmart)があります。Arduino IDEでは、選択されたデバイスはでしたArduino Nano w/ ATmega328。 ただし、スケッチをアップロードするとエラーが発生します avrdude: stk500_recv(): programmer is not responding 両方のUSBポート(/dev/tty.usbserial&/dev/cu.usbserial)を試しましたが、同じエラーが続きます。ArduinoはUSBケーブルを介してMacbook Airに接続され、ArduinoのPWRLEDインジケータライトがオンになり、LインジケータLEDが点滅します。Arduino Unoへのアップロードに問題はありませんでした。 最新のFTDIドライバ(MAC OSX、x64の、v2.2.18、FTDIUSBSerialDriver_10_4_10_5_10_6_10_7.mpkg)をインストールした後に再試行http://www.ftdichip.com/Drivers/VCP.htm。しかし、それは助けにはなりませんでした。 何が間違っていたのでしょうか?

1
Arduino Nano MacBook Air 2013のシリアルポートなし
問題 USBケーブル(タイプAからミニタイプB)を介してMacBook Air(Mid 2013モデル)にArduino Nanoを接続しています。Arduinoが接続されている間、PWR LEDは点灯します。 Arduinoソフトウェアを開いてTools > Serial Portメニューをプルダウンしても、有効なシリアルポートが表示されません。私が見るすべては: /dev/tty.Bluetooth-Incoming-Port /dev/cu.Bluetooth-Incoming-Port /dev/tty.Bluetooth-Modem /dev/cu.Bluetooth-Modem 私が試したがうまくいかなかったこと 正しいFTDIドライバー(v2.2.18)をインストールしました。MacBook AirのCorei5のx64ファイルFTDIUSBSerialDriver_10_4_10_5_10_6_10_7.mpkg。インストール後に再起動しました。 私のAirの両方のUSBポートにarduinoを接続しようとしました。 より詳しい情報 Mac OSX 10.10 Yosemiteの実行 WindowsマシンまたはRaspberry Piに接続すると、同じarduinoとケーブルが機能します。 それが役立つ場合は、USBシリアルがApple Logo > About This Mac > System Report下に表示されますHardware > USB USB2.0-Serial: Product ID: 0x7523 Vendor ID: 0x1a86 Version: 2.54 Speed: Up to 12 Mb/sec …

6
サンプリング周波数を知るにはどうすればよいですか?
私はサンプリングレートやボーレートなどについて少し混乱し始めています。このArduinoコードがあります: #include <eHealth.h> extern volatile unsigned long timer0_overflow_count; float fanalog0; int analog0; unsigned long time; byte serialByte; void setup() { Serial.begin(9600); } void loop() { while (Serial.available()>0){ serialByte=Serial.read(); if (serialByte=='S'){ while(1){ fanalog0=eHealth.getECG(); // Use the timer0 => 1 tick every 4 us time=(timer0_overflow_count << 8) + TCNT0; // Microseconds conversion. …


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.