你好!
我正在尝试使用磁力计lsm303dlhc的I2C接口获取正确的数据,磁力计lsm303dlhc包含在mu
STM32f3discovery板上。我已经配置了连续转换模式,30Hz数据输出速率和1.3高斯规模的设备。我的目标是从北方(从北极角开始)获得有关放置的简单信息。为了使这个真实,我正在计算y和x维度的测量值[atan2(mag_y,mag_x)]。不幸的是,我得到了意想不到的结果 - 即旋转90度等于120度或60度,这取决于
电路板的放置(电路板一直躺在桌子上)。这个结果是可重复的,所以我认为该设备正在使用某种非线性标度,我无法确定。奇怪的是,这是来自st和imo的板,它应该适用于任何问题。我编写了第二块板,情况类似。我该怎么做才能让这个设备正常工作?以前有人有这个问题吗?
以上来自于谷歌翻译
以下为原文
Hello!
I'm trying to obtain correct data using I2C interface from magnetometer lsm303dlhc, which is included on mu stm32f3discovery board. I've configured device for con
tinous conversion mode, 30Hz data output rate and scale 1.3 Gauss. My aim is to get simple information about placement from north (angle from north pole). To make this real i'm counting angle beetwen measured values of y and x dimension [atan2(mag_y, mag_x)]. Unfortunatelly i'm getting unexpected results - i.e. rotating 90 degrees equal 120 degrees or 60 deegress, depends on board placement (boards is lying on the table all the time). This results are repeatable, so i think that device is working with some kind of non-linear scale, which i can't determine. Weird is fact that this is board from st and imo it should work with any problems. I programmed my second board and situation is simmilar. What should i do to make this device work properly? Have anybody had this problem before?