FreeRTOS
包子入侵csdn
这个作者很懒,什么都没留下…
展开
-
FreeRTOS学习1--任务挂起与恢复
代码//LED0void led0_task(void *pvParameters){ int num = 0; while(1) { LED0=~LED0; num++; if(num%10 == 0) { vTaskResume(LED1Task_Han原创 2017-06-07 16:42:31 · 1884 阅读 · 0 评论 -
FreeRTOS学习2--队列
QueueHandle_t Led0_Queue; /*定义队列*/Led0_Queue = xQueueCreate(LED0_Q_NUM,sizeof(u8)*LED0_Q_NUM);/*创建队列*/if(NULL == Led0_Queue){ printf("Led0_Queue error\r\n");}err = xQueueSend(Led0_Queue,&原创 2017-06-09 15:41:28 · 292 阅读 · 0 评论 -
FreeRTOS学习3--二值信号量
SemaphoreHandle_t BinarySemaphore; /*二值信号量句柄*/BinarySemaphore=xSemaphoreCreateBinary(); /*´创建二值信号量*///LED0void led0_task(void *pvParameters){ while(1) { LED0=~LED0; xSemapho原创 2017-06-09 16:42:13 · 384 阅读 · 0 评论 -
FreeRTOS学习4--计数型信号量
SemaphoreHandle_t MySemaphoreHandle_led;/*创建变量*/MySemaphoreHandle_led = xSemaphoreCreateCounting(10,0);/*创建计数型信号量*///LED0void led0_task(void *pvParameters){ u8 num = 0; while(1) {原创 2017-06-09 17:57:44 · 988 阅读 · 0 评论 -
FreeRTOS学习5--互斥信号量
SemaphoreHandle_t MySemaphoreHandle_led; /*定义变量*/MySemaphoreHandle_led = xSemaphoreCreateMutex();/*创建互斥量*/ if(NULL == MySemaphoreHandle_led) printf("xSemaphoreCreateMutex error\r\n");//L原创 2017-06-09 19:18:59 · 703 阅读 · 0 评论 -
FreeRTOS学习6--软件定时器
TimerHandle_t TimerHandle_tim1;/*定义定时器1变量*/TimerHandle_t TimerHandle_tim2;/*定义定时器2变量*/TimerHandle_tim1 = xTimerCreate("tim1",1000,pdTRUE,(void *)1,TimerHandle_tim1_callback);/*创建tim1的中断时间1000ms,自动原创 2017-06-09 22:34:41 · 447 阅读 · 0 评论 -
FreeRTOS学习7--事件标志组
EventGroupHandle_t EventGroupHandler = NULL; /*定义事件标志组*/EventGroupHandler=xEventGroupCreate(); /*创建事件标志组*/#define EVENTBIT_0 (1<<0) #define EVENTBIT_1 (1<<1)#define EVENTBIT_AL原创 2017-06-10 00:14:47 · 1333 阅读 · 0 评论 -
FreeRTOS学习8--低功耗tickless
#define configUSE_TICKLESS_IDLE 1/*启用低功耗模式FreeRTOSConfig.h文件中*//*低功耗模式的进入与退出函数定义 FreeRTOSConfig.h文件中*/extern void PreSleepProcessing(uint32_t ulExpectedIdleTime);extern void PostSleep原创 2017-06-11 13:45:52 · 1318 阅读 · 0 评论