最近在线字幕国语视频_videosex久久麻豆_韩国美女豪爽一级毛片_日本另类αv欧美另类aⅴ

24小時聯系電話:18217114652、13661815404

中文

您當前的位置:
首頁>
電子資訊>
技術專題>
有關于UCOSIII無法進...

技術專題

有關于UCOSIII無法進入軟件計時器的某些函數且不報錯的情況


發生這種情況的原因是由于定義的ucosiii自帶的軟件單次計時器錯誤的時間設置導致的,如下所示:

圖中有兩個OS_TICK類型,單次計時器的定時時間應設置在第一個OS_TICK上。上面的是初始定時時間設置,可用于單次計時器周期計時器中;下面的是重裝載時間設置,用于僅周期定時器中。(之后在周期定時器的設置時將兩個參數都設置為0也無法正確觸發)

//錯誤代碼OSTmrCreate((OS_TMR *)&tmra_20s, //定時器tmra_20s

            (CPU_CHAR *)"tmra_20s", //定時器名字

            (OS_TICK )0, //0ms

            (OS_TICK )200,            //2000*10=20000ms=20s

            (OS_OPT )OS_OPT_TMR_ONE_SHOT,  //單次定時器

            (OS_TMR_CALLBACK_PTR)tmra_20s_callback,//定時器回調函數

            (void    *)0, //參數為0

            (OS_ERR    *)&err); //返回的錯誤碼//正確代碼OSTmrCreate((OS_TMR *)&tmra_20s, //定時器tmra_20s

            (CPU_CHAR *)"tmra_20s", //定時器名字

            (OS_TICK )200,               //2000*10=20000ms=20s

            (OS_TICK )0, //0ms

            (OS_OPT )OS_OPT_TMR_ONE_SHOT,  //單次定時器

            (OS_TMR_CALLBACK_PTR)tmra_20s_callback,//定時器回調函數

            (void    *)0, //參數為0

            (OS_ERR    *)&err); //返回的錯誤碼

以下是源代碼中關于ucosiii軟件計時器的描述。

*************************************************************************************************************************                                                   CREATE A TIMER** Description: This function is called by your application code to create a timer.** Arguments  : p_tmr           Is a pointer to a timer control block**              p_name          Is a pointer to an ASCII string that is used to name the timer.  Names are useful for*                              debugging.**              dly             Initial delay.*                              If the timer is configured for ONE-SHOT mode, this is the timeout used*                              If the timer is configured for PERIODIC mode, this is the first timeout to wait for*                              before the timer starts entering periodic mode**              period          The 'period' being repeated for the timer.*                              If you specified 'OS_OPT_TMR_PERIODIC' as an option, when the timer expires, it will*                              automatically restart with the same period.**              opt             Specifies either:**                                  OS_OPT_TMR_ONE_SHOT       The timer counts down only once*                                  OS_OPT_TMR_PERIODIC       The timer counts down and then reloads itself**              p_callback      Is a pointer to a callback function that will be called when the timer expires.  The*                              callback function must be declared as follows:**                                  void  MyCallback (OS_TMR *p_tmr, void *p_arg);**              p_callback_arg  Is an argument (a pointer) that is passed to the callback function when it is called.**              p_err           Is a pointer to an error code.  '*p_err' will contain one of the following:**                                 OS_ERR_NONE*                                 OS_ERR_ILLEGAL_CREATE_RUN_TIME if you are trying to create the timer after you called*                                                                  OSSafetyCriticalStart().*                                 OS_ERR_OBJ_CREATED             if the timer has already been created*                                 OS_ERR_OBJ_PTR_NULL            is 'p_tmr' is a NULL pointer*                                 OS_ERR_OBJ_TYPE                if the object type is invalid*                                 OS_ERR_OPT_INVALID             you specified an invalid option*                                 OS_ERR_TMR_INVALID_DLY         you specified an invalid delay*                                 OS_ERR_TMR_INVALID_PERIOD      you specified an invalid period*                                 OS_ERR_TMR_ISR                 if the call was made from an ISR** Returns    : none** Note(s)    : 1) This function only creates the timer.  In other words, the timer is not started when created.  To*                 start the timer, call OSTmrStart().************************************************************************************************************************

如果還有疑問可以參考詳細的關于定時器用法的中文描述:
UCOSIII軟件計時器的使用

