問題タブ [uart]

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 に答える
861 参照

c - DE2 で UART シリアル経由でデータを送信する方法

2 つの Board-DE2 を COM ワイヤで接続すると、このコードは UART 経由でデータを送信しません。動作しない理由がわかりません。どうしたの?

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

java - Java での UART のパフォーマンスが異なるのはなぜですか?

PC の通常のシリアル ポートを使用して、Java アプリケーションでデータを送受信しています。PC は Java 1.6.0 で Windows XP SP3 を実行します。コードは次のとおりです。

データを送信するために、キュー (ArrayBlockingQueue) からパッケージを取得して UART で送信するスレッドをセットアップしました。受信についても同様です。アプリケーションの他の部分は、単純にパッケージを送信キューに挿入し、受信キューをポーリングして応答を取得できます。

各送信パケットは最大 256 バイトで、転送には 256*8 ビット / 115200 ビット/秒 = 17,7ms かかります。

Time2-Time1 の測定値、つまり送信時刻を配列に入れ、後で確認します。256 バイトの転送には転送に 15 ミリ秒かかる場合があることがわかりました。これは、理論上の最小値に近いため、問題ないようです。理論よりも実際に高速である理由はわかりません。ただし、問題は、256 バイトの転送に 32 ミリ秒、つまり必要な時間の 2 倍かかる場合があることです。何が原因でしょうか?

/ヘンリック

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

serial-port - Beagle Bone シリアル通信

私は Beagle Bone Rev A5 に取り組んでおり、UART1 と UART2 はこれらのマルチプレクサ設定で正常に動作しています。

ここで、ハードウェア フロー制御を有効にし、そのために UART4 と UART5 を使用したいと考えています。、、、の&を有効Rxにするのを手伝ってくれる人はいますか? これらの設定はどうなりますか?TxRTSCTSUART 45muxUART

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

microcontroller - 文字を 4 バイトで取り除く

わかった!マイクロコントローラーが 0 から 1023 までの ADC 値を送信するプログレス バーに受信データを表示する 1 つのアプリケーションを作成したいのですが、これを作成する方法がわかりません。シリアル ポート ターミナルを作成しました。

データウィッチを表示するには、この「1023101509410888085208510828075706520558048704290374」と同じように見えます。これを進行状況バーに表示したいのですが、すべての番号が1つずつ受信されます...英語で申し訳ありません私はルーマニア人です...

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

c - rs232 から uart への複数バイトの読み取り (avr atmega16)

PC から atmega16 にシリアルで 4 バイトのデータを送信しています。私はUARTを使用しています。1 つの手法は、データシートで指定された関数を使用することですが、ポーリングを使用するため、コードの残りの部分をブロックします。だから私はwhileループを使用しています。しかし、whileループが始まるときのコードの構造を理解できません..これで私を助けてください. thnx

0 投票する
6 に答える
410937 参照

c# - クロススレッド操作が無効です: コントロール 'textBox1' は、それが作成されたスレッド以外のスレッドからアクセスされました

UART を使用してマイクロコントローラーから温度値を C# インターフェイスに送信し、温度を表示したいと考えていますLabel.Content。ここに私のマイクロコントローラコードがあります:

私のC#コードは次のとおりです。

しかし、そこで例外が発生します "クロススレッド操作が無効です: コントロール 'textBox1' は、それが作成されたスレッド以外のスレッドからアクセスされました" マイクロコントローラーから温度文字列を取得し、このエラーを削除する方法を教えてください!

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

java - UARTからのデータ処理

ADCの複数のチャネルからサンプルを取得し、処理とグラフ化のためにアプリに送り返す外部デバイスUcに接続されている、Javaでアプリケーションのコードを書くこの問題に行き詰まっています。私の問題は、後で処理するために、サンプリングされた各チャネルに対応するサンプルのデータを並べ替えて保存する方法がわからないことです.3つの異なるチャネルからのすべてのデータを一度にグラフ化することはできません. どんな提案でも大歓迎です!

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

python - PySerial とマイクロコントローラ

pySerial で UART 経由で MCU と通信しようとしています。Arduino USB2Serial Light Converter を使用して、PC から PIC33F にデータを送信します。Arduino コンバーターが原因で、CTS や RTS を使用できません。

MCU にデータを送信し、MCU からデータを受信することもできました。しかし問題は、データが常にあるべきものとは限らないことです。

たとえば、MCU から端末に文字列全体を送信したいのですが、MCU プログラムのコードで指定された文字列ではありません。別の問題は、文字間の比較が機能しないことです。つまり、キャラクターを MCU に送信すると、MCU はそれをキャラクターと比較して決定を下します。

さて、いくつかのコードに進みます:

1. PIC33F から PC に文字列を送信し、pySerial で読み取る

このコードを介して読み取った場合の結果pySerialは次のとおりです。

2. データを PIC33F に送信しpySerial、エコー バックします。

これは単一の文字に対してのみ機能し、文字列に対しては機能しません。また、エコーバックされる文字は、大文字と小文字の間でランダムに切り替わります。

UART 構成:

}

どこに問題があるのか​​わからないので、ちょっとイライラしています。何時間もの間、どこでもテストと読み取りを行ってきましたが、これを起動して実行するのはとても簡単に思えますが、私の側ではうまくいきません;(.私はPIC33Fにデータを書き込もうとしましたが、serial.write('text'.encode('ascii'))すべて serial.write(struct.pack('s',('test')))同じ結果が得られました.

どんな助けでも大歓迎です!

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

c# - LinkSprite JPEG カラーカメラで写真を撮る

LinkSprite JPEG Color Camera を使用して写真を撮っています。UART から C Sharp の文字列として画像データの 16 進値を取得しています。カメラのユーザー マニュアルには、画像のデータ構造が 16 進数の FFD8 で始まり、FFD9 で終わると説明されています。私が得ている値は、この説明に適合しています。この 16 進値を ByteWriter を使用してファイルに保存すると、出力ファイルが無効になり、画像が表示されません。これらの値を JPEG ファイルに変換するにはどうすればよいですか?

HCS12 マイクロコントローラー ベースの DRAGON トレーニング ボードを使用しています。UART経由でカメラデータを取得しています。そして、Cを使用してDRAGONボードにコードを記述しています。これが私のコードです:

http://pastebin.com/dR4BJMBZ

カメラ情報:
http://www.sparkfun.com/products/10061

ユーザーマニュアル:
http://www.linksprite.com/upload/file/1333187137.pdf

私のC#コード:

http://pastebin.com/WXnTL7jd

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

c - カーネルモジュールから 16550A シリアルポートに直接書き込む

シリアルポートに直接書き込む必要があります (irq ハンドラーでのハングアップをデバッグしようとしているため、割り込みを使用すると思われる通常のドライバーを経由せずにシリアルポートに書き込みたいと考えています)。

とにかく、シリアルポートへの書き込みをテストするために、この小さなコードを書きました。私は実行しました

通常のドライバーからポートを解放します。

コード:

リージョンのリクエストには成功しますが、シリアル ポート経由でデータを取得できません。私が間違っていることを誰かが知っていますか?さまざまな設定 (fifo の有効化/無効化など) を試しましたが、うまくいきませんでした。