首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在连接到lcd上的hx711负载单元上,代码的最大重量和当前的重量不改变和保持相等

在连接到lcd上的hx711负载单元上,代码的最大重量和当前的重量不改变和保持相等
EN

Stack Overflow用户
提问于 2022-05-28 23:22:51
回答 1查看 69关注 0票数 0

我正在构建一个基于am 711的重量秤,它在液晶显示器上显示测量的重量,如果weight>max重量蜂鸣器会发出嗡嗡声的话,液晶显示的重量是“最大重量”。我已经编写了代码来执行这些函数,但是,无论什么情况,权重总是降到零,而且我不能设置最大权重。我将在这里包含一个原理图和代码:

https://imgur.com/wMFoVMB

代码语言:javascript
复制
#include "HX711.h"
#include <Wire.h>


#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

int IN1 = A0;

int IN2 = A1;

int over_val;
int data;
int g_weight;
int Weight;

const int buzzer = 13;


void setup()
{
  pinMode(buzzer, OUTPUT);
  lcd.init();
  lcd.clear();
  lcd.backlight();
  pinMode(IN1, INPUT);
  pinMode(IN2, INPUT);
  Init_Hx711();
  Serial.begin(9600);
  Serial.print("Ready!\n");
  Get_Maopi();
  lcd.begin(16, 2);
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print(" Harry Brass ");
  lcd.setCursor(0, 1);
  lcd.print("  Gus Creech  ");
  delay(1000);
  lcd.clear();
}

void loop()
{

  Weight = Get_Weight();
  g_weight = Weight - data;

  lcd.setCursor(0, 0);
  lcd.print("Weight:");
  lcd.print(g_weight);
  lcd.print("g    ");

  if (digitalRead(IN2) == LOW) {data = Weight;}
  if (digitalRead(IN1) == LOW) {over_val = g_weight;
  }

  if (g_weight <= over_val)
  {
    lcd.setCursor ( 0, 1 );
    lcd.print("Max Weight:");
    lcd.print(over_val);
    lcd.print("g    ");
    digitalWrite(buzzer, LOW);
  }

  else if (g_weight > over_val)
  {
    Serial.println("overload");
    lcd.setCursor ( 0, 1 );
    lcd.print("...OverLoad!!...");
    digitalWrite(buzzer, HIGH);
  }

  delay(50);
}
EN

回答 1

Stack Overflow用户

发布于 2022-05-29 13:08:02

我将从检查物理连接开始,并尝试运行这样的简单代码:https://www.instructables.com/Arduino-Scale-With-5kg-Load-Cell-and-HX711-Amplifi/。只是为了确保一切正常。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72419893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档