GY-521模块的使用心得(MPU6050)

最近心血来潮,在工具盒中找到了一块失踪已久的GY-521(MPU6050)模块,三轴加速度,三轴角速度。直接通过I2C读取即可,还是挺简单的,下面就分享源代码,以便自己以后参考,也希望能帮助到更多人。

      1.硬件连线,

            我是用自己做的STC89C51作为主控MCU,OLED屏幕显示数据,

            模块上面引需要接的就四根线

                VCC(3.3-5V),GND,SCL,SDA;两根电源,两根I2C,

        2.源程序(传送门)源程序下载地址

            下载源程序后,测试程序->51-code;

            这里面用的数据类型是unsigned int 这会导致无法读取负数,当然啦,如果觉得不需要正负可以不改,如果要改的话,则按照我下面的方法修改:

        //修改前
       unsigned int GetData(unsigned char  REG_Address)
        {
         unsigned char  H,L;
             H=Single_ReadI2C(REG_Address);
             L=Single_ReadI2C(REG_Address+1);
             return (H<<8)+L;   //合成数据
        }

       //修改后
       int GetData(unsigned char  REG_Address)
       {
            int H,L;
                H=Single_ReadI2C(REG_Address);
                L=Single_ReadI2C(REG_Address+1);
                return (H<<8)+L;   //合成数据

      }

      这样都出来的数据就是带正负号的数据了,显示部分可以根据需要显示正负号。



猜你喜欢

转载自blog.csdn.net/m0_37259197/article/details/80640849