ADXL345

ADXL345 - это миниатюрный, тонкий, малопотребляющий трехосевой акселерометр с высоким разрешением (13 бит) и диапазоном измерения до ±16g. Цифровые результаты измерения представляются в виде 16-разрядных чисел в дополнительном коде и доступны через цифровые интерфейсы SPI (трех- или четырехпроводной) или I2C.

Высокое разрешение ADXL345 (4·10-3g/LSB) позволяет измерять изменения отклонения менее чем на 1.0°.

Эта статья покажет вам, разобраться с тем, как начать работать с серией датчиков Analog Devices ADXL3xx (например, ADXL320, ADXL321, ADXL322, ADXL330) и обрабатывать полученные данные на компьютере.

Особенности

  • Крайне низкое энергопотребление: всего 40 мкА в режиме измерения и 0.1 мкА в режиме ожидания при VS = 2.5 В (тип.)
  • Потребляемая мощность автоматически масштабируется с изменением ширины полосы
  • Выбираемое пользователем разрешение Фиксированное 10-разрядное разрешение
  • Режим полного разрешения, в котором разрешение увеличивается с увеличением диапазона измерения, до 13 бит при диапазоне ±16 (во всех диапазонах поддерживается масштаб преобразования 4·10-3)
  • Технология со встроенным буфером FIFO (подана заявка на патент) минимизирует нагрузку на хост-процессор
  • Детектирование касания/двойного касания
  • Контроль активности/неактивности
  • Высокая ударопрочность до 10000g.
  • Определение свободного падения.
  • Интерфейсы SPI (3-х и 4-х проводной) и I2C.
  • Возможность гибкого задания режимов прерывания с выбором любого (из 2-х возможных) выводов прерываний.
  • Диапазон измерения, также как и полоса пропускания, выбирается подачей определённой команды.
  • Широкий температурный диапазон (от -40°C до +85°C).
  • ADXL345ADXL345-pc

    Назначение выводов ADXL345

    Номер вывода Обозначение Описание
    1 VDD I/O Питание интерфейса ввода-вывода
    2 GND Должен быть подключен к общему проводу
    3 Reserved Зарезервирован, должен быть подключен к VS
      или оставаться свободным
    4 GND Должен быть подключен к общему проводу
    5 GND Должен быть подключен к общему проводу
    6 VS Питание
    7 CS Вход выбора МС, активный низкий
    8 INT1 Выход прерывания 1
    9 INT2 Выход прерывания 2
    10 NC Не подсоединен
    11 Reserved Зарезервирован, должен быть подсоединен к общему проводу или оставаться свободным
    12 SDO/ALT ADDRESS Выход данных для SPI или выбор адреса для I2C
    13 SDA/SDI/SDIO Данные для I2C или вход данных для 4-проводного SPI, или вход и выход данных для 3-проводного SPI
    14 SCL/SCLK Синхронизация для данных

    Распознавание легких ударов

    Это событие происходит, в случае если измеренная величина ускорения превысит пороговое значение (хранящееся в регистре THRESH_TAP) на время не более того значения, которое хранится в регистре DUR. При этом будет установлен бит SINGLE_TAP. Если за первым превышением порога, по истечении времени LATENCY TIME и в течение времени TIME WINDOW FOR SECOND TAP (см. рис.), которое определяется регистром WINDOW, последует второе событие, определяемое по описанным выше правилам, установится бит DOUBLE_TAP.

    Распознавание активности (ускорения)

    Активности определяется, когда величина измеренного ускорения превышает значение, хранящееся в регистре THRESH_ACT. Отсутствие активности определяется, когда величина ускорения в течение времени TIME_INACT меньше значения, хранящегося в регистре THRESH_INACT.

    Описанный алгоритм работы соответствует режиму dc-coupled. Прибор также поддерживает режим работы ac-coupled, в котором, в соответствующих случаях, со значениями регистров THRESH_ACT и THRESH_INACT сравнивается модуль разницы между текущим значением ускорения и опорным значением ускорения в начале события.

    Для каждой оси возможен выбор, будет ли ускорение вдоль нее влиять на обнаружение событий активности.

    Диагностика состояния свободного падения

    Состояние свободного падения детектируется, если величина ускорения меньше значения THRESH_FF в течение времени TIME_FF. Причем, всегда учитываются значения по всем осям, и алгоритм обработки соответствует режиму dc-coupled. Используя сигнал с датчика, можно определить высоту падения. В простейшем случае достаточно измерить время, в течение которого генерируется событие FREE_FALL.

    Режимы работы FIFO

    Буфер FIFO позволяет снизить вычислительную нагрузку на управляющий МК и предназначен для временного хранения результатов измерения. В ADXL345 буфер имеет глубину в 32 измерения по каждой из осей и может функционировать в одном из следующих четырех режимов.

    Bypass Mode — буфер отключен. FIFO Mode — в случае переполнения буфера новые результаты измерения не сохраняются. Stream Mode — в случае переполнения буфера самые старые значения заменяются новыми. Trigger Mode — в этом режиме буфер функционирует аналогично Stream Mode до наступления события, определяемого полем trigger bit в регистре FIFO_CTL. После этого в буфере сохраняется число последних значений, определяемое в регистре FIFO_CTL, и дальнейшее функционирование продолжается аналогично режиму FIFO Mode.