Чтение массива
- Войдите на сайт для отправки комментариев
Чт, 04/11/2021 - 11:27
Выборка элементов массива. Имеем 2 счетчика - один (nom)- это номер ячейки /строки массива. Другой - время выборки - valTime.
Если valTime равен значению ячейки arr1 (число 1) при текущем nom, то выводим в сериал значение arr2 (5). Увеличиваем номер строки nom++. Если значение arr1 не изменилось (снова 1), то выводим аналогично (7). Если изменилось (всегда будет больше), то наращиваем valTime++ при каждой выборке. И т.д. Также делаем проверку на arr2 = 100 (код останова), и при совпадении возвращаемся на новый цикл.
uint16_t arrTime[];
uint8_t arrNote[];
uint8_t score; // определяет частоту выборки из массива
uint16_t valTime; // условное значение времени
void setup() {
Serial.begin(9600);
pinMode(7, INPUT); // кнопка старт/стопа
digitalWrite(7, 1);
score = 50;
}
void loop() {
if (digitalRead(7) == 0)
{
if (SS == 0)
{
SS = 1;
nom = 0;
for (int i = 0; i < score; i++)
{
if ((i == 0) && (SS == 1)) ReadArr();
delayMicroseconds(100); // коэффициент времени
}
}
else
{
SS = 0;
}
delay(200);
}
}
void ReadArr() {
if (valTime == arrTime[nom])
{
Serial.print(arrTime[nom]);
nom++;
if ((arrTime[nom]) > (arrTime[nom - 1]))// увел, только если не совпадает
{
valTim++;
}
if (arrNote[nom] == 100)
{
nom = 0;
valTime = 0;
}
}
}

это вам в колледже задали? или внуку? почему это в платном разделе?
Потому что хочу просто получить готовый скетч, без "обучений", и отсылок "ловить рыбу удочкой".
а процедура ReadArr() из скетча чем не устраивает?
Ваше обьяснение что именно и откуда должно читаться - я не очень понял. Что такое valTim и valTime? valTim случаем не опечатка? - оно не описано
Скока платим? Надеюсь хотя бы 1000, иначе и смысла нет :)
Описка... везде надо valTime. Не устраивает, потому что не работает....
массивы arr1 - это arrTime, а arr2 - это arrNote. И неточность - что выводим в сериал.. но это сами понимаете - неважно. Там просто "что-то делаем..." как говорится.
да 1000, но надо убрать задержки в цикле в виде константу микросекунд. Это можно?
надо убрать задержки в цикле в виде константу микросекунд. Это можно?
"а вы это в заказе не указывали" (с)
Как "убрать"? - закомментировать строку?
PS Всегда все расписывайте подробно.
Насчет 1000 я пошутил, заказ не возьму. С другими сговаривайтесь,.
Напишите htpicc@gmail.com, только опишите задачу обычными словами - зачем, что нужно получить на выходе и т.п.
Напишите htpicc@gmail.com, только опишите задачу обычными словами - зачем, что нужно получить на выходе и т.п.
А сапоги на нём смотрелись-бы неплохо ИМХО.
Ещё один "специалист" растёт....
В гробу я видел таких кураторов.) Не обижайся. Уровень только падает, ибо лень берёт своё.(
В гробу я видел таких кураторов.) Не обижайся. Уровень только падает, ибо лень берёт своё.(
Ну что в итоге, заказ сложился?
Нет, тишина. Видать ТС так сильно нужно.
Не, он ждёт "чёрной пятницы". И скидок к ней. Уже скоро 11.11.2021.