nobcha23の日記

PICマイコンやArduinoを使う電子回路遊びを紹介します

PIC10F322の内部温度センサー値読出し

PIC10F322の内部温度センサーの値をやっと読み出せました。ADC値から温度換算をやろうとしましたが、ソフトi2cモジュールで結構メモリー喰っており、容量が足りません。更にADC値から温度への変換式を試してみましたが、実用に耐えそうにない、ダメです。取得ADC値が8ビットであり、誤差も大きく絶対温度変換は無理っぽいです。2〜3度ぐらい以上の相対温度変化がわかる程度の性能みたいだなあ。息を吹きかけたり、指で触ったりするとADC値がややっと1ぐらい上がります。室温20度ぐらいで読み出し値が0x7C、すなわち124ですが、Vddが5Vだと換算式換算値では温度がマイナスになってしまいます。ダイオードの順方向電圧降下の温度切片を電源電圧との差をADCで読みますが、電源電圧の絶対偏差が750倍で効いてくるような換算式です。先の書き込みでも換算部分を紹介しましたが「内部温度表示器の使い方」というアプリケーションノートDS01333Aが発行されています。後閑先生はこのチップの紹介プレゼンにおいて「まあ、これは温度センサーというより、温度インディケーター程度だね」とコメントされていた意味が判明。http://ww1.microchip.com/downloads/en/AppNotes/01333A.pdf