明るさセンサGY-30の使い方
Arduinoで明るさセンサGY-30を使ってみます。I2C通信を使って今の明るさを値で送信します。少々敷居が高いので、とりあえず明るさでなにかしたいのであれば、Cdsセルを使った方がいいでしょう。GY-30ではきちんと計算すればルクスが測れるようです。
コードが書ける人はこちらのコードを使ったほうがいい。
#1:つなぎ方
図のようにSCLをアナログ5番、SDAをアナログ4番につなぐ。VCCは5V、GNDはGNDに。ちなみに、ADDに電気を入れるとアドレスが35から92に変わるらしい。詳しくはデータシート。#2:ブロックを積む
- デバイスアドレスを35
- レジスタアドレスを16
でI2Cで読み取る。
#3:コードを変更
- _ArdublockI2cReadData()の中身で
- Wire.readFrom(devAddr, 1)を1から2へ
- b = Wire.read(); を b = Wire.read() + Wire.read();に変更
どうやらこのモジュールは2回データを送信していて1回目は0がでて、次にセンサの値がでる。そのためそのままI2Cでデータをとっても0しかでない。
Post a Comment