楼主

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
梯队队员上吧皮卡丘
2018-2-2 14:14:58 只看该作者

马上注册,玩转Robomaster!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请问各位有人使用过信仰板内置的三轴地磁传感器吗。。官方库里是只有初始化没有使用的,但是我发现好像初始化的地方有点问题,就是下面这一句,ist8310的设备id是0x10,但是从寄存器读出来的不是0x10,请问有人遇到过这个问题或者是有ist8310的资料吗,小弟先谢过了。
跳转到指定楼层
推荐

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
英雄gicgi
2018-2-7 13:33:35 只看该作者
本帖最后由 gicgi 于 2018-2-7 13:35 编辑

别犹豫,一个电话打到芯片厂家去!要不到就打DJI售后、比赛答疑电话!做开发板怎么可能没有程序资料呢?要说法!否则就退货。

另外你去看看开源飞控的程序,有兼容这个指南针的!八成能弄明白怎么用!再尝试下是否和常用的磁力计寄存器兼容!
沙发

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
正式队员风中的少年
2018-2-3 19:24:51 只看该作者
用信仰板遇到了同样的问题。。IST不能读取到数据,借楼同求
板凳

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
正式队员13420646659
2018-2-4 12:21:32 只看该作者
解决了吗,同求
地板

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
正式队员13420646659
2018-2-4 12:22:03 只看该作者
风中的少年 发表于 2018-2-3 19:24
用信仰板遇到了同样的问题。。IST不能读取到数据,借楼同求

同求!!!!!!!!!
6#

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
顾问lyb36524
2018-2-7 14:10:27 只看该作者
把磁力计的RST引脚拉高,然后用官方给的函数读就行了,利用了mpu6500的i2c去读取的磁力计,mpu6500 i2c 有两种工作模式
7#

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
顾问lyb36524
2018-2-7 14:11:21 只看该作者
13420646659 发表于 2018-2-4 12:22
同求!!!!!!!!!

把磁力计的RST引脚拉高,然后用官方给的函数读就行了,利用了mpu6500的i2c去读取的磁力计,mpu6500 i2c 有两种工作模式
8#

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
顾问lyb36524
2018-2-8 13:28:29 只看该作者
9#

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
正式队员13420646659
2018-3-6 17:02:44 只看该作者
lyb36524 发表于 2018-2-7 14:11
把磁力计的RST引脚拉高,然后用官方给的函数读就行了,利用了mpu6500的i2c去读取的磁力计,mpu6500 i2c  ...

好的,谢谢
10#

[嵌入式] 【求助帖】ist8310的初始化问题

[复制链接]
梯队队员603845290
2019-12-12 17:18:33 只看该作者
遇到了同样的问题,然后把官方的延时函数改了一下就好了
void delay_us(uint16_t nus)
{
        u32 temp;
        SysTick->LOAD = 36 *nus;
        SysTick->VAL=0X00;//清空计数器
        SysTick->CTRL=0X01;//使能,减到零是无动作,采用外部时钟源
        do
        {
                temp=SysTick->CTRL;//读取当前倒计数值
        }while((temp&0x01)&&(!(temp&(1<<16))));//等待时间到达
       
        SysTick->CTRL=0x00; //关闭计数器
        SysTick->VAL =0X00; //清空计数器
}

void delay_ms(uint16_t nms)
{
    u32 temp;
        SysTick->LOAD = 36000 *nms;
        SysTick->VAL=0X00;//清空计数器
        SysTick->CTRL=0X01;//使能,减到零是无动作,采用外部时钟源
        do
        {
                temp=SysTick->CTRL;//读取当前倒计数值
        } while((temp&0x01)&&(!(temp&(1<<16))));//等待时间到达
         
    SysTick->CTRL=0x00; //关闭计数器
    SysTick->VAL =0X00; //清空计数器
}
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上吧皮卡丘的最新主题
触屏版 | 电脑版

Copyright © 2024 RoboMasters 版权所有 备案号 粤ICP备2022092332号

快速回复 返回顶部 返回列表