<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    鷹空獨舞
    邁著慵懶的步子,走在成長路上..... Dead
    posts - 4,comments - 1,trackbacks - 0
         摘要: 在STM32的固件庫和提供的例程中,到處都可以見到assert_param()的使用。如果打開任何一個例程中的stm32f10x_conf.h文件,就可以看到實際上assert_param是一個宏定義;  閱讀全文
    posted @ 2012-05-31 16:53 鷹空獨舞 閱讀(23918) | 評論 (1)編輯 收藏

    OSTaskCreate()
    函數原型:INT8U OSTaskCreate(void(*task)(void *pd),void *pdata,OS_STK *ptos,INT8U prio)
    調用者:任務或者是初始化代碼。
    作用:建立一個新任務,任務的建立可以在多個任務環境啟動之前,也可以在正在運行的任務中建立,中斷處理程序中不能建立任務,一個任務必須為無限循環結構,且不能有返回點。無論用戶程序中是否產生中斷,在初始化任務堆棧時,堆棧的結構必須與處理器中斷后寄存器入棧的順序結構相同。

    該函數返回一個8位的整形數,調用該函數需要四個參數:
    a 第一個參數:task是一個指向任務代碼的指針,也就是用戶代碼的首地址,平常使用中我們把自己創建的任務的名字作為這個參數即可。
    b 第二個參數:pdata指向一個數據結構,該結構用來在建立任務時向任務傳遞參數。
    c 第三個參數:ptos是指向任務堆棧棧頂的指針,一般把創建的任務的堆棧數組首地址賦給它。
    任務堆棧用來保存局部變量,函數參數,返回地址以及任務被中斷時處理器寄存器的內容,任務堆棧的大小決定于任務的需要以及預計的中斷嵌套層數。計算堆棧的大小需要知道任務的局部變量所占的空間,可能產生嵌套調用的函數,及中斷嵌套所需的空間,如果初始化常量OS_STK_GROWTH設為1,堆棧被設為從內存高地址向低地址增長,此時ptos應該指向任務堆棧空間的最高地址,反之,如果OS_STK_GROWTH設為0,堆棧將從內存的低地址向高地址增長。
    d 第四個參數:prio是任務的優先級。每個任務必須有一個唯一的優先級作為標識,數字越小,優先級越高。

    返回值:
    OSTaskCreate()的返回值為下述之一:
    # OS_NO_ERR: 函數調用成功。
    # OS_PRIO_EXIST:具有該優先級的任務已經存在。
    # OS_PRIO_INVALID: 參數指定的優先級大于OS_LOWEST_PRIO
    # OS_NO_MORE_TCB: 系統中沒有OS_TCB可以分配給任務了。

    注意:
    1 任何堆棧必須聲明為OS_STK類型。
    2 在任務中必須調用uCOS提供的下述過程之一:延時等待,任務掛起,等待事件發生(等待信號量,消息郵箱,消息隊列),以便其他任務能得到cpu。
    3 程序中不能使用優先級0,1,2,3,以及OS_LOWEST_PRIO-3,OS_LOWEST_PRIO-2,OS_LOWEST_PRIO-1,

    OS_LOWEST_PRIO,這些優先級系統保留,其余的56個優先級提供給應用程序。

    范例:
    本例中,傳遞給任務Task1()的參數pdata不使用,所以指針pdata被設為NULLL,注意到程序中設定堆棧向低地址增長,傳遞的棧頂指針為高地址&Task1[1023],如果在你的程序中設定堆棧向高地址增長,則傳遞的棧頂指針應該為&Task1Stk[0]。
    OS_STK Task1Stk[1024];
    void main(void)
    {
    NT8U err;
       ...
    OSInit();//初始化uCOS-II
    ....
    OSTaskCreate(Task1,(void *)0,&Task1Stk[1023],25);
    ...
    OSStart();//啟動多任務環境
    }

    void Task1(void *pdata)
    {
    pdata=pdata;
    for(;;)
    {
    ......   //任務代碼
    }

    }

    posted @ 2012-05-31 16:23 鷹空獨舞 閱讀(499) | 評論 (0)編輯 收藏
    主站蜘蛛池模板: 久久亚洲国产精品| 黄页视频在线观看免费| 免费阿v网站在线观看g| 亚洲人成自拍网站在线观看| 午夜亚洲福利在线老司机| 中文在线免费观看| 亚洲日本国产综合高清| 精品国产亚洲男女在线线电影 | 亚洲av日韩综合一区久热| 久久精品亚洲乱码伦伦中文| 95免费观看体验区视频| 国产亚洲精品免费| 久久亚洲sm情趣捆绑调教 | 国产国拍亚洲精品mv在线观看| 精品香蕉在线观看免费| 国产黄片不卡免费| 亚洲91精品麻豆国产系列在线| 久久综合亚洲色HEZYO国产| av无码久久久久不卡免费网站| sss在线观看免费高清| 97久久国产亚洲精品超碰热| 亚洲高清国产拍精品26U| 永久免费无码网站在线观看| 久久久久久AV无码免费网站| 黄色a三级免费看| 亚洲 欧洲 日韩 综合在线| 亚洲AV无码成人精品区蜜桃| 凹凸精品视频分类国产品免费| 精品熟女少妇av免费久久| 国产久爱免费精品视频| 亚洲第一综合天堂另类专| 日韩精品亚洲人成在线观看| 中文字幕精品亚洲无线码二区 | 亚洲成a人片在线观看久| www.999精品视频观看免费| 日本人成在线视频免费播放| www免费黄色网| 美女视频黄频a免费| 亚洲sm另类一区二区三区| 亚洲一区欧洲一区| 久久国产亚洲高清观看|