2.有關于UCOSIII同一計時器的不同line的pwm輸出不能共存的情況

發生這種情況的原因是由于定義初始化函數時加入了TIM_DeInit()函數導致的,如下所示:

GPIO_InitTypeDef GPIO_InitStructure;

TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;

TIM_OCInitTypeDef TIM_OCInitStructure;


TIM_DeInit(TIM4);//把TIM4的設置清空


RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE); 

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); 


//設置該引腳為復用輸出功能,輸出TIM4,CH3的PWM脈沖波形

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; 

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOB, &GPIO_InitStructure); 

TIM_TimeBaseStructure.TIM_Period = arr; //設置在下一個更新事件裝入活動的自動重裝載寄存器周期

TIM_TimeBaseStructure.TIM_Prescaler =psc; //設置用來作為TIMx時鐘頻率除數的預分頻值

TIM_TimeBaseStructure.TIM_ClockDivision = 0; 

TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //TIM向上計數模式

TIM_TimeBaseInit(TIM4, &TIM_TimeBaseStructure); 

TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; //PWM模式1

TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //比較輸出使能

TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;//輸出極性:TIM輸出比較極性高

TIM_OC3Init(TIM4, &TIM_OCInitStructure); //初始化外設TIM4

TIM_OC3PreloadConfig(TIM4, TIM_OCPreload_Enable);//CH3預裝載使能

TIM_Cmd(TIM4, ENABLE); //使能TIM3

TIM_SetCompare3(TIM4, 0);*****************以下為部分TIM_DeInit()函數代碼**********************************void TIM_DeInit(TIM_TypeDef* TIMx){

  /* Check the parameters */

  assert_param(IS_TIM_ALL_PERIPH(TIMx)); 

 

  if (TIMx == TIM1)

  {

    RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM1, ENABLE);

    RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM1, DISABLE);  

  }     

TIM_DeInit(TIM4)初始化其他初始化函數中對于TIM4的設置清空,導致我們設置的其他通道的PWM設置被清空,因此無法在TIM4中輸出2個PWM信號。

經過此次問題,我明白了每一個函數都要好好看清楚具體的功能作用,不能一抄了之,寫初始化函數的時候需要保證每一句都明白它的功能作用,不然會在后續的調試過程中產生隱患。

 

請輸入搜索關鍵字

