乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Freertos之系統(tǒng)配置

       心不留意外塵 2016-08-06
      http://bluefish.blog.51cto.com/214870/163430
      2009

      freeRTOS 配置在:FREERTOS_CONFIG.H 里面,條目如下:
      #ifndef FREERTOS_CONFIG_H
      #define FREERTOS_CONFIG_H
      /* Here is a good place to include header files that are required across your application. */
      #include "something.h"
      /* 是否配置成搶先先多任務(wù)內(nèi)核,是1的時候,優(yōu)先級高的任務(wù)優(yōu)先執(zhí)行。 為0任務(wù)就沒有優(yōu)先級之說,用時間片輪流執(zhí)行 */
      #define configUSE_PREEMPTION                1 
       
      /* IDLE任務(wù)的HOOK函數(shù),用于OS功能擴展,需要你自己編相應(yīng)函數(shù), 名字是void vApplicationIdleHook( void ) */
      #define configUSE_IDLE_HOOK                   0    
       
      /* SYSTEM TICK的HOOK函數(shù),用于OS功能擴展,需要你自己編相應(yīng)函數(shù), 名字是 void vApplicationTickHook(void ) */
       #define configUSE_TICK_HOOK                 0 
       
      /* 系統(tǒng)CPU頻率,單位是Hz */
      #define configCPU_CLOCK_HZ                  58982400 
       
      /* 系統(tǒng)SYSTEM TICK每秒鐘的發(fā)生次數(shù), 數(shù)值越大系統(tǒng)反應(yīng)越快,但是CPU用在任務(wù)切換的開銷就越多 */
      #define configTICK_RATE_HZ                      250 
      /* 系統(tǒng)任務(wù)優(yōu)先級數(shù)。5 說明任務(wù)有5級優(yōu)先度。這個數(shù)目越大耗費RAM越多 */
      #define configMAX_PRIORITIES                      5  
       
      /* 系統(tǒng)最小堆棧尺寸,注意128不是128字節(jié),而是128個入棧。比如ARM32位,128個入棧就是512字節(jié) */ 
      #define configMINIMAL_STACK_SIZE            128 
       
      /* 系統(tǒng)可用內(nèi)存。一般設(shè)成除了操作系統(tǒng)和你的程序所用RAM外的最大RAM。 比如20KRAM你用了2K,系統(tǒng)用了3K,剩下15就是最大HEAP 尺寸。你可以先設(shè)小然后看編譯結(jié)果往大里加*/
      #define configTOTAL_HEAP_SIZE                       10240
       
      /* 任務(wù)的PC名字最大長度,因為函數(shù)名編譯完了就不見了,所以追蹤時不知道哪個名字。16表示16個char */
      #define configMAX_TASK_NAME_LEN             16
       
      /* 是否設(shè)定成追蹤,由PC端TraceCon.exe記錄,也可以轉(zhuǎn)到系統(tǒng)顯示屏上 */
      #define configUSE_TRACE_FACILITY                  0
       
      /* 就是SYSTEM TICK的長度,16是16位,如果是16位以下CPU, 一般選1;如果是32位系統(tǒng),一般選0 */
      #define configUSE_16_BIT_TICKS                          0
       
      /* 簡單理解以下就是和IDLE TASK同樣優(yōu)先級的任務(wù)執(zhí)行情況。建議設(shè)成1,對系統(tǒng)影響不大 */
      #define configIDLE_SHOULD_YIELD                     1
       
      /* 是否用MUTEXES。 MUTEXES是任務(wù)間通訊的一種方式,特別是用于任務(wù)共享資源的應(yīng)用,比如打印機,任務(wù)A用的時候就排斥別的任務(wù)應(yīng)用,用完了別的任務(wù)才可以應(yīng)用 */
      #define configUSE_MUTEXES                                     0  
       
      /*  確定是否用遞歸式的MUTEXES */
      #define configUSE_RECURSIVE_MUTEXES              0
       
      /* 是否用計數(shù)式的SEMAPHORES,SEMAPHORES也是任務(wù)間通訊的一種方式 */
      #define configUSE_COUNTING_SEMAPHORES       0
       
      /* 是否應(yīng)用可切換式的API。freeRTOS 同一功能API有多個,有全功能但是需求資源和時間較多的,此項使能后就可以用較簡單的API, 節(jié)省資源和時間,但是應(yīng)用限制較多 */
      #define configUSE_ALTERNATIVE_API                       0 
       
       
       /* 此項用于DEBUG,來看是否有棧溢出,需要你自己編相應(yīng)檢查函數(shù)void vApplicationStackOverflowHook(xTaskHandle *pxTask, signed portCHAR *pcTaskName )  */
      #define configCHECK_FOR_STACK_OVERFLOW      0
      /* 用于DEBUG,登記SEMAPHORESQ和QUEUE的最大個數(shù),需要在任務(wù)用應(yīng)用函數(shù)vQueueAddToRegistry()和vQueueUnregisterQueue()  */
      #define configQUEUE_REGISTRY_SIZE                        10 
       /* 設(shè)定可以改變?nèi)蝿?wù)優(yōu)先度 */
       #define INCLUDE_vTaskPrioritySet                               1
       
       /* 設(shè)定可以查詢?nèi)蝿?wù)優(yōu)先度 */
      #define INCLUDE_uxTaskPriorityGet                              1
       
       /* 設(shè)定可以刪除任務(wù) */
       #define INCLUDE_vTaskDelete                                       1    
       
      /* 據(jù)說是可以回收刪除任務(wù)后的資源(RAM等)*/
       #define INCLUDE_vTaskCleanUpResources                 0 
       
      /* 設(shè)置可以把任務(wù)掛起 */
      #define INCLUDE_vTaskSuspend                                     1 
      /* 設(shè)置可以從中斷恢復(fù)(比如系統(tǒng)睡眠,由中斷喚醒 */
      #define INCLUDE_vResumeFromISR                                1 
       
       /* 設(shè)置任務(wù)延遲的絕對時間,比如現(xiàn)在4:30,延遲到5:00。時間都是絕對時間 */
      #define INCLUDE_vTaskDelayUntil                                  1 
       
       /* 設(shè)置任務(wù)延時,比如延遲30分鐘,相對的時間,現(xiàn)在什么時間,不需要知道 */
      #define INCLUDE_vTaskDelay                                           1  
       
      /* 設(shè)置 取得當前任務(wù)分配器的狀態(tài) */
      #define INCLUDE_xTaskGetSchedulerState                      1
       
      /* 設(shè)置當前任務(wù)是由哪個任務(wù)開啟的 */
      #define INCLUDE_xTaskGetCurrentTaskHandle              1 
       
      /* 是否使能這一函數(shù),還數(shù)的目的是返回任務(wù)執(zhí)行后任務(wù)堆棧的最小未用數(shù)量,同樣是為防止堆棧溢出 */
      #define INCLUDE_uxTaskGetStackHighWaterMark       0 
      /* 是用用協(xié)程。協(xié)程公用堆棧,節(jié)省RAM,但是沒有任務(wù)優(yōu)先級高,也無法和任務(wù)通訊 */
      #define configUSE_CO_ROUTINES                                   0   
       
       /* 所有協(xié)程的最大優(yōu)先級數(shù),協(xié)程優(yōu)先級永遠低于任務(wù)。就是系統(tǒng)先執(zhí)行任務(wù),所有任務(wù)執(zhí)行完了才執(zhí)行協(xié)程。*/
      #define configMAX_CO_ROUTINE_PRIORITIES          1 
       
      /*  系統(tǒng)內(nèi)核的中斷優(yōu)先級,中斷優(yōu)先級越低,越不會影響其他中斷。一般設(shè)成最低 */
      #define configKERNEL_INTERRUPT_PRIORITY            [dependent of processor] 
       
      /* 系統(tǒng)SVC中斷優(yōu)先級,這兩項都在在M3和PIC32上應(yīng)用 */
      #define configMAX_SYSCALL_INTERRUPT_PRIORITY  [dependent on processor and application] 
      #endif /* FREERTOS_CONFIG_H */
      一般來說,如果用不上的功能都要設(shè)成0,可以減少代碼和資源。

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多