問題タブ [software-serial]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
326 参照

arduino - Arduino Yun とソフトウェアのシリアル エラー

nrf24L01 モジュールを arduino yun に接続しようとしていますが、出力が意味不明です。

これは私のコードです:


これは出力です:

そのはず:

数字はわかりませんが、文字はわかります

0 投票する
1 に答える
1346 参照

arduino - ArduinoソフトウェアシリアルがSPIと衝突?

SPI経由でnRF24l01 +無線モジュールを使用しているArduinoプロジェクトがあります(このライブラリを使用:http://tmrh20.github.io/RF24/)およびソフトウェアシリアル経由のRFIDリーダー。私はArduinoをスリープ状態にして、メッセージを受信したとき、またはRFIDタグを読み取る準備ができたときに、割り込みを介してArduinoを目覚めさせます。RFID はピン 4 と 5 にあり、nRF はピン 9 ~ 13 と割り込み用の番号 2 をカバーします。

これらのモジュールは両方とも、スリープ コードと割り込みコードを別々に使用すると正常に動作しますが、1 つのスケッチに組み合わせると、Arduino は RFID タグにより起動し、それを読み取り、無線で何かを送信しようとして、ハングします。 write() へのライブラリ呼び出しが戻るのを待っています。

2 つのライブラリについて少し掘り下げましたが、ほとんどの場合、softwareserial ライブラリの頭も尻尾もわかりません。私の nRF モジュールと同じ ISR を舞台裏で使用しているようですが、なぜそれが大きな問題になるのかすぐにはわかりません。また、無線がハングする理由もわかりません。

私はそれがロングショットかもしれないことを知っていますが、誰かが何が起こっているのか知っていますか? 多分誰かがこれらのライブラリを知っていますか?回避策について何か考えはありますか?ありがとう。

0 投票する
2 に答える
718 参照

arduino-uno - Arduino ソフトウェアのシリアル ライブラリが動作しない

Arduino Uno 用の非常に単純なコードがあります。SoftwareSerial lib を使用します。

rxPin と txPin は互いに直接接続されています。Arduino も USB 経由で PC に接続されています。mySerial.available() ループから応答がありません。mySerial.read() は -1 を返します。誰が知っていますか、どこに問題があるのでしょうか? SoftwareSerial が機能しません。

0 投票する
1 に答える
5732 参照

arduino - SoftwareSerial の例が期待どおりに機能しない

最近、スマート メーターから出力されたデータを読み取るために Arduino UNO を購入しました。メーターはシリアル通信を使用しており、ラップトップの画面に出力される値を確認したいと考えています。SoftwareSerial ライブラリを使用して着信データを読み取り、そのデータをハードウェア シリアルと Arduino IDE のシリアル モニターを使用して画面に出力する必要があると考えました。Arduino での (ソフトウェア) シリアル通信に慣れるために、SoftwareSerial ライブラリのドキュメントを確認しました。問題は、最も基本的な例を機能させることができず、かなり長い間これに固執していることです。サンプル コードは以下のとおりです。例はここにあります。

私が理解している限りでは、次のことが起こるはずです: - シリアル モニタ ウィンドウにテキストを入力します。-Serial.read()このデータを読み取り、ソフトウェア シリアルに書き込みます。- ソフトウェア シリアルはこのデータを読み取り、シリアルに書き戻します。- 書いたものが画面に表示されます。

しかし、私が何をしようとしても、何も起こりません。私が従おうとしたものの中で: - ソフトウェアとハ​​ードウェアの両方のシリアルのボーレートを変更します (たとえば 9600)。- 別の SoftwareSerial ライブラリ (AltSoftSerial) を試しました。- SoftwareSerial の異なる RX および TX ピンを試しました。- の代わりにSerial.write(mySerial.read());char最初に結果を格納します。

私はおそらく明らかな何かを見逃しています。これに光を当てることができる人、またはスマートメーターからデータを読み取る別の方法を提供できる人に感謝します.

編集

例では「この例には回路がありません」と指定されていたため、配線はありませんでした。@slash-dev によって提案された 3 つのオプションをすべて試しましたが、期待どおりの動作をするものはありませんでした。

SoftwareSerialピン 1 をピン 10 に、ピン 0 をピン 11 に接続するワイヤを使用します。奇妙な文字が出力されます。

AltSoftSerial1-8 と 0-9 を接続するワイヤー付き。最初に印刷Goodnight moon!し、次に印刷を続けますÔ당¥�¡Ñ�moon!

NeoSWSerial1-10 と 0-11 を接続するワイヤー付き。と同じですAltSoftSerialが、印刷を続けますÔë‹–+ë¡Ñ�j½½¹…j

0 投票する
1 に答える
251 参照

arduino - Arduino関数実行時間

私は Arduino と APC220 ワイヤレス トランシーバーを持っています。SoftwareSerial クラスを使用して APC からデータを読み込むライブラリを作成しています。i私はもともと、読み取り可能なデータがない場合でも変数がインクリメントされるため、セグ フォールトを引き起こしていた以下の (間違った) コードから始めました。たまたま機能した場合 (たまたまデータがすぐに利用可能になった場合)、この関数の実行には約 6 ミリ秒かかりました。i++;ステートメントを適切な場所 (すぐ上の右中括弧の上) に配置すると、関数の実行に 270 ミリ秒以上かかります。この関数には速度が重要なので、このような劇的な時間の増加を引き起こすステートメントの配置についてはどうなのか疑問に思っています。

以下のコードでは、buffは as として宣言されchar buff[10];、sSerial は のインスタンスです。SoftwareSerial

0 投票する
2 に答える
1133 参照

avr - SoftwareSerial が Atmega128 で動作しない理由

インストールして使い始めたばかりの Atmel Studio 7 でプログラムを書いています。Arduino 用のスタジオをセットアップし、サポートされているチップのライブラリに Atmega128 を追加しました。すべてが良いです。SoftwareSerial ライブラリを使用してコンパイルしようとすると、Atmega128 と Atmega64 は SoftwareSerial をサポートしていないというエラーが表示されます。どうしてこれなの?このAVRがatmega328などと大きく異なる点は、ライブラリをサポートしないことです. atmega128でSoftwareSerialまたはSoftUartを使用するためのより良いアプローチはありますか? ありがとう

0 投票する
0 に答える
592 参照

arduino - ソフトウェアのシリアルの問題

私は Genuino101 ボードと HM-11 モジュールを持っています。名前などのモジュールのパラメーターを設定しようとしています。そのため、単純なコードから始めましたが、機能しません。ご覧のとおり、私のシリアル モニタには "SETUP 1" と "SETUP 2" が表示されるはずです。しかし、これは私のシリアルモニターが示すものです。

SETUP 1

「SETUP 2」は表示または印刷されませんでした。したがって、問題はその間にあると推測しています。私はコメントアウトしようとしmySerial.begin(4800);ましたが、これを見ました。

を削除したことを除いて、正常に動作しmySerial.begin(4800)ます。

これはソフトウェアのシリアルの問題ですか? ボーを 9600 に変更してみましたが、それでも問題が発生します。mySerial.begin(4800)arduinoを一時停止するように見えます。助けてください。

編集:

問題は、RX/TX ピンが入れ替わったために発生したソフトウェア シリアルの初期化エラーにより、コードが途中で一時停止したことでした。この問題は、RX/TX ピンを交換した後、自動的に修正されました。