Здравствуйте! GY-271- трехкоординатный датчик магнитного поля. Хочу написать для него программку подключения по I2C не к Ардуино. В дейташите все более-менее ясно. Только, вот, поскольку я не программист не понял, что значит The value stored in these two redgister is a 16-bit value in 2's complement form, whose range is 0xF800 to 0x07FF. Это получается 16 битное значение в форме дополнения до двух в диапазоне, примерно, от 64 до 2 тысяч. Это дополнительный код? И почему такой диапазон? Подскажите, пожалуйста, что это значит. Спасибо.
Предполагаю, что крайние значения диапазона от 65535 (0хFFFF) до нулевого у 16-битного числа отбрасываются просто как выходящие за пределы измерений. С диапазоном стало ясно. А вот что такое 2's complement form? Порыскаю в интернете.
это 2 байта, которые надо склеить вместе в 16 бит переменную, чтобы получить число 0-65535 важно только знать из даташита, какой байт будет первый обычно их маркируют как low и hight byte первый тогда младшие разряды 16 битной переменной, а второй - старшие
_________________ тематические ответы только в форуме, в приват не пишите
Спасибо. Ответ оказался как обычно у меня под носом )). 2's complement form- это форма представления двоичных чисел со знаком. Если старший бит единица, то минус. А если ноль, то плююс. И диапазон, соответственно, +32767 и -32767. Извините за суматоху.
Добрый вечер. Вот и подключил я датчик GY-271 c чипом QMC5883l. Всего-то полгодика прошло. . . Дейташит к нему хороший, есть пример использования. Но данные по всем трем осям скачут на +/- пять процентов. Ничего не понимаю в геомагнетизме. Подскажите, пожалуйста- это, предположительно, помехи электросети, погрешность датчика или еще что-то? Буду благодарен.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения