亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? task.h

?? 一個開源的Modbus協議棧
?? H
?? 第 1 頁 / 共 3 頁
字號:
 * The constant portTICK_RATE_MS can be used to calculate real time from the tick

 * rate - with the resolution of one tick period.

 *

 * @param pxPreviousWakeTime Pointer to a variable that holds the time at which the

 * task was last unblocked.  The variable must be initialised with the current time

 * prior to its first use (see the example below).  Following this the variable is

 * automatically updated within vTaskDelayUntil ().

 *

 * @param xTimeIncrement The cycle time period.  The task will be unblocked at

 * time *pxPreviousWakeTime + xTimeIncrement.  Calling vTaskDelayUntil with the

 * same xTimeIncrement parameter value will cause the task to execute with

 * a fixed interface period.

 *

 * Example usage:

   <pre>

 // Perform an action every 10 ticks.

 void vTaskFunction( void * pvParameters )

 {

 portTickType xLastWakeTime;

 const portTickType xFrequency = 10;



     // Initialise the xLastWakeTime variable with the current time.

     xLastWakeTime = xTaskGetTickCount ();

     for( ;; )

     {

         // Wait for the next cycle.

         vTaskDelayUntil( &xLastWakeTime, xFrequency );



         // Perform action here.

     }

 }

   </pre>

 * \defgroup vTaskDelayUntil vTaskDelayUntil

 * \ingroup TaskCtrl

 */

void vTaskDelayUntil( portTickType *pxPreviousWakeTime, portTickType xTimeIncrement );



/**

 * task. h

 * <pre>unsigned portBASE_TYPE uxTaskPriorityGet( xTaskHandle pxTask );</pre>

 *

 * INCLUDE_xTaskPriorityGet must be defined as 1 for this function to be available.

 * See the configuration section for more information.

 *

 * Obtain the priority of any task.

 *

 * @param pxTask Handle of the task to be queried.  Passing a NULL

 * handle results in the priority of the calling task being returned.

 *

 * @return The priority of pxTask.

 *

 * Example usage:

   <pre>

 void vAFunction( void )

 {

 xTaskHandle xHandle;

		

     // Create a task, storing the handle.

     xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, &xHandle );

		

     // ...



     // Use the handle to obtain the priority of the created task.

     // It was created with tskIDLE_PRIORITY, but may have changed

     // it itself.

     if( uxTaskPriorityGet( xHandle ) != tskIDLE_PRIORITY )

     {

         // The task has changed it's priority.

     }



     // ...



     // Is our priority higher than the created task?

     if( uxTaskPriorityGet( xHandle ) < uxTaskPriorityGet( NULL ) )

     {

         // Our priority (obtained using NULL handle) is higher.

     }

 }

   </pre>

 * \defgroup uxTaskPriorityGet uxTaskPriorityGet

 * \ingroup TaskCtrl

 */

unsigned portBASE_TYPE uxTaskPriorityGet( xTaskHandle pxTask );



/**

 * task. h

 * <pre>void vTaskPrioritySet( xTaskHandle pxTask, unsigned portBASE_TYPE uxNewPriority );</pre>

 *

 * INCLUDE_vTaskPrioritySet must be defined as 1 for this function to be available.

 * See the configuration section for more information.

 *

 * Set the priority of any task.

 *

 * A context switch will occur before the function returns if the priority

 * being set is higher than the currently executing task.

 *

 * @param pxTask Handle to the task for which the priority is being set.

 * Passing a NULL handle results in the priority of the calling task being set.

 *

 * @param uxNewPriority The priority to which the task will be set.

 *

 * Example usage:

   <pre>

 void vAFunction( void )

 {

 xTaskHandle xHandle;

		

     // Create a task, storing the handle.

     xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, &xHandle );



     // ...



     // Use the handle to raise the priority of the created task.

     vTaskPrioritySet( xHandle, tskIDLE_PRIORITY + 1 );



     // ...



     // Use a NULL handle to raise our priority to the same value.

     vTaskPrioritySet( NULL, tskIDLE_PRIORITY + 1 );

 }

   </pre>

 * \defgroup vTaskPrioritySet vTaskPrioritySet

 * \ingroup TaskCtrl

 */

void vTaskPrioritySet( xTaskHandle pxTask, unsigned portBASE_TYPE uxNewPriority );



/**

 * task. h

 * <pre>void vTaskSuspend( xTaskHandle pxTaskToSuspend );</pre>

 *

 * INCLUDE_vTaskSuspend must be defined as 1 for this function to be available.

 * See the configuration section for more information.

 *

 * Suspend any task.  When suspended a task will never get any microcontroller

 * processing time, no matter what its priority.

 *

 * Calls to vTaskSuspend are not accumulative -

 * i.e. calling vTaskSuspend () twice on the same task still only requires one

 * call to vTaskResume () to ready the suspended task.

 *

 * @param pxTaskToSuspend Handle to the task being suspended.  Passing a NULL

 * handle will cause the calling task to be suspended.

 *

 * Example usage:

   <pre>

 void vAFunction( void )

 {

 xTaskHandle xHandle;

		

     // Create a task, storing the handle.

     xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, &xHandle );

		

     // ...



     // Use the handle to suspend the created task.

     vTaskSuspend( xHandle );



     // ...

		

     // The created task will not run during this period, unless

     // another task calls vTaskResume( xHandle ).

		

     //...

		



     // Suspend ourselves.

     vTaskSuspend( NULL );



     // We cannot get here unless another task calls vTaskResume

     // with our handle as the parameter.

 }

   </pre>

 * \defgroup vTaskSuspend vTaskSuspend

 * \ingroup TaskCtrl

 */

void vTaskSuspend( xTaskHandle pxTaskToSuspend );



/**

 * task. h

 * <pre>void vTaskResume( xTaskHandle pxTaskToResume );</pre>

 *

 * INCLUDE_vTaskSuspend must be defined as 1 for this function to be available.

 * See the configuration section for more information.

 *

 * Resumes a suspended task.

 *

 * A task that has been suspended by one of more calls to vTaskSuspend ()

 * will be made available for running again by a single call to

 * vTaskResume ().

 *

 * @param pxTaskToResume Handle to the task being readied.

 *

 * Example usage:

   <pre>

 void vAFunction( void )

 {

 xTaskHandle xHandle;

		

     // Create a task, storing the handle.

     xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, &xHandle );

		

     // ...



     // Use the handle to suspend the created task.

     vTaskSuspend( xHandle );



     // ...

	

     // The created task will not run during this period, unless

     // another task calls vTaskResume( xHandle ).

		

     //...

		



     // Resume the suspended task ourselves.

     vTaskResume( xHandle );



     // The created task will once again get microcontroller processing

     // time in accordance with it priority within the system.

 }

   </pre>

 * \defgroup vTaskResume vTaskResume

 * \ingroup TaskCtrl

 */

void vTaskResume( xTaskHandle pxTaskToResume );



/**

 * task. h

 * <pre>void xTaskResumeFromISR( xTaskHandle pxTaskToResume );</pre>

 *

 * INCLUDE_xTaskResumeFromISR must be defined as 1 for this function to be 

 * available.  See the configuration section for more information.

 *

 * An implementation of vTaskResume() that can be called from within an ISR.

 *

 * A task that has been suspended by one of more calls to vTaskSuspend ()

 * will be made available for running again by a single call to

 * xTaskResumeFromISR ().

 *

 * @param pxTaskToResume Handle to the task being readied.

 *

 * \defgroup vTaskResumeFromISR vTaskResumeFromISR

 * \ingroup TaskCtrl

 */

portBASE_TYPE xTaskResumeFromISR( xTaskHandle pxTaskToResume );



/*-----------------------------------------------------------

 * SCHEDULER CONTROL

 *----------------------------------------------------------*/



