欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4550|回復: 1
收起左側

調試MPU6050程序關于IIC地址的問題

[復制鏈接]
ID:319537 發表于 2019-4-12 13:31 | 顯示全部樓層 |閱讀模式
本人在調試MPU6050的時候,發現使用的是同一個模塊,2個程序中從機的IIC的地址確不一樣,兩個程序燒錄進去都能實時顯示數據。既然從機IIC的地址是固定的,那么兩個軟件的從機IIC地址不一樣怎么可能都能通信成功呢?經過一番探討,原來還是在軟件中作了手腳。
以下是程序分析:
0x01:
#define MPU_ADDR                                0X68
u8 MPU_Write_Byte(u8 reg,u8 data)                                 
{
    MPU_IIC_Start();
        MPU_IIC_Send_Byte((MPU_ADDR<<1)|0);//發送器件地址+寫命令        
        if(MPU_IIC_Wait_Ack())        //等待應答
        {
                MPU_IIC_Stop();                 
                return 1;               
        }
    MPU_IIC_Send_Byte(reg);        //寫寄存器地址
    MPU_IIC_Wait_Ack();                //等待應答
        MPU_IIC_Send_Byte(data);//發送數據
        if(MPU_IIC_Wait_Ack())        //等待ACK
        {
                MPU_IIC_Stop();         
                return 1;                 
        }                 
    MPU_IIC_Stop();         
        return 0;
}

0x02:
#define        SLAVEADRESS                0xD0
void IIC_WriteData(uint8_t SlaveAddress,uint8_t REG_Address,uint8_t REG_data)
{
        IIC_Start();                  //?eê?D?o?
        IIC_SendByte(SlaveAddress);   //發送器件地址+寫命令        
        IIC_SendByte(REG_Address);   
        IIC_SendByte(REG_data);      
        IIC_Stop();               
}
分析:

(0x68 << 1)|0 = 1101 0000 b =0xD0;


回復

使用道具 舉報

ID:164602 發表于 2019-4-13 13:36 | 顯示全部樓層
頂一下。
平時用到時都沒有注意,你寫的好學習了。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表