解决WT931读取数据异常的问题

本文介绍使用维特智能WT931陀螺仪获取RM战车云台三轴角度等数据时遇到的问题及解决方案。主要问题是数据跳动不稳定,原因是模拟I2C时延时函数设置不当导致通讯异常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# 项目场景:

使用维特智能WT931陀螺仪去获得RM战车云台的三轴角度,角速度和角加速度,通讯方式为I2C


问题描述:

读到的数据非常不正常,比如数据跳动等


原因分析:

使用的是模拟I2C,则需要通过延时函数来实现时序的模拟,那么延时需要非常准确才能保证通讯正常


解决方案:

void Delay(u32 us)//用于产生400KHzIIC信号所需要的延时
{
   volatile int32_t i;
    for (; us > 0; us--)
    {
        i = 30;   
        while(i--);
    }
//	count = count*10;/*一开始的错误代码*/
//	while (count--);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值