Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Непонятки с MMA7455LT
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Метрология, датчики, измерительная техника
Cemen
Всем привет!
Столкнулся с необходимостью определять положение устройства в пространстве. Купил MMA7455. Сделал плату. Написал протокол обмена с атмегой.
Регистры конфигурации читаются/пишутся нормально. Конфигурирую регистр 0x16 в 0b01100101 (режим измерения, 2g), отключаю I2C (работаю в SPI) 0x0D <= 0b10000000


Но при попытке чтения регистров 0x00 - 0x05 (там должны лежать значения ускорения по осям) или 0x6-0x8 (аналогично,только 8 бит) читаю какой-то бред - то там 0x16, то 0x250,0x1,0x140. Это всё для оси Х. По другим осям аналогично.

Датчик лежит неподвижно.

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

Датчик на плате, обратная сторона - земля. Питание - 2 RC цепочки-фильтра (т.е к питанию резистор на 10 ОМ, потом, 10 мк и 0.1 на землю), как в даташите.

Кто-нить работал с этим датчиком? Может, он так и должен работать? Странно...
MiklPolikov
У меня то же что-то странное .

Включено вот по такой схеме.
Если в регистре Control Register установлено 3WIRE SPI , микросхема начинает что-то передавать на линию MOSI , после того как получила 1й байт от процессора. Т.е. там получается КЗ.

Если включено 4WIRE SPI , то микросхема что-то передаёт на линию MISO , как и надо для правильной работы SPI .

Но такое впечатление, что микросхема путает начало одного байта и конец другого. Что не удивительно, ведь сигнала CS нет.
Передаю пакеты по 2 байта, между пакетами большой интервал.

Ещё, если плату просто запустить, то по осциллографу видно что микросхема передаёт правильно. А если под отладкой , то микросхема передаёт ерунду.
Видимо всё зависит от момента запуска, микросхема либо сбивается либо попадает в нужное место такта.

Но ведь это глупость какая-то !
MiklPolikov
Добавил CS и заработало !
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.