MorningAngel 发表于 2017-2-9 20:36:24

1602+超声波的程序 1602上什么也不显示只发光

代码如下:

#include<LiquidCrystal.h>
LiquidCrystal lcd(12,11,5,4,3,2);
const int TrigPin = 7;
const int EchoPin = 6;
float cm;

void setup()
{
lcd.begin(16,2);
pinMode(TrigPin,OUTPUT);
pinMode(EchoPin,INPUT);
}
void loop()
{
digitalWrite(TrigPin,LOW);
delayMicroseconds(2);
digitalWrite(TrigPin,HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin,LOW);

int timer = -500;
cm = pulseIn(EchoPin,HIGH) / 58.0;
cm = (int(cm * 100.0)) / 100.0;
delay(500);

lcd.print("Distance:");
lcd.setCursor(6,1);
lcd.print(cm);
lcd.print("cm");
lcd.home();
}



我的1602接法如图 只是省略了VSS VDD VO没接(这不会有问题吧???)

zlucas 发表于 2017-2-9 20:50:00

显示可以不加传感器单独测试。

董董soul 发表于 2017-2-10 10:02:46

先把1602跟超声波单独测试一下,看看是否有问题

MorningAngel 发表于 2017-2-10 14:07:42

zlucas 发表于 2017-2-9 20:50
显示可以不加传感器单独测试。

我的接法没有问题吗 我单独测试1602的时候也这样 这个1602是新买的

zjz5717 发表于 2017-2-10 20:42:44

MorningAngel 发表于 2017-2-10 14:07
我的接法没有问题吗 我单独测试1602的时候也这样 这个1602是新买的

你要不在loop那块lcd显示之后加一个delay(1000)试一试。。。

追梦少年 发表于 2017-2-18 17:18:04

我今天也是的,你的这个方法可以么?我想借鉴一下

275891381 发表于 2017-2-18 18:43:33

lcd.print("Distance:");之前是不是要加一句lcd.setCursor();

galaxy 发表于 2017-2-20 14:37:39

本帖最后由 galaxy 于 2017-2-20 14:40 编辑

#include<LiquidCrystal.h>
改成
#include <LiquidCrystal.h>

就是
#include 空一格 <LiquidCrystal.h>
我在 0022版上組譯時要空一格才能過

程式上沒有問題,
但是你的 VR 接法有問題,
應是 VR 的一端接 +Vcc 另一端接 GND ,中間那一端接到 1602 (液晶模塊)
這個 vr 是調字的深淺
(其它的接線我就沒仔細看了)
页: [1]
查看完整版本: 1602+超声波的程序 1602上什么也不显示只发光