確定
最近在线字幕国语视频_videosex久久麻豆_韩国美女豪爽一级毛片_日本另类αv欧美另类aⅴ
<strike id="0k9r3"><p id="0k9r3"></p></strike>
  • <form id="0k9r3"></form>
    <nav id="0k9r3"></nav>
    <em id="0k9r3"><p id="0k9r3"></p></em>
  • <tr id="0k9r3"><source id="0k9r3"></source></tr>
    <form id="0k9r3"></form>
    <sub id="0k9r3"></sub>

      <sub id="0k9r3"><address id="0k9r3"></address></sub>
      1. <form id="0k9r3"></form>
        国产一区二区三区在线观看精品| 欧美日韩成人网| 久久久久久亚洲精品中文字幕| 国产精品尤物| 国产一区二区三区黄视频| 亚洲自拍偷拍一区| 夜夜爽夜夜爽精品视频| 久久精品一区| 亚洲在线免费视频| 久久婷婷国产综合尤物精品| 91久久久久| 艳女tv在线观看国产一区| 国产欧美日韩综合| 国产亚洲高清视频| 夜夜爽www精品| 欧美日韩一区二区在线观看视频| 午夜久久久久久久久久一区二区| 中文av一区特黄| 欧美日韩国产综合新一区| 国产精品爱啪在线线免费观看| 国产精品区一区二区三区| 欧美日韩1区2区3区| 亚洲女性喷水在线观看一区| 在线播放日韩专区| 美女91精品| 亚洲激情网址| 日韩视频在线一区二区| 嫩草成人www欧美| 国产主播一区二区三区| 久久国产欧美日韩精品| 亚洲精品一区二区三区av| 欧美午夜在线| 欧美日韩精品免费观看视一区二区| 亚洲欧美国产精品桃花| 国产欧美日韩视频一区二区| 欧美与黑人午夜性猛交久久久| 欧美亚洲在线播放| 欧美精品一区二区高清在线观看| 免播放器亚洲一区| 久久久国产精品亚洲一区| 欧美与黑人午夜性猛交久久久| 亚洲婷婷综合色高清在线| 亚洲精品一区二区三区四区高清| 国产精品美女一区二区在线观看| 欧美亚洲在线| 国产日韩av一区二区| 一区在线免费观看| 久久九九热免费视频| 久久久久久久久久看片| 亚洲一区免费| 久久久久久久综合| 一区二区三区波多野结衣在线观看| 美玉足脚交一区二区三区图片| 国产精品网站一区| 亚洲私人影院在线观看| 久久精品人人做人人爽| 国产欧美精品日韩精品| 99re亚洲国产精品| 久久久国产一区二区三区| 久久免费视频一区| 欧美成人一区二免费视频软件| 国产日韩在线看| 久久九九国产| 欧美色视频日本高清在线观看| 亚洲成色999久久网站| 国产精品入口夜色视频大尺度| 欧美午夜电影网| 在线成人激情视频| 欧美三级黄美女| 久久国产精品99国产精| 一区二区三区免费网站| 国产一区二区按摩在线观看| 欧美午夜电影在线观看| 国产一区二区三区免费在线观看| 欧美在线免费观看亚洲| 亚洲亚洲精品三区日韩精品在线视频| 国产日韩在线播放| 欧美三区在线视频| 可以看av的网站久久看| 在线一区二区三区做爰视频网站| 在线观看91久久久久久| 欧美激情一区二区三区在线视频| 欧美专区在线观看一区| 国产亚洲欧美一区二区三区| 亚洲永久字幕| 亚洲福利视频专区| 亚洲午夜激情网站| 国产精品亚洲成人| 亚洲影视九九影院在线观看| 亚洲大胆人体在线| 香蕉久久国产| 国产精品扒开腿爽爽爽视频| 欧美午夜精品伦理| 极品裸体白嫩激情啪啪国产精品| 久久精品日产第一区二区| 欧美日韩在线播| 欧美系列一区| 日韩视频免费在线观看| 久久在线精品| 午夜在线观看免费一区| 国产在线观看一区| 欧美大片国产精品| 很黄很黄激情成人| 欧美视频中文在线看| 国内免费精品永久在线视频| 欧美激情一区二区在线| 久久久青草青青国产亚洲免观| 久久精品国产精品亚洲精品| 一区二区不卡在线视频 午夜欧美不卡在| 欧美韩国在线| 欧美日韩一区二区免费在线观看| 欧美一区二区私人影院日本| 欧美成人视屏| 能在线观看的日韩av| 快播亚洲色图| 麻豆精品视频在线观看| 欧美香蕉视频| 亚洲欧美中文字幕| 欧美视频中文字幕在线| 国产精品扒开腿做爽爽爽软件| 日韩一级裸体免费视频| 久久久久se| 欧美激情黄色片| 欧美色网一区二区| 国产免费一区二区三区香蕉精| 欧美日韩在线视频一区二区| 久久久久久久一区二区| 国产嫩草影院久久久久| 老司机一区二区三区| 欧美电影在线免费观看网站| 国产一区二区在线免费观看| 亚洲免费高清视频| 国产精品护士白丝一区av| 欧美成年人视频| 久久艳片www.17c.com| 欧美影院午夜播放| 一本色道久久加勒比精品| 欧美性久久久| 一区二区av| 亚洲自拍偷拍福利| 久久伊伊香蕉| 一区二区三区欧美亚洲| 亚洲天堂av在线免费| 禁久久精品乱码| 国产精品入口麻豆原神| 亚洲福利视频网| 好看的av在线不卡观看| 亚洲精品国产精品久久清纯直播| 亚洲一区二区三区成人在线视频精品| 国产综合色产| 欧美人成网站| 国产伦精品一区二区三区高清版| 国产精品美女久久久久aⅴ国产馆| 亚洲国产成人久久综合一区| 狠狠爱综合网| 欧美福利电影在线观看| 国产字幕视频一区二区| 欧美日韩在线综合| 久久成人免费日本黄色| 狠狠v欧美v日韩v亚洲ⅴ| 久久野战av| 99这里只有精品| 久久精品欧美日韩精品| 国产日韩精品一区二区三区|