使ったICはAnalog DevicesのAD8403 100kΩ
トランジスタ技術の2008年9月号(188p~)の記事を参考にした
ブレッドボード図
DIP変換基板をつかってブレッドボードに載せた
24PINの変換基板がなかったので28PINを使っています
初めて「引きはんだ」というのをやってみたがわりと簡単にうまく行った
先端が斜めにカットされているタイプのコテ先が威力を発揮した感じだ
あと、フラックスが無ければ多分失敗してたと思う
基板にフラックスを塗っておけば、コテ先にはんだを盛って「ちゅるん」とハンダ付けできる
どちらも大して高くないのでコスパはかなりいい
「弘法は筆を選ばず」は、弘法だから成せる技だと思う
ソースコード
Arduinoに入っている[Example]-[SPI]-[DititalPotControl]の
loop()関数内の[channel]を[6]から[4]に変更してそのまま動く
※AD8403は4chなので
AD840xのDATASHEETを見るとアドレス2bit+データ8bitの10bitなので、
8bit単位の送信しかできないArduino(AVR?)でどうすればいいのかわからなかったが
CSがHiになった時に最後の10bitが読み込まれる仕様のようだ
2Byte = 16bit送っても問題ない
うまく設計されてるもんだなあ(^q^/
出力波形
LEDを接続しない場合
LEDを接続した場合
LEDを接続した場合、1.6Vあたりまでリニアに推移して、その後指数関数的な特性が現れている
ダイオードなので当たり前だがなんか感動した
ダイオードが発明されてから100年ぐらいしか経っていないのに
こうやってBlogを書いているのであった(^q^;
SPIの通信状態
赤色がSDI(MOSI)、黄色がSCK
やはりアドレス8bit+データ8bitの2Byte = 16bit送信されてる
クロック(SCK)を勘定すると4MHzだ
Arduinoのソースでは特にSPIクロックは指定していないのでデフォルトでは4MHzということかな
0 件のコメント:
コメントを投稿