Отправка сообщений в порт с задержками

Всем привет. Пытаюсь написать скетч для отправки в порт сообщений с определенными таймингами.
Условие такое:
Отправлять А каждые 10 секунд
Отправлять Б после А + 1 секунду
Отправлять В после А + 5 секунд
Отправлять Г после А + 6 секунд

Отправку А сделал, не знаю в какую сторону дальше копать. Прощу помощи.

unsigned long timer;
int i;
void setup() {
Serial.begin(9600);
}

void loop()
{
if(millis()-timer >= 10000)
{
timer = millis();
Serial.print(“A”);
}
}

Ты когда заходил, не посмотрел как люди код вставляют? Посмотри. И зайди по новой.

я не пойму, щас уже не учат блок-схемы рисовать и алгоритмы составлять? че вы сразу претесь в аппаратную разработку, не зная основ здравого смысла?

Только зарегистрировался, сейчас переделаю.

вот так отправляем B
С остальным сами справитесь, я думаю.

1 лайк

вы в школе не учились?
1+5+6 явно больше десяти.

а ты? :slight_smile:
Написано же - “после А” !!!

1 лайк

блин не проснулся еще!
ссори (((

void loop() {

print(A);
delay(1000);
print(B);
delay(4000);
print(C);
delay(1000);
print(D);
delay(4000);

}
1 лайк
unsigned long timer;
bool b_done_flag = true;
bool c_done_flag = true;
bool d_done_flag = true;

void setup() 
{
Serial.begin(9600);
}
void loop()
{
if(millis()-timer >= 10000)
  {
  timer = millis();
  Serial.println("A");
  b_done_flag = false;
  c_done_flag = false;
  d_done_flag = false; 
  }
if(! b_done_flag && (millis()-timer >= 1000)) 
{
 b_done_flag = true;
 Serial.println("B");
}
if(! c_done_flag && (millis()-timer >= 5000)) 
{
 c_done_flag = true;
 Serial.println("C");
}
if(! d_done_flag && (millis()-timer >= 6000)) 
{
 d_done_flag = true;
 Serial.println("D");
}
}

Спасибо, работает

MMM, а ты в школе учился? А тогда почему такой текст кривой вставляешь? Или двоешник?

В сторону отправки Б, конечно. А Вы в какую думали?

наезд мелочный, но справедливый. исправил