/**

 * task. h

 * <pre>void vTaskStartScheduler( void );</pre>

 *

 * Starts the real time kernel tick processing.  After calling the kernel

 * has control over which tasks are executed and when.  This function

 * does not return until an executing task calls vTaskEndScheduler ().

 *

 * At least one task should be created via a call to xTaskCreate ()

 * before calling vTaskStartScheduler ().  The idle task is created

 * automatically when the first application task is created.

 *

 * See the demo application file main.c for an example of creating

 * tasks and starting the kernel.

 *

 * Example usage:

   <pre>

 void vAFunction( void )

 {

     // Create at least one task before starting the kernel.

     xTaskCreate( vTaskCode, "NAME", STACK_SIZE, NULL, tskIDLE_PRIORITY, NULL );



     // Start the real time kernel with preemption.

     vTaskStartScheduler ();



     // Will not get here unless a task calls vTaskEndScheduler ()

 }

   </pre>

 *

 * \defgroup vTaskStartScheduler vTaskStartScheduler

 * \ingroup SchedulerControl

 */

void vTaskStartScheduler( void );



/**

 * task. h

 * <pre>void vTaskEndScheduler( void );</pre>

 *

 * Stops the real time kernel tick.  All created tasks will be automatically

 * deleted and multitasking (either preemptive or cooperative) will

 * stop.  Execution then resumes from the point where vTaskStartScheduler ()

 * was called, as if vTaskStartScheduler () had just returned.

 *

 * See the demo application file main. c in the demo/PC directory for an

 * example that uses vTaskEndScheduler ().

 *

 * vTaskEndScheduler () requires an exit function to be defined within the

 * portable layer (see vPortEndScheduler () in port. c for the PC port).  This

 * performs hardware specific operations such as stopping the kernel tick.

 *

 * vTaskEndScheduler () will cause all of the resources allocated by the

 * kernel to be freed - but will not free resources allocated by application

 * tasks.

 *

 * Example usage:

   <pre>

 void vTaskCode( void * pvParameters )

 {

     for( ;; )

     {

         // Task code goes here.



         // At some point we want to end the real time kernel processing

         // so call ...

         vTaskEndScheduler ();

     }

 }



?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美在线你懂的| 捆绑调教美女网站视频一区| 懂色av一区二区三区免费观看| 日韩欧美亚洲一区二区| 美女精品一区二区| 久久综合色之久久综合| 国产一区二区0| 亚洲成人动漫一区| 久久国产欧美日韩精品| 精品久久久久久久人人人人传媒| 蜜桃精品视频在线| 日本一区二区三区电影| 99r精品视频| 五月天精品一区二区三区| 欧美一区二区三区免费视频| 国产又粗又猛又爽又黄91精品| 中文文精品字幕一区二区| 色综合久久久久综合99| 午夜视频一区在线观看| 欧美精品一区视频| 91福利在线免费观看| 三级久久三级久久| 日本一区二区三级电影在线观看| 91麻豆产精品久久久久久 | 国产精品毛片大码女人| 91豆麻精品91久久久久久| 日韩不卡一区二区三区| 国产精品系列在线| 欧美日韩亚洲综合| 国产精品 欧美精品| 亚洲一区二区免费视频| 久久久一区二区三区捆绑**| 91麻豆.com| 国产精品伊人色| 亚洲午夜精品在线| 国产日韩欧美一区二区三区综合| 欧美亚洲综合另类| 国产精品乡下勾搭老头1| 亚洲成人动漫av| 国产日产欧美一区二区三区| 欧美日韩成人综合天天影院| 国产大陆亚洲精品国产| 日韩专区欧美专区| 亚洲欧美色一区| 26uuu精品一区二区三区四区在线| 色94色欧美sute亚洲线路二| 国产成人亚洲精品青草天美| 日韩高清不卡一区| 亚洲一区在线观看免费| 国产精品久久久久久久久果冻传媒| 欧美精选一区二区| 91免费看`日韩一区二区| 国产一区二区三区蝌蚪| 日韩影院精彩在线| 樱花影视一区二区| 国产精品免费视频一区| 精品国产精品网麻豆系列| 欧美日韩免费高清一区色橹橹| 99精品久久99久久久久| 国产黄色精品网站| 国产乱码精品1区2区3区| 美女精品自拍一二三四| 日韩avvvv在线播放| 一区二区三区成人| 亚洲美女免费视频| 亚洲色图色小说| 国产精品不卡在线| 国产精品久久三区| 国产午夜精品一区二区三区四区| 欧美大片拔萝卜| 日韩一级免费一区| 日韩一区二区三区四区| 911精品国产一区二区在线| 欧美色图12p| 678五月天丁香亚洲综合网| 在线看不卡av| 欧美探花视频资源| 欧美色窝79yyyycom| 色综合视频在线观看| 91污片在线观看| 91免费国产在线观看| 色94色欧美sute亚洲13| 欧美在线小视频| 日韩亚洲欧美一区| 欧美精品一区二区在线播放| 日韩欧美在线1卡| 91精品国产麻豆| 日韩免费电影一区| 欧美日韩国产区一| 欧美日韩精品高清| 欧美日韩国产乱码电影| 欧美日精品一区视频| 欧美日韩国产小视频在线观看| 欧美日韩国产免费一区二区| 67194成人在线观看| 精品美女一区二区| 欧美日韩www| 五月天精品一区二区三区| 一区二区三区免费| 91福利视频久久久久| 欧美成人精品二区三区99精品| 777久久久精品| 欧美zozozo| 日本一区二区免费在线观看视频| 国产精品久久久久一区二区三区| 亚洲欧美激情小说另类| 亚洲午夜精品一区二区三区他趣| 日本一道高清亚洲日美韩| 国产精品自产自拍| 欧美在线播放高清精品| 欧美一区二区大片| 欧美国产一区二区在线观看| 亚洲欧美在线观看| 青青草国产成人99久久| 激情综合网天天干| 色综合激情五月| 欧美电视剧免费全集观看| 国产精品少妇自拍| 午夜精品123| 国产精品一区专区| 欧美系列在线观看| 国产校园另类小说区| 一区二区三区丝袜| 六月丁香综合在线视频| 99久久综合精品| 欧美成人精精品一区二区频| 亚洲欧洲国产日本综合| 日韩中文字幕1| 成人app软件下载大全免费| 69堂国产成人免费视频| 国产丝袜在线精品| 肉色丝袜一区二区| 色网站国产精品| 2023国产精品| 午夜国产不卡在线观看视频| av在线不卡观看免费观看| 日韩欧美国产系列| 亚洲电影一区二区三区| 丁香一区二区三区| 精品免费日韩av| 性久久久久久久久久久久 | 免费美女久久99| 色悠久久久久综合欧美99| 久久综合久久综合亚洲| 日韩影院在线观看| 欧洲日韩一区二区三区| 国产精品亲子伦对白| 九九在线精品视频| 欧美精品丝袜久久久中文字幕| 中文字幕亚洲视频| 日韩福利电影在线| 精品精品欲导航| 日韩午夜激情av| 一区二区国产视频| 成人午夜在线视频| 久久亚洲精品国产精品紫薇| 日韩国产欧美在线观看| 在线观看免费视频综合| 国产精品国产a| 成人福利视频在线| 国产女人18水真多18精品一级做| 蜜乳av一区二区| 欧美大片国产精品| 美女久久久精品| 日韩天堂在线观看| 蜜桃精品视频在线| 精品国产91乱码一区二区三区| 久久99久久99小草精品免视看| 在线综合视频播放| 日本午夜精品视频在线观看| 6080yy午夜一二三区久久| 午夜精品在线看| 欧美乱妇15p| 麻豆极品一区二区三区| 日韩欧美精品在线视频| 国产揄拍国内精品对白| 国产婷婷色一区二区三区四区| 狠狠色伊人亚洲综合成人| 久久精品一区二区三区不卡牛牛| 国产99久久久精品| 国产精品久久久久久亚洲伦| www.99精品| 亚洲成年人影院| 日韩三级电影网址| 国产自产视频一区二区三区| 欧美韩国日本综合| 99精品久久久久久| 亚洲18影院在线观看| 欧美一区二区三区婷婷月色| 久久99精品久久久久久国产越南| 国产视频一区二区在线| 91麻豆swag| 首页亚洲欧美制服丝腿| 欧美α欧美αv大片| 成人精品视频一区| 亚洲精品v日韩精品| 717成人午夜免费福利电影| 国产乱码字幕精品高清av | 国产日韩亚洲欧美综合| 成人av免费在线观看|