아두이노 freeRTOS 튜토리얼 5Arduino FreeRTOS2015. 1. 14. 20:19
Table of Contents
반응형
네번째 예제와 달리 두 개의 태스크의 우선순위를 똑같이 하더라도 번갈아가며 실행되는 것을 볼 수 있다.
- /* FreeRTOS.org includes. */
- //#include "FreeRTOS.h"
- //#include "task.h"
- #include "FreeRTOS_AVR.h"
- /* Demo includes. */
- #include "basic_io_avr.h"
- //태스크에서 사용되는 함수
- void vTaskFunction( void *pvParameters );
- //태스크로 넘겨줄 두 개의 문자열을 선언
- const char *pcTextForTask1 = "Task 1 is running\r\n";
- const char *pcTextForTask2 = "Task 2 is running\t\n";
- /*-----------------------------------------------------------*/
- void setup( void )
- {
- Serial.begin(9600);
- //첫번째 태스크는 우선순위 1로 생성하고
- xTaskCreate( vTaskFunction, "Task 1", 200, (void*)pcTextForTask1, 1, NULL );
- //두번째 태스크의 우선순위 2를 1로 바꾸어 실행해본다.
- xTaskCreate( vTaskFunction, "Task 2", 200, (void*)pcTextForTask2, 2, NULL );
- //스케줄러를 시작한다.
- vTaskStartScheduler();
- for( ;; );
- // return 0;
- }
- /*-----------------------------------------------------------*/
- void vTaskFunction( void *pvParameters )
- {
- char *pcTaskName;
- pcTaskName = ( char * ) pvParameters;
- //현재 틱 카운트로 초기화 해준다.
- TickType_t xLastWakeTime = xTaskGetTickCount();
- for( ;; )
- {
- //태스크 이름을 출력
- vPrintString( pcTaskName );
- //주어진 시간동안 태스크를 대기 상태로 만든다.
- //vTaskDelay는 태스크가 깨어난 이후부터 상대적인 시간을 측정한다.
- //정확히 250밀리세컨드 마다 태스크가 실행되도록 하기 위해선
- //vTaskDelayUntil함수를 사용해야 한다.xLastWakeTime변수값은 내부적으로
- //자동으로 업데이트 된다.
- vTaskDelayUntil( &xLastWakeTime, ( 250 / portTICK_PERIOD_MS ) );
- }
- }
- //-----------------------------------------------------------------
- void loop() {}
반응형
'Arduino FreeRTOS' 카테고리의 다른 글
아두이노 freeRTOS 튜토리얼 7 (0) | 2015.01.14 |
---|---|
아두이노 freeRTOS 튜토리얼 6 (0) | 2015.01.14 |
아두이노 freeRTOS 튜토리얼 4 (0) | 2015.01.14 |
아두이노 freeRTOS 튜토리얼 3 (0) | 2015.01.14 |
아두이노 freeRTOS 튜토리얼 2 (0) | 2015.01.14 |
시간날때마다 틈틈이 이것저것 해보며 블로그에 글을 남깁니다.
블로그의 문서는 종종 최신 버전으로 업데이트됩니다.
여유 시간이 날때 진행하는 거라 언제 진행될지는 알 수 없습니다.
영화,책, 생각등을 올리는 블로그도 운영하고 있습니다.
https://freewriting2024.tistory.com
제가 쓴 책도 한번 검토해보세요 ^^
@webnautes :: 멈춤보단 천천히라도
그렇게 천천히 걸으면서도 그렇게 빨리 앞으로 나갈 수 있다는 건.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!