SparkFun-логотип

SparkFun DEV-13712 Частица Фотон с отверстиями для пайки

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяльной-Продукции

Технические характеристики

  • Название продукта: Регистратор данных OpenLog
  • Модель: DEV-13712
  • Входное напряжение: 3.3–12 В (рекомендуется 3.3–5 В)
  • Входной уровень RXItagе: 2.0 В-3.8 В
  • Громкость выходного сигнала TXOtagе: 3.3 В
  • Потребляемый ток в режиме ожидания: ~2 мА-5 мА (без карты microSD), ~5 мА-6 мА (с картой microSD)
  • Потребляемый ток при активной записи: ~20-23 мА (с картой microSD)

Инструкции по применению продукта

Необходимые материалы:

  • Ардуино Про Мини 328 – 3.3 В/8 МГц
  • Базовый разъем SparkFun FTDI – 3.3 В
  • USB-кабель SparkFun Cerberus – 6 футов
  • Карта microSD с адаптером – 16 ГБ (класс 10)
  • USB-ридер microSD
  • Женские заголовки
  • Провода-перемычки Premium 6 M/M Упаковка из 10 шт.
  • Разрывные мужские заголовки – под прямым углом

Рекомендуемая литература:

Аппаратное обеспечение болееview:
OpenLog работает со следующими настройками:

Вход VCC Вход RXI Выход TXO Потребляемый ток в режиме холостого хода Активное письмо Потребление тока
3.3 В–12 В (рекомендуется 3.3 В–5 В) 2.0В-3.8В 3.3В ~2мА-5мА (без карты microSD), ~5мА-6мА (с картой microSD) ~20-23 мА (с картой microSD)

Введение

Внимание! Это руководство по Open Log для последовательного UART [DEV-13712]. Если вы используете Qwiic OpenLog для IC [DEV-15164], обратитесь к руководству по подключению Qwiic OpenLog.

OpenLog Data Logger — это простое в использовании решение с открытым исходным кодом для регистрации последовательных данных из ваших проектов. OpenLog предоставляет простой последовательный интерфейс для регистрации данных из проекта на карту microSD.

SparkFun OpenLog
ДЕВ-13712

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(1)

SparkFun OpenLog с заголовками
ДЕВ-13955

Продукт не найден

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

Руководство по подключению OpenLog

Список желаний SparkFun

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(2)SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(3)

Рекомендуемая литература
Если вы не знакомы или не уверены в следующих концепциях, мы рекомендуем прочитать их, прежде чем продолжить работу с Руководством по подключению OpenLog.

  • Как паять: Пайка через сквозные отверстия. В этом руководстве вы найдете все, что вам нужно знать о пайке через сквозные отверстия.
  • Последовательная связь Концепции асинхронной последовательной связи: пакеты, уровни сигналов, скорости передачи данных, UART и многое другое!
  • Последовательный периферийный интерфейс (SPI) SPI обычно используется для подключения микроконтроллеров к периферийным устройствам, таким как датчики, сдвиговые регистры и SD-карты.
  • Основы последовательного терминала В этом руководстве вы узнаете, как взаимодействовать с последовательными устройствами с помощью различных приложений-эмуляторов терминала.

Аппаратное обеспечение болееview

Власть
OpenLog работает со следующими настройками:

Номинальные мощности OpenLog

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(4)

Потребление тока OpenLog составляет около 20 мА - 23 мА при записи на microSD. В зависимости от размера карты microSD и ее производителя активное потребление тока может варьироваться, когда OpenLog записывает на карту памяти. Увеличение скорости передачи данных также увеличит потребление тока.

Микроконтроллеры
OpenLog работает на встроенном ATmega328, работающем на частоте 16 МГц благодаря встроенному кристаллу. В ATmega328 загружен загрузчик Optiboot, что позволяет OpenLog быть совместимым с
Настройки платы «Arduino Uno» в Arduino IDE.

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(5)

Интерфейс

Последовательный UART
Основным интерфейсом с OpenLog является разъем FTDI на краю платы. Этот разъем предназначен для прямого подключения к Arduino Pro или Pro Mini, что позволяет микроконтроллеру отправлять данные через последовательное соединение в OpenLog.

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(6)

Предупреждение! Из-за порядка выводов, обеспечивающего совместимость с Arduino, его нельзя напрямую подключить к коммутационной плате FTDI.

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(7)

Для получения более подробной информации обязательно ознакомьтесь со следующим разделом «Подключение оборудования».

СПИ

Также на противоположном конце платы выведены четыре контрольные точки SPI. Вы можете использовать их для перепрограммирования загрузчика на ATmega328.

  • SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(8)Последняя версия OpenLog (DEV-13712) выводит эти штырьки на меньшие сквозные отверстия с покрытием. Если вам нужно использовать ISP для перепрограммирования или загрузки нового загрузчика в OpenLog, вы можете использовать штырьки pogo для подключения к этим контрольным точкам.
  • Последний интерфейс для связи с OpenLog — это сама карта microSD. Для связи карте microSD требуются контакты SPI. Это не только место, где OpenLog хранит данные, но вы также можете обновить конфигурацию OpenLog через config.txt file на карту microSD.
    MicroSD Card

