LCD 128×64 "B" перестает работат при подключени HX711 + Мега
- Войдите на сайт для отправки комментариев
Сб, 24/12/2016 - 13:33
// инициализируем библиотеку LCD
//LiquidCrystal lcd(12, 13, 11, 10, 9, 8);
#include "U8glib.h"
U8GLIB_ST7920_128X64 u8g(37, 35, 39, U8G_PIN_NONE); // настройка пинов
//U8GLIB_ST7920_128X64 u8g(51, 49, 53, U8G_PIN_NONE); // настройка пинов
#include "HX711.h"
HX711 scale(41, 43, 128); // "усиление" - опущено; значение по умолчанию 128 используется библиотека
HX711 scale2(45, 47, 128);
String s1="00.00";
String s2="00.00";
String s0=" 00.00";
String s3=" 000 ";
int p = 33; //объявляем переменную с номером пина, на который мы выводим звук
int malo = 29; // мало красный светодиод
int mnogo = 31; // много синий светодиод
int norma = 27; // норма зеленый светодиод
float v1 = 0; float v2 = 0; float v3 = 0; float v4 = 0; float v5 = 0;
float v6 = 0; float v7 = 0; float v8 = 0; float v9 = 0; float v10 = 0;
float v = 0; float yp = 0;
void setup(){
// устанавливаем параметры дисплея:
// u8g.setFont(u8g_font_gdb20);
scale.set_scale(2280.f); // this value is obtained by calibrating the scale with known weights; see the README for details
scale2.set_scale(2280.f);
Serial.begin(9600); //9585здесь не забываем указать скорость вашего порта роутера
u8g.setRot90();
pinMode(malo, OUTPUT);//объявляем пин как выход
pinMode(mnogo, OUTPUT);
pinMode(norma, OUTPUT);
pinMode(p, OUTPUT);
}
void loop()
{
char s;
String str;
// u8g.setRGB(100,200,200);
// u8g.drawStr( 66, 0, "Color Page");
//Serial.println(scale.read_average(10), 3);
// Serial.println(1, 1);
v1=v2; v2=v3; v3=v4; v4=v5;
v5=v6; v6=v7; v7=v8; v8=v9;v9=v10;
v10=scale.get_units(2);
v=(v1+v2+v3+v4+v5+v6+v7+v8+v9+v10)/10;
int y=v*10;
int y1=v1*10;
if (y==y1) {
if (y==yp) {delay(300);
}
else {
Serial.println(v, 1);
yp=y;
}
}
if (Serial.available())
{
while (Serial.available() > 0)
{
s=Serial.read();
if (s=='^') {
switch (Serial.read()) {
case '0':
s0=""; str="0";Serial.read(); break;
case '1':
s1=""; str="1";Serial.read(); break;
case '2':
s2=""; str="2";Serial.read();break;
case '3':
s3=""; str="3";Serial.read();break;
case '4':
tone (p, 500,1000);//включаем на 500 Гц
digitalWrite(malo, HIGH);
digitalWrite(norma, LOW);
digitalWrite(mnogo, LOW);
Serial.read();break;
case '5':
tone (p,800,300);//включаем на 1000 Гц
digitalWrite(malo, LOW);
digitalWrite(norma, HIGH);
digitalWrite(mnogo, LOW);
Serial.read();
break;
case '6':
tone (p, 1500,1000);//включаем на 1500 Гц
digitalWrite(malo, LOW);
digitalWrite(norma, LOW);
digitalWrite(mnogo, HIGH);
Serial.read(); break;
} //switch
}
else {
if (str=="1") { s1=s1+s; }
else {
if (str=="2") { s2=s2+s; }
else {
if (str=="3") { s3=s3+s; }
else {
if (str=="0") { s0=s0+s; }
}
}
}
}
}
}
u8g.firstPage();
do
{
u8g.setFont(u8g_font_gdb14);
u8g.setPrintPos(0, 14);
u8g.print(" BEC ");
u8g.setFont(u8g_font_gdb17);
u8g.setPrintPos(0, 35);
u8g.print(s1);
// u8g.println(-(scale.get_units(10)+3.707)/10.024, 3);
u8g.setPrintPos(0, 60);
u8g.print(s2);
u8g.setFont(u8g_font_gdb14);
u8g.setPrintPos(0, 80);
u8g.print(s0);
u8g.setPrintPos(0, 105);
u8g.print(" KOP ");
u8g.setPrintPos(0, 127);
u8g.setFont(u8g_font_gdb17);
u8g.print(s3);
}
while( u8g.nextPage() );
}
ЛСД Подключен 35-R/W, 37- E, 39- RS. Включаем стартуре на экране появляются изображения.
Подключаем NX711 к 41-RX, 43-TX и вторую к 45 и 47 соответственно.
все изображение на экран невыводтся.
если подключить 1 то выводится после начати включений выключений.
https://yadi.sk/i/vQruvXMa34hv3D https://yadi.sk/i/XNrc5ZLI34huFc подключение дисплея такое впечатление будто чегото нехвататет. если потрогать д1-д8 может появится нормально изображение и начать работать
Разобрался РСТ на землю не подключил