Задание значение переменной через ком порт

OneTwo
Offline
Зарегистрирован: 15.03.2021

Доброго времени суток, подскажите как реализовать идею.
Есть переменная uint8_t disp_time = 1000, это переменная обновляет значения на экране lcd1602 один раз в секунду, как сделать чтобы я мог через сериал менять это значение?

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Надо научиться принимать текст через ком порт, распарсивать его, преобразовывать нужное значение к типу целевой переменной и сопссно складывать в неё.  Всё. 

b707
Offline
Зарегистрирован: 26.05.2017

OneTwo пишет:
Есть переменная uint8_t disp_time = 1000, это переменная обновляет значения на экране lcd1602 один раз в секунду, как сделать чтобы я мог через сериал менять это значение?

никак.

uint8_t disp_time = 1000 - это абсолютно невозможно

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

b707 пишет:

uint8_t disp_time = 1000 - это абсолютно невозможно

У военных и не такое возможно. 

Green
Offline
Зарегистрирован: 01.10.2015

"Нет ничего невозможного", сказал тов. майор, исправляя stdint.h.

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

b707 пишет:

uint8_t disp_time = 1000 - это абсолютно невозможно

Почему не возможно? Возможно. Другой вопрос какое на самом деле там значение получился, но возможно... возможно....

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

OneTwo пишет:
менять это значение?
Какое ЭТО?

OneTwo пишет:
= 1000

или

OneTwo пишет:
один раз в секунду

OneTwo
Offline
Зарегистрирован: 15.03.2021

1 сек = 1000 мс

v258
v258 аватар
Offline
Зарегистрирован: 25.05.2020

OneTwo пишет:
1 сек = 1000 мс

uint8_t: 0-255

Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

А в каких пределах требуется регулировать частоту смены картинки?

OneTwo
Offline
Зарегистрирован: 15.03.2021

Блин ну ошибся, мне суть нужна это я и так знаю, uint16_t

OneTwo
Offline
Зарегистрирован: 15.03.2021

Rumata пишет:

А в каких пределах требуется регулировать частоту смены картинки?


Не реже одного раза в секунду а сколько чаще не знаю

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

OneTwo пишет:
Rumata пишет:

А в каких пределах требуется регулировать частоту смены картинки?

Не реже одного раза в секунду а сколько чаще не знаю

Передавайте 1, 2, 3... и умножайте на тысячу :)

Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

не реже... 

brokly
brokly аватар
Offline
Зарегистрирован: 08.02.2014

DetSimen пишет:

Надо научиться принимать текст через ком порт, распарсивать его, преобразовывать нужное значение к типу целевой переменной и сопссно складывать в неё.  Всё. 

ТС - вот то что я процитировал, дословно самый четкий ответ на ваш вопрос. То что потом вам стали писать про то что в восьми битную переменную невозможно загрузить тысячу - это намек на то что вы задали вопрос, правильный ответ на который вам не поможет. Потому что вы хотели попросить, что бы вам написали кусок кода. А по правилам форума так спрашивать запрещено.

Ну допустим: 

uint32_t disp_time = 1000;

void setup() {
  Serial.begin(115200);
}

void loop() {
   static uint32_t buff=0;
   if(Serial.available()){
      char c=Serial.read();
      if(c>='0' && c<='9'){
         buff*=10;
         buff+=c-'0'; 
         Serial.print(c);
      } else if(c=='\n'){
         disp_time=buff;
         buff=0;
         Serial.print(F("/ndisp_time="));Serial.println(disp_time);   
      }
   }
}

А дальше то ты что делать будешь ?