Все данные, регистрируемые OpenLog, хранятся на карте microSD. OpenLog работает с картами microSD, имеющими следующие характеристики:

  • 64MB - 32GB
  • FAT16 или FAT32

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(9)

На OpenLog имеются два светодиодных индикатора состояния, которые помогут вам в устранении неполадок.

  • STAT1 – Этот синий светодиодный индикатор подключен к Arduino D5 (ATmega328 PD5) и включается/выключается при получении нового символа. Этот светодиод мигает, когда работает последовательная связь.
  • STAT2 – этот зеленый светодиод подключен к Arduino D13 (SPI Serial Clock Line/ ATmega328 PB5). Этот светодиод мигает только тогда, когда активен интерфейс SPI. Вы увидите, как он мигает, когда OpenLog записывает 512 байт на карту microSD.

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(10)

Подключение оборудования

Существует два основных способа подключения OpenLog к цепи. Для подключения вам понадобятся некоторые разъемы или провода. Убедитесь, что вы припаяли к плате для надежного соединения.

Базовое последовательное соединение

Кончик: Если у вас есть гнездовой разъем на OpenLog и гнездовой разъем на FTDI, для подключения вам понадобятся перемычки M/F.

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(11)

Это аппаратное соединение предназначено для взаимодействия с OpenLog, если вам необходимо перепрограммировать плату или регистрировать данные через базовое последовательное соединение.

Выполните следующие подключения:
OpenLog → Базовый разъем FTDI 3.3V

  • ЗЕМЛЯ → ЗЕМЛЯ
  • ЗЕМЛЯ → ЗЕМЛЯ
  • VCC → 3.3 В
  • TXO → RXI
  • RXI → TXO
  • ДТР → ДТР

Обратите внимание, что это не прямое соединение между FTDI и OpenLog — необходимо поменять местами контакты TXO и RXI.

Ваши соединения должны выглядеть следующим образом:

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(12)

После того, как вы установили соединения между OpenLog и FTDI Basic, подключите плату FTDI к USB-кабелю и компьютеру. Откройте последовательный терминал, подключитесь к COM-порту вашего FTDI Basic и вперед!

Проект Аппаратное Подключение

Кончик: Если на OpenLog припаяны гнездовые разъемы, то к Arduino Pro Mini можно припаять штекерные разъемы, чтобы соединить платы без использования проводов.

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(13)

Хотя взаимодействие с OpenLog через последовательное соединение важно для перепрограммирования или отладки, OpenLog лучше всего раскрывается во встроенном проекте. Эта общая схема — то, как мы рекомендуем вам подключить OpenLog к микроконтроллеру (в данном случае Arduino Pro Mini), который будет записывать последовательные данные в OpenLog.

Сначала вам нужно будет загрузить код на ваш Pro Mini, который вы собираетесь запустить. Пожалуйста, ознакомьтесь с Arduino Sketches для некоторых example код, который вы можете использовать.

Примечание: Если вы не знаете, как программировать Pro Mini, ознакомьтесь с нашим руководством здесь.

Использование Arduino Pro Mini 3.3V

  • Этот урок — ваш путеводитель по всему, что касается Arduino Pro Mini. Он объясняет, что это такое, чем это не является и как начать его использовать.
  • После того, как вы запрограммировали свой Pro Mini, вы можете снять плату FTDI и заменить ее на OpenLog. Убедитесь, что вы подключили контакты, обозначенные BLK на Pro Mini и OpenLog (контакты, обозначенные GRN на обоих, также совпадут, если все сделано правильно).
  • Если вы не можете подключить OpenLog напрямую к Pro Mini (из-за несоответствия разъемов или других плат), вы можете использовать перемычки и выполнить следующие соединения.

OpenLog → Arduino Pro/Arduino Pro Mini

  • ЗЕМЛЯ → ЗЕМЛЯ
  • ЗЕМЛЯ → ЗЕМЛЯ
  • ВКК → ВКК
  • TXO → RXI
  • RXI → TXO
  • ДТР → ДТР

После того, как вы закончите, ваши соединения должны выглядеть следующим образом с Arduino Pro Mini и Arduino Pro. На схеме Fritzing OpenLogs показаны с зеркальными заголовками. Если вы перевернете гнездо microSD относительно верхней части Arduino view, они должны соответствовать заголовку программирования, например FTDI.

SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(14)

Обратите внимание, что подключение осуществляется напрямую, при этом OpenLog располагается «вверх ногами» (картой microSD вверх).

