Есть ли способ увеличить i2 c читать в linux - PullRequest
0 голосов
/ 30 марта 2020

У меня есть датчик движения LSM6DS3, подключенный к шине i2 c процессора Qualcomm с ОС Linux. Я пытался читать буфер FIFO датчика каждые 20 секунд. Для считывания всех данных из буфера FIFO датчика требуется от 2 до 3 секунд ( Буфер FIFO датчика открывается через LSM6DS3_FIFO_DATA_OUT_L и LSM6DS3_FIFO_DATA_OUT_H регистров в датчике ). Я использую i2c_smbus_read_word_data(int file, __u8 command) API для чтения. Чтобы уменьшить эту задержку, я установил свои основные часы i2 c на 400 кГц и попробовал IOCTL вместо вышеуказанных API, но ни один из обходных путей не сработал. Тот же датчик я подключил к Arduino и попробовал ту же самую операцию чтения. Потребовалось всего 1,4 секунды, чтобы прочитать данные. Есть ли способ увеличить скорость чтения i2 c в Linux?.

...