Сохранение показаний с датчика

Тема в разделе "Схемотехника, компоненты, модули", создана пользователем Papipa, 21 окт 2017.

  1. Papipa

    Papipa Гик

    Всем привет!

    Работает датчик света. Каждую секунду около 1000-1100 значений. Надо получить их все на протяжении 4-5 секунд. Ну хотя бы 2-3.

    Пытаюсь создать массив данных - Уно не даёт. Мало памяти типа. Даёт лишь создать массив в размере 500 значений, это на полсекунды работы датчика, ни о чём вобщем.

    Вывод на экран через монитор порта замедляет работу скетча в десятки раз, соответственно число значений с датчика гораздо меньше удается читать, не интересно, ибо пропуски начинаются.

    Как сохранить 4-5 тысяч значений с датчика для последующего анализа?
     
  2. Tomasina

    Tomasina Сушитель лампочек Модератор

    Взять Mega или еще более мощные МК. Урезать тип массива до byte вместо int. Из остального все что можно, засунуть в PROGMEM. Далее сделать массив максимально возможного размера и просто запоминать.
    Не видя кода и параметров датчика, сложно иэдать более конкретные ответы.
     
  3. rkit

    rkit Гуру

    До бита можно урезать, если задача из предыдущего вопроса - обнаружение пресечения луча.
     
  4. Papipa

    Papipa Гик

    Ну нет... Надо именно показания, в люксах. Надо видеть, какие значения на входе каждой детали, во время прохождения и на выходе из луча.

    Ну датчик сам классический, GY-30, на BH1750.
     
  5. Papipa

    Papipa Гик

    Кстати буквально вчера Мегу взял, еще не подключал. Там насколько больше массив можно будет создать?
     
  6. ostrov

    ostrov Гуру

    Памяти 256 против 32. Вычитайте сам код и считайте.
     
  7. DIYMan

    DIYMan Guest

    В оперативке? в 4 раза больше - 8К против двух. В люксах с BH1750 вам надо хранить в uint16_t, следовательно, 1000*2 = чуть меньше 2х- килобайт, мега вполне потянет.
     
    Papipa нравится это.
  8. ostrov

    ostrov Гуру

    У STM32F103C8T6 оперативки 20Кб и скорость работы больше раз в 10.
     
  9. DIYMan

    DIYMan Guest

    У Due оперативки 96К и скорость в 5 раз выше - тоже вариант :)
     
  10. ostrov

    ostrov Гуру

    А цена? :D
     
  11. DIYMan

    DIYMan Guest

    А порог вхождения? ;)
     
    Tomasina нравится это.
  12. ostrov

    ostrov Гуру

    Для STM32F103C8T6 можно писать под IDE (на основе надстройки на ту же DUO), ненамного сложнее чем для UNO. Для перфекционистов не вариант, конечно, но вполне работает.
     
  13. b707

    b707 Гуру

    Я бы в первую очередь задумался, надо ли с такой частотой опрашивать датчик. Если процесс занимает 2-3 секунды - почти наверняка миллисекунданая точность излишня. Сделайте опрос 100 раз в секунду - и все влезет