Примечание: Поскольку Vcc и GND между OpenLog и Arduino заняты разъемами, вам нужно будет подключить питание к другим доступным контактам на Arduino. В противном случае вы можете припаять провода к открытым контактам питания на любой из плат.

Включите свою систему, и вы готовы начать регистрацию!

Эскизы Arduino

Существует шесть различных бывш.ampВ комплект входят эскизы, которые можно использовать на Arduino при подключении к OpenLog.

  • OpenLog_Benchmarking — Этот бывшийample используется для тестирования OpenLog. Он отправляет очень большие объемы данных со скоростью 115200 бит/с через несколько files.
  • OpenLog_CommandTest — Этот бывшийample показывает, как создать и добавить file через командную строку управления через Arduino.
  • OpenLog_ReadExampле — Этот бывшийampВ этом файле показано, как управлять OpenLog через командную строку.
  • OpenLog_ReadExample_LargeFile - Бывшийample как открыть большой хранимый file на OpenLog и сообщите об этом через локальное Bluetooth-соединение.
  • OpenLog_Test_Sketch — используется для тестирования OpenLog с большим количеством последовательных данных.
  • OpenLog_Test_Sketch_Binary — используется для тестирования OpenLog с двоичными данными и экранированными символами.

Прошивка

OpenLog имеет на борту два основных компонента программного обеспечения: загрузчик и прошивка.

Загрузчик Arduino

Примечание: Если вы используете OpenLog, приобретенный до марта 2012 года, встроенный загрузчик совместим с настройкой «Arduino Pro или Pro Mini 5V/16MHz w/ ATmega328» в Arduino IDE.

  • Как упоминалось ранее, OpenLog имеет на борту серийный загрузчик Optiboot. Вы можете обращаться с OpenLog так же, как с Arduino Uno при загрузке example код или новая прошивка на плату.
  • Если вы в конечном итоге сломаете свой OpenLog и вам нужно будет переустановить загрузчик, вам также нужно будет загрузить Optiboot на плату. Пожалуйста, ознакомьтесь с нашим руководством по установке загрузчика Arduino для получения дополнительной информации.

Компиляция и загрузка прошивки в OpenLog

Примечание: Если вы впервые используете Arduino, пожалуйста, повторите попытку.view наше руководство по установке Arduino IDE. Если вы ранее не устанавливали библиотеку Arduino, ознакомьтесь с нашим руководством по установке, чтобы вручную установить библиотеки.

  • Если по какой-либо причине вам необходимо обновить или переустановить прошивку на вашем OpenLog, следующая процедура позволит вам запустить плату.
  • Сначала загрузите Arduino IDE v1.6.5. Другие версии IDE могут работать для компиляции прошивки OpenLog, но мы проверили эту версию как известную хорошую.
  • Далее загрузите прошивку OpenLog и необходимый пакет библиотек.

СКАЧАТЬ ПАКЕТ ПРОШИВКИ OPENLOG (ZIP)

  • После загрузки библиотек и прошивки установите библиотеки в Arduino. Если вы не уверены, как вручную установить библиотеки в IDE, ознакомьтесь с нашим руководством: Установка библиотеки Arduino: Ручная установка библиотеки.

Примечание:

  • Мы используем модифицированные версии библиотек SdFat и SerialPort, чтобы произвольно объявить, насколько большими должны быть буферы TX и RX. OpenLog требует, чтобы буфер TX был очень маленьким (0), а буфер RX должен быть как можно больше.
  • Совместное использование этих двух модифицированных библиотек позволяет повысить производительность OpenLog.

Ищете последние версии?
Если вы предпочитаете самые последние версии библиотек и прошивки, вы можете загрузить их напрямую из репозиториев GitHub, ссылки на которые приведены ниже. Библиотеки SdFatLib и Serial Port не видны в менеджере плат Arduino, поэтому вам нужно будет вручную установить библиотеку.

  • GitHub: OpenLog > Прошивка > OpenLog_Firmware
  • Библиотеки Arduino Билла Греймана
    • SdFatLib-бета
    • Последовательный порт
  • Далее, чтобы взять аванtage из измененных библиотек, измените SerialPort.hh file находится в каталоге \Arduino\Libraries\SerialPort. Измените BUFFERED_TX на 0 и ENABLE_RX_ERROR_CHECKING на 0. Сохраните fileи откройте Arduino IDE.
  • Если вы еще этого не сделали, подключите OpenLog к компьютеру через плату FTDI. Пожалуйста, дважды проверьте example circuit, если вы не уверены, как это сделать правильно.
  • Откройте скетч OpenLog, который вы хотите загрузить, в меню «Инструменты»>«Плата», выберите «Arduino/Genuino Uno» и выберите нужный COM-порт для вашей платы FTDI в меню «Инструменты»>«Порт».
  • Загрузите код.
  • Вот и все! Теперь ваш OpenLog запрограммирован с новой прошивкой. Теперь вы можете открыть последовательный монитор и взаимодействовать с OpenLog. При включении питания вы увидите 12> или 12<. 1 означает, что последовательное соединение установлено, 2 означает, что SD-карта успешно инициализирована, < означает, что OpenLog готов регистрировать любые полученные последовательные данные, а > означает, что OpenLog готов принимать команды.

