2016-11-10 17:02 | カテゴリ:PIC応用回路


今回導入したのは、ZEROPLUS社(台湾メーカ)LAP-C 16032という機種です。
16ch同時取り込みで、最大100MHzでサンプリングでき、メモリーは32KBです。
一連のシリーズ中で最も下のランクに位置づけされます。
このモデルは、いつもの秋月さんでは在庫がなく(64KBメモリー版はありましたが)ストロベリーリナックスさんで購入しました。
15千円ほどでしたが、クリップ端子が20本おまけでついていましたので、お得感がありました。

さて、このロジアナですが、使ってみれば、素人の電子工作には十分すぎるほどの性能と機能です。

DSC02979.jpg


今回は、このロジアナの特徴の一つでもある、信号解析の機能をテストしてみました。
テストしたのは、

「i2c」と「RS232通信(USART)」の二種類です。

つづきは、、、



まずは、PICで最近よく使用する「i2c」です。
「i2c」は、プログラミングは慣れてしまえば、START信号とかSTOP信号とかプログラミング上はコツがわかればそれほど困難ではありませんが、実際にi2c危機と通信して、動作しない場合の確認が大変でした。
テスターやオシロでは信号を見られませんので。
そこで、このロジアナの登場です。

DSC02977.jpg


ロジアナのプローブをi2cのSCKとSDA、それからGNDに接続します。
その後、ロジアナの機能メニューから、SCKとSDAのchを「バス信号解析にまとめる」として、解析メニューからi2cを選択。
トリガーをSCKのchで立ち上がりトリガに設定して回路の電源をONにするだけです。

以下がその結果の画面です。

B_i2c_1.jpg


まず、START信号が出て、その後、スレーブアドレス(5C)が出力され、次に書き込みを表すWRITEコマンドを出力。
ACKが返され、書き込むデータ(0F)が出力されているのがわかります。

B_i2c_2.jpg

データ(0F)の後は、ACKが返され、次のSTARTコマンドに続き、再度スレーブアドレス(5C)、次に、読み込みコマンドが出されて、ACKに続いて、読み取りデータとして機器から(BB)が返されます。
実はこの一連のデータは、昔に製作した気圧計のICから、そのIDコマンドを読み出す動作なんです。
機器のスレーブアドレスが(5C)、機器のIDコマンド格納レジスタのアドレスが(0F)、そして、そのアドレスの(0F)に格納されているIDデータが(BB)で、それが返されてきました。

B_i2c_3.jpg

目的のデータが返された後は、D-NACKでこれ以上データがない、という合図で、最後はSTOPで完了。
続いて操作する際は、再度、STARTで始まります。


この解析機能の最もありがたい点は、上記のデータが、いわゆる「01010101」の信号ではなく、ちゃんとSTARTとかデータとかで表示される点です。
この機能がなければ、画面の下の、単なる波形しか表示されませんので、STARTとかのコマンドを理解するには、とても大変な作業になります。


次は、RS232信号です。

B_RS232.jpg


こちらは、とりあえずテストとして、文字「G」を一つ送信した際の波形で試してみました。
i2cと同様に解析部分をセットして、今度は、i2cではなく、USARTを選択します。

トリガーをかけて、読み込むとこのように、STARTビット、データ、STOPビットとして表示されます。
これも簡単に通信内容が読み取れますので、PICの回路をPCに接続してテストして、「うまく動かない」となった際にちゃんと信号が出ているのか?を確認するにはもってこいです。

これはよい買い物をしました~~


===================================


以下、前回のCPU付きLEDの動作サンプルプログラムです。

Samp.txt

テキストファイルですので、内容をお手持ちの main.c にコピペして、コンパイルしてから実行してください。
これ以外には、他にヘッダーファイルなどは不要です。





【ジャンル】:趣味・実用 【テーマ】:電子工作
コメント(4)

管理者のみに表示する