rev id и функция read_rev_id()

Что такое rev id? Я везде искал правильное определение, но ничего не нашел. Я пытаюсь понять код ниже. Я не понимаю, зачем нужна эта функция read_rev_id, и да, я пытался посмотреть в руководстве пользователя для IMU, который я использую, но его практически нет. Я использую myAHRS IMU, и единственное руководство, которое я смог найти на GitHub, даже не показывало регистр с таким именем.

void setup()
{
  //Инициализация
  Wire.begin();
  Serial.begin(115200);    
  who_am_i();
  read_rev_id();
  delay(1000); //Подождать 1 секунду.
}

, 👍0

Обсуждение

кто-то назвал одну из своих функций read_rev_id. ... посмотрите, откуда вы взяли программу., @jsotola


1 ответ


Лучший ответ:

1

Вы не предоставили достаточно информации, чтобы кто-то мог вам легко помочь. Предполагая, что вы взяли свой код с GitHub myAHRS_plus_i2c.ino, вы можете посмотреть дальше по файлу, чтобы найти определение read_rev_id(). Он просто считывает номер ревизии с чипа AHRS и отображает его на консоли. Поскольку это все, что он делает, вы можете пропустить вызов read_rev_id(). Но если вы собираетесь его использовать, то имейте в виду, что он содержит очевидную ошибку. Второй read() должен быть для I2C_SLAVE_REG_REV_ID_MINOR.

//ЧИТАТЬ ИДЕНТИФИКАТОР РЕВИЗИИ
int read_rev_id()
{
    uint8_t id_1 = 0;
    uint8_t id_2 = 0;
    read(I2C_SLAVE_REG_REV_ID_MAJOR, &id_1, 1);
    read(I2C_SLAVE_REG_REV_ID_MAJOR, &id_2, 1);
    Serial.print("READ REVISION ID= "); Serial.print(id_1); Serial.println(id_2);
}
,