Эскизы прошивки OpenLog
В OpenLog включены три эскиза, которые вы можете использовать в зависимости от вашего конкретного приложения.

  • OpenLog – эта прошивка поставляется по умолчанию на OpenLog. Отправка команды? покажет версию прошивки, загруженную на устройство.
  • OpenLog_Light – Эта версия скетча удаляет меню и командный режим, позволяя увеличить буфер приема. Это хороший вариант для высокоскоростного ведения журнала.
  • OpenLog_Minimal – Скорость передачи данных должна быть установлена ​​в коде и загружена. Этот эскиз рекомендуется для опытных пользователей, но также является лучшим вариантом для регистрации на самой высокой скорости.

Набор команд

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

Пока OpenLog находится в командном режиме, STAT1 будет включаться/выключаться для каждого полученного символа. Светодиод будет гореть до тех пор, пока не будет получен следующий символ.

  • Новый File – Создает новый file названный File в текущем каталоге. Стандарт 8.3 fileИмена поддерживаются. НапримерampНапример, «87654321.123» приемлемо, а «987654321.123» — нет.
    • Exampле: новый file1.txt
  • Добавить File – Добавить текст в конец File. Затем последовательные данные считываются из UART в потоке и добавляются в file. Он не отображается через последовательный терминал. Если File не существует при вызове этой функции, file будет создан.
    • Example: добавить новыйfile.csv
  • Писать File СМЕЩЕНИЕ – Напишите текст в File от местоположения OFFSET в пределах file. Текст считывается из UART, строка за строкой, и возвращается обратно. Чтобы выйти из этого состояния, отправьте пустую строку.
    • Example: запись logs.txt 516
  • rm File – Удаляет File из текущего каталога. Поддерживаются подстановочные знаки.
    • Exampле: rm README.txt
  • размер File – Выходной размер File в байтах.
    • Example: размер Log112.csv
    • Выход: 11
  • Читать File + НАЧАЛО+ ДЛИНА ТИП – Вывести содержимое File начиная с START и продолжая LENGTH. Если START пропущен, весь file сообщается. Если LENGTH опущено, сообщается все содержимое от начальной точки. Если TYPE опущено, OpenLog по умолчанию будет сообщать в ASCII. Существует три выходных TYPE:
    • ASCII-код = 1
    • ШЕСТНАДЦАТЕРИЧНЫЙ = 2
    • СЫРЬЕ = 3
  • Вы можете пропустить некоторые завершающие аргументы. Проверьте следующий примерampлес.
  • Базовое чтение + пропущенные флаги:
    • Exampле: прочитать LOG00004.txt
    • Выход: Акселерометр X=12 Y=215 Z=317
  • Читаем с начала 0 длиной 5:
    • Exampле: прочитать LOG00004.txt 0 5
    • Выход: Ускорение
  • Прочитать с позиции 1 длиной 5 в HEX:
    • Exampле: прочитать LOG00004.txt 1 5 2
    • Выход: 63 63 65 6C
  • Чтение с позиции 0 с длиной 50 в формате RAW:
    • Exampле: прочитать LOG00137.txt 0 50 3
    • Вывод: André– -þ Расширенный тест символов
  • Кот File – Напишите содержание file в шестнадцатеричном формате на последовательный монитор для viewing. Иногда полезно увидеть, что file правильно записывает без необходимости извлекать SD-карту и view то file на компьютере.
    • Exampле: кот LOG00004.txt
    • Вывод: 00000000: 41 63 65 6c 3a 20 31

Манипуляции с каталогами

  • ls – Выводит список всего содержимого текущего каталога. Поддерживаются подстановочные знаки.
    • Exampле: ls
    • Вывод: \src
  • Подкаталог md – создать подкаталог в текущем каталоге.
    • Exampле: мд Эксample_Sketches
  • Подкаталог cd – Перейти в подкаталог.
    • Exampле: cd Hello_World
  • cd .. – Перейти на более низкий каталог в дереве. Обратите внимание, что между 'cd' и '..' есть пробел. Это позволяет парсеру строк увидеть команду CD.
    • Exampле: компакт-диск ..
  • rm Subdirectory – Удаляет подкаталог. Для работы этой команды каталог должен быть пустым.
    • Example: rm temps
  • rm -rf Directory – Удаляет каталог и все fileсодержится в нем.
    • Example: rm -rf Библиотеки

