2017年6月4日日曜日

【raspberry pi】 SPIの波形はどうなってるの?(2)

一つ前の記事の続きです.

ラズパイのSPIの波形をチェックしているところです.

今回は、ラズパイのRaspbian OSのIO関連ライブラリである「Wiringpi」が持つSPI制御関数を試用します.

参考にさせてもらったのはこちらのサイトのサンプルプログラムです.
コンパイルするには、
gcc xxx.c -lwiringPi
のようにライブラリoptionをつけてください.
同プログラムを見ると、1秒毎に0x24を1バイトだけSPIから出力し、同時にSPIから読み込むという動作をエンドレスで実行するだけのプログラムです.

前回図示しましたように、SPI_MOSIとSPI_MISOをショートしてプログラムを実行すると、送信した1バイトすなわち0x24が受信され表示されます.MOSI/MISOショートを外すと表示が00になってしまいますので、loopback動作しているんだなぁと想像されます.

↓その時のSPI端子波形を示します.SCLKは8発です.それでloopback出来ていますので、MOSI/MISOが同時なのでしょう.

↓CEは1バイト毎にパタパタしているのかどうかをチェックしました.プログラムを変更して、3バイト送信/3バイト受信にしてオシロで観測したのがこれです.
CEは1バイト毎にパタパタさせないものなんですね.

前回の検証で得たことと同じでした.

かしこ

0 件のコメント:

コメントを投稿