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

は、通信チャネルまたはコンピュータバスを介して、一度に1ビットずつ順番にデータを送信するプロセスです。従来、「シリアル」は3線式(ハードウェアハンドシェイクではそれ以上)のワイヤシステム(TIA-232-F)に関連しており、現在は∓25Vの電圧を使用しています。技術的に言えば、専用のSPI(シリアルペリフェラルインターフェイス)バスとI2C(相互集積回路)バスもシリアル通信システムです。より適切な場合は、これらのタグの1つを使用してください。


3
Raspberry Piは9600ボーシリアルを確実にビットバンできますか?また、サンプルコードはありますか?
Raspberry PiのGPIOピンを介してビットバンギングを使用して9600ボーシリアルを駆動することがどのように実行可能かと思います。 明らかに、長時間(1〜10ミリ秒)CPUをブロックするドライバーやその他の割り込みが多数存在するため、Linuxはビットバンギングに適したプラットフォームではありません。ただし、最近は状況が大幅に改善されており、カーネルでプリエンプションが定期的に有効になっています。また、リアルタイムパッチを適用したカーネルをRaspberry Piで簡単に使用でき、接続されたハードウェアとドライバーを慎重に選択できると思います。 信頼性に関する私の基準は、ほとんどの場合、通常の9600ボーシリアルトレランス内に収まることです。現在、実際に許容できるエラーの数は不明ですが、プロトコルには再送信と確認応答があるため、少なくとも多少の許容範囲があります。 だから、私の質問は: ユーザーランドソフトウェアは9600ボースピードを確実にビットバンできますか? これにはリアルタイムのパッチが適用されたカーネルが必要ですか? 一般に、いくつのエラーを予想する必要がありますか? また、GPIOビットバンギングを介してシリアルを実行するサンプルコードはありますか?私はArduino SoftSerialを知っていますが、それはそれについてです。 念のため、質問を制限するために:これは標準のシリアルインターフェイスではなく、Raspberry PiのUARTは別のシリアルリンクに既に使用されています。外部ハードウェア(GertboardやArduinoなど)を示唆する回答も、UARTに依存する回答も希望しません。
29 gpio  serial  bit-bang 

3
プリンターをシリアルGPIOピンに接続するにはどうすればよいですか?
Adafruitからミニサーマルプリンターを購入しました。ドキュメントの状態: このプリンタは、マイクロコントローラとのインターフェースに最適です。マイクロコントローラからの3.3V〜5V TTLシリアル出力が必要です。 3.3VIのGPIO出力のシリアルピンは、プリンターをピンに直接接続でき、保護回路なしで機能することを想定しているためです。それは単純な仮定ですか?プリンターを使用するには、他に何をする必要がありますか?
15 gpio  serial  printing  uart 

1
モデルBで使用可能な追加の穴の使用法は何ですか
Webでのいくつかの調査にもかかわらず、Rpiのこれらの「機会」の穴から利用可能なオプションを見つけることができません。 私はおそらくそれらを識別するために適切な単語を使用しません。 このタイプの穴の名前は何ですか? 通信A、BC「機会」の使用法は何ですか?

3
Raspberry PiをArduino Uno R3に接続する最も安全な方法
私はArduino Uno R3を使用してロボットに取り組んでおり、毎回電源プラグを抜かずにArduinoを停止するなど、Arduinoをワイヤレスで制御できるようにしたいと考えていました。 Raspberry PiをArduinoに接続する最も安全な方法を知りたいのですが、電圧が大きく低下するリスクはありません。 私はこれらのページごとに、I2Cシリアルを使用して見て:http://blog.oscarliang.net/raspberry-pi-arduino-connected-i2c/&http://blog.oscarliang.net/connect-raspberry-pi- and-arduino-usb-cable /。私はまだUSBを調べていません。私がこの質問をしている理由は、i2cの投稿で、電圧差に注意する必要があると言っているからです。 仕組みは?安全ですか? Raspberry Piは3.3ボルトで動作し、Arduinoは5ボルトで動作しています。I2C通信にレベルコンバーターを使用することを提案するチュートリアルがあります。Raspberry Piが「マスター」として実行され、Arduinoが「スレーブ」として実行されている場合、これは必要ありません。 RPiをマスターとして、Arduinoをスレーブとして安全に接続するにはどうすればよいですか。
13 serial  i2c  arduino 