Команды функций низкого уровня

  • ? – Эта команда выведет список доступных команд в OpenLog.
  • Диск – показать идентификатор производителя карты, серийный номер, дату изготовления и размер карты. ПримерampВывод:
    • Тип карты: SD2 Идентификатор производителя: 3
    • OEM-идентификатор: SD
    • Продукт: SU01G
    • Версия: 8.0
    • Серийный номер: 39723042 Дата изготовления: 1/2010 Размер карты: 965120 КБ
  • init – Повторная инициализация системы и повторное открытие SD-карты. Это полезно, если SD-карта перестает отвечать.
  • Sync – Синхронизирует текущее содержимое буфера с SD-картой. Эта команда полезна, если в буфере менее 512 символов и вы хотите записать их на SD-карту.
  • Reset – Перемещает OpenLog в нулевое местоположение, перезапускает загрузчик, а затем код инициализации. Эта команда полезна, если вам нужно отредактировать конфигурацию file, сбросьте OpenLog и начните использовать новую конфигурацию. Циклическое включение питания по-прежнему является предпочтительным методом сброса платы, но эта опция доступна.

Системные настройки

Эти настройки можно вручную обновить или отредактировать в файле config.txt. file.

  • Echo STATE – изменяет состояние системы и сохраняется в системной памяти. STATE может быть включен или выключен. Когда включен, OpenLog будет выводить полученные последовательные данные в командной строке. Когда выключен, система не считывает полученные символы.

Примечание: Во время обычного ведения журнала эхо будет отключено. Требования к системным ресурсам для отражения полученных данных во время ведения журнала слишком высоки.

  • Verbose STATE – Изменяет состояние подробного отчета об ошибках. STATE может быть включено или выключено. Эта команда хранится в памяти. Отключая подробные ошибки, OpenLog будет отвечать только !, если есть ошибка, а не неизвестной командой: C OMMAND.D..TЭти символы проще анализировать для встроенных систем, чем полную ошибку. Если вы используете терминал, то включение verbose позволит вам видеть полные сообщения об ошибках.
  • baud – эта команда откроет системное меню, позволяющее пользователю ввести скорость передачи данных. Поддерживается любая скорость передачи данных от 300 бит/с до 1 Мбит/с. Выбор скорости передачи данных происходит немедленно, и OpenLog требует выключения и включения питания, чтобы настройки вступили в силу. Скорость передачи данных сохраняется в EEPROM и загружается каждый раз при включении OpenLog. Значение по умолчанию – 9600 8N1 .

