0

I2C を介して Teensy デバイスと通信する単純な BMP180 センサー ブレイクアウト ボードがあります。私のスケッチは、読み取った値を単純に出力します。シリアル モニタ (半分の時間しか動作しません) を開くと、約 1 分間は正常に動作しますが、その後突然切断されます。シリアルポートを確認すると、私の十代が接続していた元の COM ポートはもうありません。devmgmt を開きましたが、ポートがありません。ラップトップを再起動しようとしましたが、Teensy のリセット ボタンを押しながら再接続してみましたが、うまくいきませんでした。以下は私のコードです。また、無限ループの印刷物を投入しても、Arduinoシリアルモニターには何も表示されませんが、Sublimeのシリアルモニターには表示されます。それも変だと思っただけです。

#include <MCP3221.h>
#include <Wire.h>
#include "SoftwareSerial.h"
#define ADDRESS 0x4D // 7 bits address is 0x4D, 8 bits is 0x9B
void setup() {
  Serial.begin(9600);
  Serial.println("First");

  Wire.begin(); //connects I2C
}
//fdsyjyutsydshgfjyfj
void loop() {
  byte ad_high;
  byte ad_low;
  int Result = 0;

  Wire.requestFrom(ADDRESS, 2);        //requests 2 bytes
  while(Wire.available() < 2)
  {
    Serial.println("not yet available");
  }
  Serial.println("Working");
  ad_high = Wire.receive();           
  ad_low = Wire.receive();
  Result = (ad_high * 256) + ad_low;

  Serial.println(Result);

  delay(10);

}

途中で動かなくなったようです**

4

1 に答える 1

0

本当に低レベルのものを取得する必要がないと仮定すると、BMP085 / BMP180 ライブラリのいずれかを使用すると、より運が良くなる可能性があります。そうすれば、いつでもそのコードをハッキングできます。

https://github.com/adafruit/Adafruit_BMP085_Unified - そのセンサーでこれを問題なく使用しました。

于 2015-08-27T07:01:02.460 に答える