PIC/I2C大気圧センサーLPS331APの測定値をSDカード(SPI)に記録する - 実装編
二回にわたって書いてきましたが、今回は現実にどんなものができあがったかを書きます。
参考
「PIC/I2C大気圧センサーLPS331APの測定値をSDカード(SPI)に記録する - はじめに」
「PIC/I2C大気圧センサーLPS331APの測定値をSDカード(SPI)に記録する - ソース編」
まずPICの基板です。
TC74HC4066はアナログ・スイッチで同じアドレスのI2Cデバイスを切り替えるために入っています。アナログ・スイッチは4回路あるのでI2Cバスのピンヘッダも4組あり同じアドレスのI2Cデバイスを4個まで使えます(使えるはずです)
SCLを振り分けているのですが今は同じアドレスのものなんかないわけで別に必要はありません。でも今後に備えてます。
「同じアドレスのI2Cデバイスを使う」
これは裏面です。パターンをカットして実装密度をあげようとしていますが、そう簡単に密度が上がるわけでもありません。
白いループした配線は/CSをRB5からRA7に繋ぎ直したために急遽追加したものです。
繋ぎ直したのは動かなかったからですが、これも根本原因はソースにあったような....
LCDユニット
使っているLCDはACM1602でI2C接続のものです。
説明書どおり組み立ててI2Cバスに接続するだけです。長時間温度や気圧の記録を取り続けるのでバックライトに流れる電流も可変できるようにしておけばよかったです。
ちなみに今の消費電流は20mAくらいです。かなりの部分をバックライトが占めているような気がします。
右下のちょっと開いているところに機能選択や時計合わせのためのタクトスイッチと可変抵抗を取り付けPICの基板と接続する予定です。
「I2Cのソース - PIC12F1822/16F1705/16F1938/18F26K22 - LCD(ACM1602)を例にして」
背面。ついでにセンサーも写してあります。
ピンヘッダを取り付けようとしたらLCDの出っ張りが邪魔になったので位置を一つずらしました。そのため配線も斜めになっています。
LPS331APが今回使った気圧と温度のセンサーですが、AM2321はかなり精度のいい温度センサーで、MPL115A2はちょっと精度に不安がある大気圧センサーです。MPL115A2の両側はピンヘッダ/ソケットで分離したり延長したりできるようになっています。
これらは対応するソースを追加すればすぐに使えるはずです。
「温度センサー3種の精度比較(摂氏0度~40度編)」
「意外に正確そうなI2C大気圧センサーMPL115A2の測定値」
SDカードとそのソケットです。
ピンヘッダのハンダ付けでもちょっと不安だったので基板に両端をハンダ付けしたビニール線で締め付けてあります。
「PICでSPI SDカードを読み書きする」
背面です。SPIの/CSはここで一つ使ってしまうのでその分を飛ばして配線してあります。
SPIはピン/ソケットの並び順を統一したのですが、そのせいでものによってはかなりムリな配線になりました。
RTCユニットです。
リチウム電池のホルダーは市販のものに交換しました。右上のソケットはそのうち8chのADコンバータMCP3208を取り付ける予定です。サーミスタの温度計とかそんなのに使います。
SPIがうまく動かなかったときこのソケットにはNOR(たぶんSN74HC02)を差し込んでSPIの極性を反転するとかやってました(けっきょくソースに問題があっただけでしたが)
「PICでSPI - 超高精度SPIバスRTC(リアルタイムクロック)DS3234Sの使い方」
「PIC18F26K22でSPI - 8ch/ADコンバータ MCP3208の使い方(ソース付き)」
裏面です。
試行錯誤の後が残ってしまいました。
配線は表を通したかったのですが、リチウム電池が大きすぎて裏に配線してしまいました。
配線の下にパスコンがちらっと見えています。右下の抵抗はINT/1PPSのプルアップ用です。
関連
趣味の電子工作
PIC
「PICでSPI SDカードを読み書きする」
「PICでSPI - 超高精度SPIバスRTC(リアルタイムクロック)DS3234Sの使い方」(ソース付き)
「PICでSPI - 超高精度SPIバスRTC(リアルタイムクロック)DS3234Sの実装」
「PICでI2C - リアルタイムクロック(RTC) DS1307+の使い方」
「PICでI2C - 大気圧・温度センサーLPS331APの使い方」
「温度センサー3種の精度比較(摂氏0度~40度編)」
« 一枚の写真と放射点から流星の実経路を計算してみた | トップページ | 流星の経路を一枚の写真と放射点から計算する - 原理とExcelファイル »
「趣味の電子工作」カテゴリの記事
- PICで作る100MHz周波数カウンタ検証用XOR(エクスクルーシブオア)逓倍器(2016.03.08)
- 150MHz(~200MHz?)周波数カウンター用プリスケーラー(1/4分周器)(2016.03.06)
- 測温抵抗体(Pt100、白金薄膜温度センサー)の抵抗値を温度に変換する(平方根を使わない)計算式(2016.03.01)
- GPS/JJY(標準電波)を基準周波数源とするためのPLLの詳細(2016.02.27)
- GPS受信モジュール1PPS対決 - GE-612T vs GM-5157A(2016.02.21)
コメント
この記事へのコメントは終了しました。
« 一枚の写真と放射点から流星の実経路を計算してみた | トップページ | 流星の経路を一枚の写真と放射点から計算する - 原理とExcelファイル »
ブレッドボード上の配線がきれいだな~って思っていたら、剥がして裏側でも配線してたのですねΣ(゚д゚;)
こうしてモジュール化されていると問題のクリアが早いのだろうなと想像がつきます^^。
私の場合、進捗がとても遅いのですが、教えていただいたコンパレータとバックアップを装備したGPS1PPS装置2号機を作ろうと基板を書き始めました^^。
年内は無理かも知れませんが、そのうちお披露目できるといいなぁ。
投稿: ほよほよ | 2014年12月26日 (金) 18時55分
あれ、ブレッドボードって裏側から配線できるんですか (@@)
いいこと聞いたような....
今回はめったに見せない恥部(=裏側)を見せてしまいました (^^;;
ソフトもハードももういっぺんに二つ以上考えられないので面倒だろうが大きくなろうが一つずつやってます。
ほよほよさんの「GPS1PPS装置2号機」、期待しています。基板がどうなっているか早く拝見したいです (^^)
投稿: セッピーナ | 2014年12月26日 (金) 20時43分
あれ?ブレッドボードのような表面だったのでそう思ったのですが。
こういう基板が売ってるのですね、初めて見ました^^;
2号機はソフトを含めて年越し製作でしょうね~;;
パターンを切るだけで1週間はゆうにかかりそうな面倒さです。無理やりコンパクトにして、さらにジャンパーを避けようと無理な配線が多い気もします。
ところでGE-315のTXA出力はVoh>2.1Vとなっていました。供給電源は3~6Vですが、内部で3.3Vにして動いてる感じがします。アンテナの電源やPICの都合で全体は5Vで動かしている状況で、PICのRXA入力はSTでVih=0.8Vdd、つまり4VないとHighとみなさないことがわかりました。
いまさらですが、初号機は偶然プルアップで動いたことがわかりました^^;
コンパレータのありがたみを今かみ締めているところです^^。
投稿: ほよほよ | 2014年12月26日 (金) 23時29分
あ、そういう意味だったんですね。確かにぱっと見ブレッドボードかも...
これは「片面ガラス・ユニバーサル基板(ブレッドボード配線パターンタイプ) 」という秋月で一枚80円で売っているボードです。ブレッドボードのパターンをそのまま持っていけジャンパーもそのまま使えてしまうという無精者には欠かせない基板でまとめ買いしてあります (^^;;
ほよほよさんの2号機構想みたいなのが作れればいいのですが、私の技術と忍耐力じゃムリそうです。
受信モジュールの電源はそう考えるとVOHのレベルの低さが説明できますね。
コンパレータを入れるのは面倒ですが何も考えなくても確実に動作するようになるので安心ですね (^^)
投稿: セッピーナ | 2014年12月27日 (土) 07時18分
こんばんは
秋月の通販でLPS331AP探していたら無いですね
LPS25Hに切り替わっているようです。
性能は同じなのですがLPS25HにはどうもFIFO機能が有る様ですね
ってことはデバイス自体で移動平均させられるって事ですよぉ。たぶん
しかも更に小型で安いときたもんだぁ。
年明けで手に入れてみようと思います。
投稿: きむしげ | 2014年12月29日 (月) 19時29分
お知らせいただきありがとうございます m(._.)m
これは“買い”ですね (^^)
以前LPS331APの測定値が微妙に変動しているのは実際に気圧が変化しているのかそれともノイズなのかよくわからないということがありました。
LPS331APをもう一つ買って比べてみればいいという話になったのですが、さすがに同じものを買うのはためらわれたのですが、これはいちおう違うわけだから買えそうです (^^;;
投稿: セッピーナ | 2014年12月29日 (月) 22時29分