Помнить: Если плата застряла на неизвестной скорости передачи данных, можно подключить RX к GND и включить OpenLog. Светодиоды будут мигать вперед и назад в течение 2 секунд, а затем начнут мигать синхронно. Выключите OpenLog и снимите перемычку. Теперь OpenLog сбрасывается до 9600 бит/с при нажатии escape-символа `CTRL-Z` три раза подряд. Эту функцию можно отменить, установив бит Emergency Override на 1. Подробнее см. в config.txt.

  • Set – Эта команда открывает системное меню для выбора режима загрузки. Эти настройки вступят в силу при следующем включении питания и будут сохранены в энергонезависимой EEPROM.
    • Новый File Ведение журнала – этот режим создает новый file каждый раз при включении OpenLog. OpenLog передаст 1 (UART активен), 2 (SD-карта инициализирована), затем < (OpenLog готов к приему данных). Все данные будут записаны в LOG#####.txt. Номер ##### увеличивается каждый раз при включении OpenLog (максимум 65533 журнала). Номер хранится в EEPROM и может быть сброшен из меню настроек. Не все полученные символы отображаются эхом. Вы можете выйти из этого режима и войти в командный режим, отправив CTRL+z (ASCII 26). Все буферизованные данные будут сохранены.
  • Примечание: Если создано слишком много журналов, OpenLog выведет ошибку **Слишком много журналов**, выйдет из этого режима и перейдет в командную строку. Последовательный вывод будет выглядеть как `12!Слишком много журналов!
    • Добавить File Ведение журнала — также известный как последовательный режим, этот режим создает file называется SEQLOG.txt, если его там еще нет, и добавляет все полученные данные в file. OpenLog передаст 12<, в это время OpenLog готов принимать данные. Символы не отображаются эхом. Вы можете выйти из этого режима и войти в командный режим, отправив CTRL+z (ASCII 26). Все буферизованные данные будут сохранены.
    • Командная строка – OpenLog передаст 12>, в это время система готова принимать команды. Обратите внимание, что знак > указывает на то, что OpenLog готов принимать команды, а не данные. Вы можете создать files и добавить данные в files, но это требует некоторого последовательного анализа (для проверки ошибок), поэтому мы не устанавливаем этот режим по умолчанию.
    • Сбросить Новый File Номер – этот режим сбросит журнал. file номер в LOG000.txt. Это полезно, если вы недавно очистили карту microSD и хотите получить журнал file числа, чтобы начать заново.
    • Новый символ Escape – эта опция позволяет пользователю ввести символ, например CTRL+z или $, и установить его в качестве нового символа Escape. Эта настройка сбрасывается на CTRL+z во время аварийного сброса.
    • Количество экранированных символов – эта опция позволяет пользователю ввести символ (например, 1, 3 или 17), обновляя новое количество экранированных символов, необходимых для перехода в командный режим. Напримерample, ввод 8 потребует от пользователя нажать CTRL+z восемь раз, чтобы попасть в командный режим. Эта настройка сбрасывается до 3 во время аварийного сброса.
  • Объяснение символов экранирования: Причина, по которой OpenLog требует нажатия `CTRL+z` 3 раза для входа в командный режим, заключается в том, чтобы предотвратить случайный сброс платы во время загрузки нового кода из Arduino IDE. Есть вероятность, что плата увидит символ `CTRL+z`, проходящий во время загрузки (проблема, которую мы видели в ранних версиях прошивки OpenLog), поэтому это направлено на предотвращение этого. Если вы когда-либо подозреваете, что ваша плата вышла из строя из-за этого, вы всегда можете выполнить аварийный сброс, удерживая контакт RX на земле во время включения питания.

Конфигурация File

Если вы не хотите использовать последовательный терминал для изменения настроек OpenLog, вы также можете обновить настройки, изменив CONFIG.TXT. file.

Примечание: Эта функция работает только на версии прошивки 1.6 или новее. Если вы купили OpenLog после 2012 года, у вас будет версия прошивки 1.6+

  • Для этого вам понадобится устройство чтения карт памяти microSD и текстовый редактор. Откройте файл config.txt file (капитализация file имя не имеет значения) и настройте его! Если вы никогда раньше не запускали OpenLog с SD-карты, вы также можете вручную создать fileЕсли вы включили OpenLog с ранее вставленной картой microSD, при чтении карты microSD вы должны увидеть что-то вроде следующего.SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(15)OpenLog создает файлы config.txt и LOG0000.txt file при первом включении.
  • Конфигурация по умолчанию file имеет одну строку настроек и одну строку определений.SparkFun-DEV-13712-Частица-Фотон-С-Отверстиями-Для-Паяния-рис-(16)Конфигурация по умолчанию file был написан OpenLog.
  • Обратите внимание, что это обычные видимые символы (невидимых или двоичных значений нет), и каждое значение разделено запятой.

Настройки определяются следующим образом:

  • baud : Скорость передачи данных. По умолчанию установлено значение 9600 бит/с. Допустимые значения, совместимые с Arduino IDE: 2400, 4800, 9600, 19200, 38400, 57600 и 115200. Вы можете использовать другие скорости передачи данных, но вы не сможете общаться с OpenLog через последовательный монитор Arduino IDE.
  • Escap:e Значение ASCII (в десятичном формате) экранированного символа. 26 — это CTRL+z, и это значение по умолчанию. 36 — это $, и это часто используемый экранированный символ.
  • Esc #: Количество требуемых escape-символов. По умолчанию это три, поэтому вам нужно нажать escape-символ три раза, чтобы перейти в командный режим. Допустимые значения: от 0 до 254. Установка этого значения на 0 полностью отключит проверку escape-символов.
  • Режим Системный режим. OpenLog по умолчанию запускается в режиме нового журнала (0). Допустимые значения: 0 = новый журнал, 1 = последовательный журнал, 2 = командный режим.
  • Verb: Подробный режим. Расширенные (подробные) сообщения об ошибках включены по умолчанию. Установка этого значения в 1 включает подробные сообщения об ошибках (например, неизвестная команда: удалить ! ). Установка этого значения в 0 отключает подробные сообщения об ошибках, но будет отвечать ! в случае ошибки. Отключение подробного режима удобно, если вы пытаетесь обрабатывать ошибки из встроенной системы.
  • Echo: режим эха. В командном режиме символы по умолчанию отображаются эхом. Установка этого параметра на 0 отключает отображение символов. Отключение этого параметра удобно при обработке ошибок, и вы не хотите, чтобы отправленные команды отображались эхом обратно в OpenLog.II
  • iignoreRXEmergency Override. Обычно OpenLog выполняет аварийный сброс, когда вывод RX понижается во время включения питания. Установка этого параметра на 1 отключит проверку вывода RX во время включения питания. Это может быть полезно для систем, которые будут удерживать линию RX на низком уровне по разным причинам. Если аварийное переопределение отключено, вы не сможете принудительно вернуть устройство к 9600 бит/с, и конфигурация file будет единственным способом изменить скорость передачи данных.

Как OpenLog изменяет конфигурацию File
Существует пять различных ситуаций, в которых OpenLog может изменить config.txt file.

  • Конфигурация file найдено: Во время включения питания OpenLog будет искать файл config.txt file. Если file Если он найден, OpenLog будет использовать включенные настройки и перезапишет все ранее сохраненные системные настройки.
  • Нет конфигурации file найдено: Если OpenLog не может найти config.txt file затем OpenLog создаст config.txt и запишет в него текущие сохраненные системные настройки. Это означает, что если вы вставите недавно отформатированную карту microSD, ваша система сохранит свои текущие настройки.
  • Поврежденная конфигурация file найдено: OpenLog сотрет поврежденный config.txt fileи перезапишет как внутренние настройки EEPROM, так и настройки config.txt file до заведомо исправного состояния 9600,26,3,0,1,1,0.
  • Недопустимые значения в конфигурации file: Если OpenLog обнаружит какие-либо настройки, содержащие недопустимые значения, OpenLog перезапишет поврежденные значения в config.txt file с текущими сохраненными системными настройками EEPROM.
  • Изменения через командную строку: если системные настройки изменяются через командную строку (через последовательное соединение или с помощью последовательных команд микроконтроллера), эти изменения будут записаны как в системную EEPROM, так и в файл config.txt. file.
  • Аварийный сброс: если OpenLog выключается и включается с перемычкой между RX и GND, а бит аварийного сброса установлен на 0 (разрешая аварийный сброс), OpenLog перезапишет как внутренние настройки EEPROM, так и настройки config.txt. file до заведомо исправного состояния 9600,26,3,0,1,1,0.

Поиск неисправностей

Существует несколько различных вариантов проверки, если у вас возникли проблемы с подключением через последовательный монитор, проблемы с пропущенными символами в журналах или проблема с зависшим OpenLog.

Проверьте поведение светодиода STAT1
Светодиод STAT1 ведет себя по-разному при двух различных распространенных ошибках.

  • 3 мигания: Карта microSD не инициализировалась. Возможно, вам придется отформатировать карту в FAT/FAT16 на компьютере.
  • 5 миганий: OpenLog изменил скорость передачи данных и его необходимо перезагрузить.

Дважды проверьте структуру подкаталогов

  • Если вы используете OpenLog.ino по умолчаниюample, OpenLog будет поддерживать только два подкаталога. Вам нужно будет изменить FOLDER_TRACK_DEPTH с 2 на количество подкаталогов, которые вам нужно поддерживать. После этого перекомпилируйте код и загрузите измененную прошивку.
  • Проверьте количество Files в корневом каталоге
  • OpenLog будет поддерживать только до 65,534 XNUMX журналов. files в корневом каталоге. Мы рекомендуем переформатировать карту microSD для повышения скорости записи.
  • Проверьте размер измененной прошивки
  • Если вы пишете пользовательский скетч для OpenLog, убедитесь, что ваш скетч не больше 32,256 500. Если это так, он будет врезан в верхние XNUMX байт флэш-памяти, которые используются последовательным загрузчиком Optiboot.
  • Двойная проверка File Имена
  • Все file Имена должны быть буквенно-цифровыми. MyLOG1.txt подойдет, но Hi !e _ .txtt может не работать.
  • Использовать 9600 бод
  • OpenLog работает на ATmega328 и имеет ограниченный объем оперативной памяти (2048 байт). Когда вы отправляете последовательные символы в OpenLog, эти символы буферизируются. Упрощенная спецификация SD Group позволяет карте SD записывать блок данных во флэш-память до 250 мс (раздел 4.6.2.2 Запись).
  • При 9600 бит/с это 960 байт (10 бит на байт) в секунду. Это 1.04 мс на байт. В настоящее время OpenLog использует буфер приема размером 512 байт, поэтому он может буферизировать около 50 мс символов. Это позволяет OpenLog успешно принимать все символы, поступающие со скоростью 9600 бит/с. По мере увеличения скорости передачи данных буфер будет использоваться меньшее время.

Время переполнения буфера OpenLog

Скорость передачи данных Время на байт Время до переполнения буфера
9600 бит/с 1.04мс 532мс
57600 бит/с 0.174мс 88мс
115200 бит/с 0.087мс 44мс

Многие карты SD имеют более быстрое время записи, чем 250 мс. Это может зависеть от «класса» карты и того, сколько данных уже хранится на карте. Решением является использование более низкой скорости передачи данных или увеличение времени между символами, отправляемыми с более высокой скоростью передачи данных.

Отформатируйте карту MicroSD
Не забудьте использовать карту с небольшим количеством или без files на нем. Карта microSD с 3.1 ГБ ZIP-файлов files или MP3s имеет более медленное время отклика, чем пустая карта. Если вы не форматировали карту microSD в ОС Windows, переформатируйте карту microSD и создайте DOS fileсистема на SD-карте.
Замена карт MicroSD
Существует множество различных производителей карт, перемаркированных карт, размеров карт и классов карт, и не все они могут работать правильно. Обычно мы используем карту microSD класса 8 на 4 ГБ, которая хорошо работает на скорости 9600 бит/с. Если вам нужны более высокие скорости передачи данных или больше места для хранения, вы можете попробовать карты класса 6 или выше.
Добавить задержки между записями символов
Добавив небольшую задержку между операторами Serial.print(), вы можете дать OpenLog возможность записать свой текущий буфер.
Напримерampль:
  • Последовательный.начало(115200);
    для (int i = 1 ; i < 10 ; i++) { Serial.print(i, DEC); Serial.println(“:abcdefghijklmnopqrstuvwxyz-!#”); }

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

  • Последовательный.начало(115200);
    для (int i = 1 ; i < 10 ; i++) { Serial.print(i, DEC); Serial.println(“:abcdefghijklmnopqrstuvwxyz-!#”); задержка (15); }

Добавить совместимость с последовательным монитором Arduino

Если вы пытаетесь использовать OpenLog со встроенной последовательной библиотекой или библиотекой SoftwareSerial, вы можете заметить проблемы с командным режимом. Serial.println() отправляет как новую строку, так и возврат каретки. Есть две альтернативные команды, чтобы обойти это.

Первый способ — использовать команду \r (возврат каретки ASCII):
Serial.print(“ТЕКСТ\r”);

В качестве альтернативы вы можете отправить значение 13 (десятичный возврат каретки):

  • Serial.print(«ТЕКСТ»);
  • Последовательный.запись(13);

Аварийный сброс

Помните, если вам необходимо сбросить OpenLog до состояния по умолчанию, вы можете сбросить плату, подключив контакт RX к GND, включив питание OpenLog, дождавшись, пока светодиоды начнут мигать синхронно, а затем выключив питание OpenLog и сняв перемычку.
Если вы изменили бит аварийного отключения на 1, вам необходимо изменить конфигурацию. file, так как аварийный сброс не сработает.

Проверьте с сообществом

Если у вас все еще есть проблемы с OpenLog, пожалуйста, проверьте текущие и закрытые проблемы в нашем репозитории GitHub здесь. С OpenLog работает большое сообщество, поэтому есть вероятность, что кто-то нашел решение проблемы, которую вы видите.

Ресурсы и дальнейшие действия

Теперь, когда вы успешно зарегистрировали данные с помощью OpenLog, вы можете настроить удаленные проекты и отслеживать все возможные поступающие данные. Подумайте о создании собственного проекта Citizen Science или даже о трекере для домашних животных, чтобы увидеть, что делает Пушистик, когда он на улице!
Ознакомьтесь с этими дополнительными ресурсами для устранения неполадок, получения помощи или вдохновения для вашего следующего проекта.

  • OpenLog GitHub
  • Проект Illumitune
  • Подключение датчика освещенности LilyPad
  • BadgerHack: Дополнение к датчику почвы
  • Начало работы с OBD-II
  • Верньер Фотогейт

Нужно больше вдохновения? Ознакомьтесь с некоторыми из этих связанных руководств:

  • Дистанционный датчик уровня воды Photon
    Узнайте, как создать дистанционный датчик уровня воды для резервуара для хранения воды и как автоматизировать насос на основе показаний!
  • Руководство по проекту Blynk Board
    Серия проектов Blynk, которые можно реализовать на плате Blynk Board, не перепрограммируя ее.
  • Регистрация данных в Google Таблицах с помощью Tessel 2
    В этом проекте рассматривается, как регистрировать данные в Google Таблицах двумя способами: с помощью IFTTT с web подключение или USB-флешка и «sneakernet» без.
  • Графическое отображение данных датчиков с помощью Python и Matplotlib
    Используйте matplotlib для создания графика данных о температуре в реальном времени, полученных с датчика TMP102, подключенного к Raspberry Pi.

Если у вас есть какие-либо отзывы об уроке, посетите раздел комментариев или свяжитесь с нашей службой технической поддержки по адресу TechSupport@sparkfun.com.

Часто задаваемые вопросы

Какова рекомендуемая входная мощность для OpenLog?

Рекомендуемое входное напряжение для OpenLog составляет от 3.3 В до 5 В.

Какой ток потребляет OpenLog в режиме ожидания?

OpenLog потребляет приблизительно 2–5 мА в режиме ожидания без карты microSD и около 5–6 мА при вставленной карте microSD.

Каково назначение microSD USB Reaaboutn для OpenLog?

USB-ридер microSD позволяет легко переносить данные с карты microSD, используемой с OpenLog, на компьютер.

Документы/Ресурсы

SparkFun DEV-13712 Частица Фотон с отверстиями для пайки [pdf] Руководство пользователя
DEV-13712, DEV-13955, DEV-13712 Частица Фотон С Отверстиями Для Пайки, DEV-13712, Частица Фотон С Отверстиями Для Пайки, Отверстия Для Пайки, Для Пайки, Пайка

Ссылки

Оставьте комментарий

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