Требуется программист для написания кода

RUSSIK

✩✩✩✩✩✩✩
27 Окт 2023
1
0
Заголовок темы должен отражать содержимое. Исправь или тема будет удалена
Здравствуйте, уважаемые форумчане, появилось желание сделать 4 канальную радиоуправляемую розетку с ARDUINO UNO. Идея такая: модуль RX480E получает команду с пульта и на его ноге формируется постоянное напряжение в 5 вольт. Это напряжение поступает на цифровую ногу ARDUINO, он видит сигнал высокого уровня и выводит это напряжение через другую ногу, помимо этого, контроллер выводит на LCD 1602 состояние одного из 4 каналов либо ON, либо OFF. Вот примерно, что должно быть на дисплее ( в две строки):

SCH1 ON CH2 ON
CH3 ON CH4 ON

Там, где выделено, должно меняться( ON OFF).


Вот код, который успел уже проверить:

C++:
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
LiquidCrystal_I2C lcd(0x27,16,2);

bool keyA;
bool keyB;
bool keyC;
bool keyD;
void setup() {
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(4, INPUT);
pinMode(5, INPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
lcd.init();
lcd.backlight();
lcd.setCursor(5, 0);
lcd.print("Executor");
delay(2000);
lcd.clear();
}
void loop() {
int keyA = digitalRead(2);
int keyB = digitalRead(3);
int keyC = digitalRead(4);
int keyD = digitalRead(5);
{
if (keyA==HIGH)
{
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("SCH1 ON");
digitalWrite(6, HIGH);
}
else (keyA==LOW);
{
delay(1000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("SCH1 OFF");
digitalWrite(6, LOW);
}
}
}

Может быть это можно как -то по другому прописать
На данном этапе имеются все комплектующие, но проблема только в написании кода. Заранее спасибо.
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
@RUSSIK, а для чего здесь ардуина, ради дисплея? Состояние вкл/выкл можно контролировать светодиодами по количеству выходов. Без LCD.
 

PavelStrike

✩✩✩✩✩✩✩
16 Окт 2023
33
4
Как минимум убрать из кода delay() )и использовать таймер на millis()