Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить

Помогите разобраться с шиной i2c

Вт мар 06, 2018 13:40:15

Имеется плата orange pi zero plus и датчик MPU9250 подключенные по шине i2c
В результате опроса датчик передает одни -1
вот сам код и работа:
Спойлер#include <iostream>
#include <wiringPi.h>
#include <wiringPiI2C.h>
using namespace std;
int main()
{
wiringPiSetup();
int i=0x68;
int n;
int a=wiringPiI2CSetup(i);
if (a<0)
{
std::cout<<"error initializacion"<<std::endl;
}
std::cout<<"vvedite kolichestvo znachenie n=";
std::cin>>n;
std::cout<<endl;
int j;
for (int j=1; j<n; j++)
{
int Ax=wiringPiI2CReadReg8(i,0x3B)<<8|wiringPiI2CReadReg8(i,0x3C);
int Ay=wiringPiI2CReadReg8(i,0x3D)<<8|wiringPiI2CReadReg8(i,0x3E);
int Az=wiringPiI2CReadReg8(i,0x3F)<<8|wiringPiI2CReadReg8(i,0x40);
int t=wiringPiI2CReadReg8(i,0x41)<<8|wiringPiI2CReadReg8(i,0x42);
std::cout<<Ax<<" "<<Ay<<" "<<Az<<" "<<t<<std::endl;
}
return 0;
}

Спойлерroot@orangepizeroplus:/home# ./output
vvedite kolichestvo znachenie n=5

-1 -1 -1 -1
-1 -1 -1 -1
-1 -1 -1 -1
-1 -1 -1 -1
root@orangepizeroplus:/home#

Такая же проблема была при подключении к ардуине и решалась подключением к земле осциллографа причем выключенного, датчик начинал прекрасно работать, но здесь это не работает.
Может дело в статике или ещё в чем-то
вообщем может кто сталкивался подскажите плиз в чем может быть дело и как это исправить
Ответить