3線式 - シリアルデータ転送(読み取り/書き込み)

M

Maverickmax

Guest
こんにちはそれは、3線を使用するのは初めてです - シリアル通信と私は学習していきます。これまでのところ私は記述する方法が、私は100%のデバイスからのシリアルデータを読むのかわからない理解しています。このようにして、シリアル転送でデータを読み取るCコードの例をお持ちですか?マーベリックマックス
 
シリアルデータ転送は、同期または非同期行うことができます。あなたは2線+必要が非同期に(ソフトやハードウェアプロトコル)を使用します。同期します。いくつかのフォーマットが2本のワイヤが+プロトコル= I2Cまたは4線プロトコルを使用しないがある= SPIをと同様に、他のどれを使用すると、話しているものです??
 
それはデータで構成されていますように井戸Imは、AT93C46などの3線式シリアルEEPROMを使用してデータ出力、SKとのCSで、。だから、私は転送されたデータはシリアルの順序で記述している、またはデバイスを読んでアルゴリズムを作成する必要があると思います。あなたは、私が何を意味するか知っていますか?マーベリックマックス
 
はい、私はシリアルEEPROMのためのプロトコル(シリアルペリフェラルインターフェース)なしで4線式を使用していますが、私は、プロセスを読むのかわからない。アドレスビットを送信した後、私はデータ出力ピンから1ビットを取得するために、シリアルクロック(オンとオフ)を使用してください?あなたは、Cのサンプルコードを提供してくださいできますか?マーベリックマックス
 
あなただけのあなたが読んするすべてのdatabyte 1(ダミー)databyteを作成する必要がありますSPIデバイスからdatabyteを読むしたい場合。 SPIは、読み取り、INとOUTに別々のdatalinesがあると同時に書き込みます。以下の私の小さなCの例(マイクロチップPIC)を参照してください。 [コード]の操作を行います{SSPBUF = 0x00に/ /シフトレジスタを開始するダミーの値を書き込むウォッチドッグ()は(STAT_BF!)/ / SPIの* buffer_adresse = SSPBUFを介して受信されているデータ転送が完了するまで待ってください。/ /ストアデータbuffer_adresse + +;}中( - buffer_counter); / /完全にブロックが読み取られるまで、[は/コード]は、これが役に立てば幸い
 
[OK]を、それがために、各データビットを送信した後、パルスを生成するために、自分のシリアルクロックの関数のプロトタイプを作成してもよい場合ですか?その非同期プロトコルはありますか?マーベリックマックス
 
あなたは私を与えたとして、私はリンクをチェックアウトされている。 AT89C51は、MOSIのか、味噌を持っていません。したがって、私はビット叩いアルゴリズムを実装する必要があります。それは正しいですか?マーベリックマックス
 
あなたは、Atmelのウェブサイト良いラックス3線式シリアルのソースコードを見つけることができます。
 
[引用= Maverickmax]は、あなたが私を与えたとして、私はリンクをチェックアウトされている。 AT89C51は、MOSIのか、味噌を持っていません。したがって、私はビット叩いアルゴリズムを実装する必要があります。それは正しいですか?マーベリックマックス[/引用]は、はいそれは正しいです。よろしくお願いいたします[/ URLの] のhttp://www.atmel.com/dyn/resources/prod_documents/doc4348.pdfの:また、Atmel社からこのappnoteを見てみましょう
 

Welcome to EDABoard.com

Sponsor

Back
Top