How-To:バス海賊、ユニバーサルシリアルインタフェースHow-To:バス海賊、ユニバーサルシリアルインタフェース
更新:JTAGの新しいファームウェアなど 私たちは常に新しいチップまたはSIMカードをインターフェースにするために常に恍惚としていますが、私たちの熱意は通常プロトタイピングプロセスによって湿られます。どんなチップのインターフェースは通常、回路、書き込みコード、およびプログラマを運搬することを示します。たぶんプロトタイピングPCBさえも。 数年前、私たちは、PCのシリアル端末から多くのチップと話すユニバーサルバスインターフェースである最初の「バス海賊」を構築しました。いくつかの従来のシリアルプロトコルは、I2C、SPI、および非同期シリアルを含む3.3~5ボルトでサポートされています。追加の「RAW」2および3ワイヤライブラリは、ほぼ専有のシリアルプロトコルをインタフェースできます。これが私たちにとってそのような有益なツールであったことを考えると、コードをクリーンアップし、デザインを文書化し、そのようなスペック、回路図、およびソースコードを解放しました。 コンセプトの概要 バス海賊は、複数のICインターフェースプロトコルへのシリアルターミナルブリッジです。コンピュータのシリアル端末にコマンドを入力します。コマンドはPCシリアルポートを介してバス海賊に移動します。バス海賊は適切なプロトコルのマイクロチップに相談し、結果をPCに戻します。 すべてのピンは3.3ボルトを出力しますが、耐性5Voltです。接続チップに電力を供給するために、オンボード3.3Voltと5Voltの電源装置があります。ソフトウェア設定可能なI2Cプルアップ抵抗器はパッケージを完成させます。 シリアル端末インタフェースは、PC、Mac、Linux、Palm Pilots、WinCEデバイスなどのシステムと連携します。 Crapwareは必要ありません。 USBデバイスを検討しましたが、USBはシリアルポートを持つ実質的な携帯端末と互換性がありません。また、5Volt耐性入力を備えた3.3Voltデバイスも望まれていましたが、多くの人気のあるスルーホールUSBマイクロコンントラルは5Voltの部品です(例えば、PIC18FX550)。 バス海賊は現在、高速インターフェース用の3つのハードウェアプロトコルを「話す」、バス操作を容易にするための2つのソフトウェアプロトコルライブラリを持っています。各プロトコルの理論と仕様は、ここでカバーできるものを超えていますが、これらのチュートリアルのいくつかをチェックしてください。 I2C 遅い2ワイヤバス。 WikipediaはI2Cの背景を始めるのに素晴らしい場所です。 i2c-bus.org、ロボットエレクトロニクス、組み込みシステムアカデミー、およびembedded.comは、I2Cチュートリアルを知っています。 スピ 基本3ワイヤバス。ウィキペディアは背景を持っています。 embedded.comは素晴らしいチュートリアルとI2Cとの比較を行いました。 ユニバーサル非同期受信機トランスミッタ(UARTまたはシリアル) PCシリアルポートプロトコルとしてその外観が最もよく知られているクロックおよびタイミング依存シリアルプロトコル。 Wikipediaは非同期シリアルプロトコルに関する背景を持っています。 生2ワイヤー これは、I2Cと同様であるがACKビットなしで一般的な2線式プロトコルライブラリです。このモードで利用可能なバス操作を使用して、I2Cと多くの独自の2線式プロトコルを作成できます。このライブラリを使用して、スマートカードやSENSIRION SHT11の温度/湿度センサーなどの非I2C 2ワイヤデバイスで動作します。 生3ワイヤー これは、SPIと同様の一般的な3つのワイヤプロトコルライブラリですが、ハードウェアモジュールの制約がありません。このライブラリを使用して、Sparkfun Nokia 6100 LCDノックオフのように、8bit互換性のない3-Wireプロトコルを使用するデバイスで動作します。このモードで利用可能なバス操作を使用して、たくさんの3つのワイヤプロトコルを形成できます。