2016年10月13日木曜日

ベースマシン UI ControllerとSequencerのSPIの信号線にダンピング抵抗を入れてみる。

風邪が抜けきらずにイマイチやる気がでません。正直しんどい(@@;

ファームウェアを多少いじってみたが、通信状態が不安定なのでブレッドボード用のジャンパ線ではなく、ケーブルをフラット・ケーブルとQIピンを使って作り直してみた。

接続状態は改善した(不用意に抜けたりしなくなった)が、やはり挙動が不安定。ためしに、SPIの信号線の途中でブレッドボード上でダンピング抵抗を入れてみた。


ケーブル長は、UI Controller(SPI Master)からブレッドボードまで30cm程度、ブレッドボードからSequnecer(SPI Slave)まで20cm程度。SPIのクロックは約2.6MHz。

SPI信号の波形


ダンピング抵抗なし



ch1:MOSI ch2:SCK


ch1:MISO ch2:SCK

33Ωのダンピング抵抗を入れた



ch1:MOSI ch2:SCK


ch1:MISO ch2:SCK


ch1: SlaveからMasterへの割り込み

信号線全部にダンピング抵抗を入れたら改善された感じだ。安定して動作するかどうか、もうしばらく動かしっぱなしにしてようすをみる。

ファームウェアも多少変更


BaseMachine UI Controller
https://developer.mbed.org/users/ryood/code/BaseMachine_UI_Controller/ Revision:50

BaseMachine Sequencer
https://developer.mbed.org/users/ryood/code/BaseMachine_Sequencer/ Revision:40

メモ:


ダンピング抵抗は出力側に近いほうがいいらしいので(理論的なことはよくわからないが)、UI ControllerのNucleoボード上にArduinoシールドを載せてダンピング抵抗を並べてみる。

→抵抗値を変更できるようにしておく。ついでにオシロのプローブを当てやすくしておく。ケーブルの配線長を短くする。

マスターの起動/リセット時にスレーブにリセットを掛けられるようにRESET線を用意する?

同軸ケーブルのインピーダンスは50Ωとか75Ωになっているが、普通の線材の場合は自力で測定するしかないのか?どうすればいいかもう忘れたけど(^q^;