<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > STM32開發(fā)板學(xué)習(xí)筆記--通用定時器

          STM32開發(fā)板學(xué)習(xí)筆記--通用定時器

          作者: 時間:2016-11-28 來源:網(wǎng)絡(luò) 收藏
          定時器可以說是單片機最常用的內(nèi)部資源,連續(xù)幾天都在看STM32定時器的使用方法,看固件庫使用手冊看的頭都大了,總算學(xué)會了基本的應(yīng)用。

          1、首先在void NVIC_Configuration(void)中開啟中斷:

          NVIC_DeInit();
          NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
          NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQChannel;
          NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;
          NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
          NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
          NVIC_Init(&NVIC_InitStructure);

          2、初始化定時器

          void TIM_Configuration(void)
          {
          TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;

          TIM_DeInit(TIM2);//復(fù)位TIM2定時器


          TIM_TimeBaseStructure.TIM_Period = 1000;//定時1毫秒
          TIM_TimeBaseStructure.TIM_Prescaler = 71;//分頻
          TIM_TimeBaseStructure.TIM_ClockDivision = 0;//TIM_CKD_DIV1; ; // 時鐘分割
          TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;//計數(shù)方向向上計數(shù)
          TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);


          TIM_ClearFlag(TIM2, TIM_FLAG_Update);


          TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE);


          TIM_Cmd(TIM2, ENABLE);
          }

          這樣每隔1ms就中斷一次

          中斷程序?qū)懺?“stm32f10x_it.c”的 void TIM2_IRQHandler(void) 中。

          在中斷服務(wù)程序中的末尾一定要加上
          TIM_ClearITPendingBit(TIM2,TIM_FLAG_Update);//一定要加上這句,清除TIM2 的中斷待處理位


          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();