我用HY-SRF05测数据显示在IIC1602上,可是数据老和串口上的不一样,什么原因?程序如下:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 for a 16 chars and 2 line display
int i;
int inputPin=3; // define ultrasonic signal receiver pin ECHO to D3
int outputPin=4; // define ultrasonic signal transmitter pin TRIG to D4
void setup()
{
Serial.begin(9600);
pinMode(inputPin, INPUT);
pinMode(outputPin, OUTPUT);
lcd.init(); // initialize the lcd
// Print a message to the LCD.
lcd.backlight();//是否背光
lcd.setCursor(0,0);
lcd.print("Hello, world!");
}
void loop()
{
digitalWrite(outputPin, LOW);
delayMicroseconds(2);
digitalWrite(outputPin, HIGH); // Pulse for 10μs to trigger ultrasonic detection
delayMicroseconds(10);
digitalWrite(outputPin, LOW);
int distance = pulseIn(inputPin, HIGH); // Read receiver pulse time
i= distance/58; // Transform pulse time to distance
Serial.println(i);
lcd.setCursor(0,1);
lcd.print("s=0");
lcd.print(i/10);
delay(40);
} |