Здравствуйте уважаемые радиолюбители/программисты/инженеры и прочие знатоки темы ардуино. Мы небольшая команда молодых ученых которые работают в области науки о поведение. На данный момент работаем с модуль оперантного обусловливание (это так называемый "Ящик Скиннера", изображение в спойлере).
Полностью разработали код для работы данного устройства, но возникли ряд проблем, а точней:
в устройства есть 7 разных програм, которые запускаються через монитор сом порта и все бы нечего, но данные которые приходят нам, есть в двох форматах (те, которые отображаться в числовых значениях и те, которые в графике). Мы не можем использовать все время мониторинг сом порта ардуино, а для использование специальных програм, необходимо что бы команды посылались тогда через LCD. И это проблема. Не могу найти необходимые примеры, где можно назначить значение посылающие в сом порт к LCD. Увы нету достаточной компетенции в решение данной проблемы.
Вот ниже последняя часть кода, которая отвечает за запуск заданных програм. Вопрос, как сделать что бы данные команды (от 0 до 7) можно было отравить через LCD ?
Буду очень благодарный за помощь (если решение потребует серьезной работы, можем даже оплатить).
![](https://www.limef.com/productImages/80004_large.jpg)
Полностью разработали код для работы данного устройства, но возникли ряд проблем, а точней:
в устройства есть 7 разных програм, которые запускаються через монитор сом порта и все бы нечего, но данные которые приходят нам, есть в двох форматах (те, которые отображаться в числовых значениях и те, которые в графике). Мы не можем использовать все время мониторинг сом порта ардуино, а для использование специальных програм, необходимо что бы команды посылались тогда через LCD. И это проблема. Не могу найти необходимые примеры, где можно назначить значение посылающие в сом порт к LCD. Увы нету достаточной компетенции в решение данной проблемы.
Вот ниже последняя часть кода, которая отвечает за запуск заданных програм. Вопрос, как сделать что бы данные команды (от 0 до 7) можно было отравить через LCD ?
Буду очень благодарный за помощь (если решение потребует серьезной работы, можем даже оплатить).
C++:
void loop()
{
if (Serial.available())
{
char x = Serial.read();
int expe = (x - '0');
if (expe == 0)
{
Serial.println("Not yet launched");
}
else if (expe == 1)
{
Serial << "Training Start:" << "\t" << millis() << "\t" << "100% probability [Training]" << endl;
train();
}
else if (expe == 2) {
Serial << "Resistance to Extintion Start:" << "\t" << millis() << "\t" << " ALL [100%] " << endl;
restExt(ALL);
}
else if (expe == 3)
{
Serial << "Resistance to Extintion Start:" << "\t" << millis() << "\t" << " FR2" << endl;
restExt(FR2);
}
else if (expe == 4)
{
Serial << "Resistance to Extintion Start:" << "\t" << millis() << "\t" << "FR4" << endl;
restExt(FR4);
}
else if (expe == 5)
{
Serial << "Resistance to Extintion Start:" << "\t" << millis() << "\t" << "VR" << endl;
restExt(VR);
}
else if (expe == 6)
{
Serial << "Resistance to Extintion Start:" << "\t" << millis() << "\t" << "FI 2 min" << endl;
FI1(FI);
}
else if (expe == 7)
{
Serial << "Progressive Ratio" << "\t" << millis() << "\t" << "Ratio" << "\t" << ratio << endl;
progRat(ratio);
}
else
{
Serial << "The value " << expe << " is incorrect" << endl;
// Serial.end ();
}
}
}
Изменено: