Мне нужно постоянно отправлять 4 сообщения, каждый из которых содержит 8 байтов данных для последовательного вывода в моей функции цикла в arduino. Данные сообщений, которые отправляются, зависят от двух цифровых входов на моей плате. Вот как это выглядит:изменение значений массива в зависимости от оператора if
uint8_t msg_1[8]
uint8_t msg_2[8]
uint8_t msg_3[8]
uint8_t msg_4[8]
uint8_t first_1[] = {0x89, 0x80, 0xF8, 0x73, 0x00, 0x00, 0xCF, 0xFF};
uint8_t first_2[] = {0x89, 0x80, 0xF8, 0x73, 0x00, 0x00, 0xCF, 0xFF};
uint8_t first_3[] = {0x89, 0x80, 0xF8, 0x73, 0x00, 0x00, 0xCF, 0xFF};
uint8_t first_4[] = {0x89, 0x80, 0xF8, 0x73, 0x00, 0x00, 0xCF, 0xFF};
uint8_t second_1[] = {0x89, 0x80, 0xF8, 0x73, 0x00, 0x00, 0xCF, 0xFF};
uint8_t second_2[] = {0x89, 0x80, 0xF8, 0x73, 0x00, 0x00, 0xCF, 0xFF};
uint8_t second_3[] = {0x89, 0x80, 0xF8, 0x73, 0x00, 0x00, 0xCF, 0xFF};
uint8_t second_4[] = {0x89, 0x80, 0xF8, 0x73, 0x00, 0x00, 0xCF, 0xFF};
void loop (void){
if(input1 == HIGH && input2 == LOW){
msg = first; // <====== how to assign it?
}
else if (input1 == LOW && input2 == HIGH)
msg = second; // <===== how to assign it?
}
serial.write(msg_1,8)
serial.write(msg_2,8)
serial.write(msg_3,8)
serial.write(msg_4,8)
}
Мой вопрос в том, как назначить один массив другому в инструкции if? Должен ли я использовать указатели или что?
и когда вам нужно Сообщи? Вы, кажется, не используете его вообще. – 4pie0
Отступьте, пожалуйста, код. –
Казалось бы, 2D-массивы были бы более элегантными здесь? Или просто один массив 1D? – Lundin