IMU FIFO 샘플 대기 함수 추가

- 샘플 부족 방지 안전장치
This commit is contained in:
2026-07-15 15:45:08 +09:00
parent 4ed23a103c
commit 7cccee7cf2
3 changed files with 51 additions and 1 deletions
+37
View File
@@ -615,6 +615,43 @@ int imu_fifo_start(void)
return 0;
}
int imu_fifo_wait_samples(uint16_t target_samples, uint32_t timeout_ms)
{
uint32_t waited_ms = 0U;
const uint32_t poll_ms = 10U;
if (target_samples == 0U)
{
return 0;
}
if (!fifo_active)
{
return -EALREADY;
}
while (waited_ms <= timeout_ms)
{
uint16_t record_count = 0U;
int ret = imu_fifo_read_count(&record_count);
if (ret)
{
return ret;
}
if (record_count >= target_samples)
{
return 0;
}
k_msleep(poll_ms);
waited_ms += poll_ms;
}
return -ETIMEDOUT;
}
int imu_fifo_read_latest(uint8_t *sample_bytes,
uint16_t max_samples,
uint16_t *out_count)