LIS331HH: в каком виде данные?

Обсуждаем цифровые устройства...
Ответить
Вымогатель припоя
Аватара пользователя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Сообщение eess9 »

Привет всем котам,
Кто-то работал с акселерометром LIS331HH? Помогите, пожалуйста, разобраться с форматом данных по осям. Подключил это чудо по I2C. Работает. Когда переворачиваю, данные меняются. Но вот что мне непонятно: выход у него 16-ти разрядный, т.е. от 0 до 65535. Но данные находятся либо в начале этого диапазона (100 - 700) или в конце (около 65300). Причем, считываю данные первый раз, к примеру, 700, следующий - 65000. Как правильно обработать данные с этого акселерометра?
Реклама
Вымогатель припоя
Сообщения: 630
Зарегистрирован: Пн июн 14, 2010 13:07:29
Откуда: Жуковский

Сообщение a_skr »

Не 0...65535, а -32768...+32767. Используйте переменную со знаком. 65000 без знака соответствует -536
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 672
Зарегистрирован: Ср фев 29, 2012 01:58:32
Откуда: Харьков, Украина

Сообщение eess9 »

Спасибо, разобрался. Мне в принципе не на контроллере , а на компе надо было в матлабе строить графики. Переводил неправильно. Зато вспомнил перевод отрицательных чисел.
Родился
Сообщения: 2
Зарегистрирован: Вт мар 11, 2014 21:26:09

Сообщение almaz72 »

Друзья! А я не могу разобраться с переводом помогите пожалуйста! Если 7 бит=1 в старшем байте (отрицательное число) то от ffff отнимаю принятое число и +1. А если положительное число что делать? У меня по X в одном положении FF00 в другом 1400.
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 6339
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Сообщение Jack_A »

А ничего не делать. Приведенный алгоритм - это получение абсолютного значения отрицательного числа. А абсолютное значение положительного числа - это оно само и есть. Так что в приведенном примере Abs (-256) = 256, Abs (5120) = 5120
И если речь об 2-байтовом числе, то надо уточнять: знаковым является 15-й бит этого числа или то же самое 7-й бит старшего байта.
Реклама
Родился
Сообщения: 2
Зарегистрирован: Вт мар 11, 2014 21:26:09

Сообщение almaz72 »

Спасибо, разобрался. Теперь еще одна маленькая проблема: лежит себе на столе (плата) считываешь один раз(x) -256 потом проскакивает -512. А по Y 0 или 256. Шкала +/- 6g. Это помехи?
Реклама
Ответить

Вернуться в «Цифровая техника»