オーディオ、ビジュアル機器、料理のツール、キットの製作などを取り上げます。■LM35の分解能は0.2°C連載12回では、±1°Cの確度でLM35を使いました。使ったのは12ビットA-Dコンバータでした。16ビットA-Dコンバータを使えば、小数点第1位までの表示ができそうです。連載13回目のLTC2450を利用します。●LTC2450は基準電圧ADR4533とともに使う連載13回の記事のように、1.0000Vは1.0001Vと測定できました。mV単位まではほぼ正しく測れており、0.01%の誤差です。LM35の最小分解能0.2°C(typ)は2mVです。LTC2450と基準電圧源ADR4533の組み合わせで1mV単位は正確に測れているので、LM35の分解能を生かすことができます。下記の回路図のGNDはGPIOの9番ピンを使っていますが、I2C-LCDのAQM0802のソケットを挿しているので、実際は6番ピンを使いました。CE0◆LM35とLTC2450の接続LM35は、文字を印字している面を見えるようにして、左から、V+、Vout、GNDです。2番ピンをつなぎます。V+は4V以上必要なので、5Vにつなぎます。1番ピンをつなぎます。すべてのデバイスの配線を示します。ICの方向は、左上が1番ピンです。●プログラムSPI接続のA-DコンバータのLTC2450はspidevライブラリを、I2C接続のキャラクタLCD表示器はsmbusライブラリを利用します。変換待ちをするsleep()用にtimeライブラリを使います。command()とwriteLCD()はLCD用の関数です。command()は、LCDへ直接命令を送信します。writeLCD()は、引数に入っている文字列を表示します。initLCD()はLCDの初期化コードを送信します。プログラムのmainでは、最初に、LT2450から前のデータを読み出し、もう一度読むと最新のA-D変換のデータが読み出されます。LM35の出力電圧を100倍して摂氏に変換し、round()で小数点第3位を四捨五入しディスプレイに表示します。round()で小数点第2位を四捨五入し、LCDへ表示します。0.1°Cの単位で表示していますが、LM35DZを恒温槽に入れて校正すれば信用できる分解能になります。"C")spi.close()(※)2018年後半から、speedの指定が必須になっています。open後に記述します。ライセンスで提供されています。