4
シリアルポートからデータを取得するにはどうすればよいですか?
私が持っているCiseco XRF無線モジュールとスライスパイの拡張ボードを。 プログラム 'screen'を使用すると正常に機能します。XRFモジュールに送信されるデータを見ることができます。 シリアルポートからデータを取得するにはどうすればよいですか?perlを試しましたが、何も読みませんでした。
12 serial 

5
GPIO-UART-Arduino通信
私は幸運にもRaspberry PiをArduinoに話させようとしていました。3.3 Vから5 Vへのコンバーターを使用して電圧を交換しています。私は入れなかったLEDを UART TXピンに、そして、それはデータを反転されたように見えます。これが当てはまる場合、Arduinoと通信するためにどの回路が必要ですか? Cool Components Logic Level Converterを使用しています。3.3 V〜5 Vのトランジスタと5 V〜3.3 Vの抵抗です。
12 gpio  serial  arduino 


5
ttyUSB0でDTRを無効にする
PiからArduinoクローンボードに接続しています。問題は、Arduinoが接続時にリセットされないようにするために、DTRラインを無効にする必要があることです。 RPiではDTR、DCD、その他の回線を制御することはできないことを読みました。これはRPiにグローバルに当てはまるのですか、それともシリアル通信に使用されるGPIOピンにのみ当てはまりますか? USBポートでDTRを無効にすることが可能である場合、それをどのように達成しますか?
11 raspbian  usb  serial  uart 

2
USBポートの列挙が変更されるのはなぜですか?
Huawei GMS / UMTS USBモデムをGnokiiとGammuで使用しています。モデムはPiの下のポートにありました。ではdmesg | grep ttyそれが上に表示されるでしょう/dev/ttyUSB0と/dev/ttyUSB1。(この場合、1つのスティックに2つのUSBデバイスが正常です)。 私はそれに応じてGnokiiとGammuを構成しましたが、ttyUSB0ではメッセージを送信することしかできませんでした。送信と受信の両方がttyUSB1でのみ機能します。 次に、スティックを上部のUSBソケットに移動しました(そうしないと、私のWiFiスティックが横に収まらないためです)。すべてが正常に機能し続けました。また、数回の再起動後、寒くて暖かい。 次に、ファイルシステムを拡張する必要がありました(そうですね、それを以前に行ったはずです)その後、モデムはttyUSB0およびttyUSB * 2 *上にありました。送信/受信は後者で動作しました。これを知るには少し時間がかかりました。 更新:2日後、ttyUSB2が消えました。動作しているモデムはttyUSB0(以前はttyUSB1)に現れました。 なぜこれが起こったのですか?関連するdebianやlinuxのドキュメントへのリンク、たぶん?私は大いに義務づけられるでしょう。

3
シンプルなウィンドウに画像ファイル(PNG)を表示するにはどうすればよいですか?
RFIDプロジェクトで表示する必要のあるプロトタイプを持っています。RFID(Parallax USB)が機能していて、サンプルのPythonスクリプト(私の最初のスクリプト)が想定どおりにカードのIDを表示しています...問題は、非常に説得力のあるデモ/プロトタイプではないことです。 私ができることを望んでいるのは、piでアプリケーションを起動し、どういうわけかPNGディスプレイを表示することです。新しいウィンドウ、フルスクリーンなど。次に、Piによってカードが検出されると、表示されている画像が入れ替わります(2.PNGの場合は1.PNGなど)。 画面に画像ファイルだけを表示させる最も実用的で、最も簡単で、最も速い方法は何でしょうか? RFIDを出力する私のコードは次のとおりです。 #! /usr/bin/python import serial import time ser = serial.Serial('/dev/ttyUSB0', 2400, timeout=1) # replace '/dev/ttyUSB0' with your port while True: response = ser.read(12) if response <> "": print "raw: " + str(response) print "hex: " + str(response[-8:]) print "dec: " + str(int(response[-8:], 16)) time.sleep(1) ser.close()

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