2012-12-05 6 views
4

Cortex M0 (LPC11U14)에서 데이터 로거를 개발하려고하며 FreeRTOS와 같은 실시간 OS를 사용하려고 생각하고 데이터를 쓰는 우선 순위가 낮은 작업 하나를 가질 수 있습니다. 센서 데이터를 가져 오는 여러 개의 높은 우선 순위 타이머를 제공합니다.RTOS 데이터 로거 예제

누구나 참조 디자인으로 사용할 수있는 코드 예제를 알고 있습니까? 저는 작업/타이머를 만드는 방법을 알고 있지만, 타이머에서 쓰기 작업으로 데이터를 전달하는 효율적인 방법에 관심이 있습니다. 그리고 이미 코드베이스 역할을 할 수있는 좋은 데이터 로거 프로젝트가 존재한다면, 나는 휠을 다시 발명하기를 망설입니까?

답변

1

대기열을 사용하여 데이터 로깅을 직렬화하는 것이 좋습니다.

대기열에서 대기하고 센서 데이터를 대기열에 쓰는 다른 작업이있을 때 sdcard에 쓰는 우선 순위가 낮은 작업을 사용하면 원하는 것을 우아하게 수행 할 수 있습니다. 특히 FreeRTOS Queue Management

:

  1. xQueueCreate
  2. xQueueSend 또는 xQueueSendFromISR
  3. xQueueReceive

보세요