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

          新聞中心

          STM32 SYSTICK

          作者: 時間:2016-11-24 來源:網(wǎng)絡(luò) 收藏
          voidSysTick_Config(void);//SysTick定時器配置

          voidDelay_Ms(u32);//定時時間配置
          voidvoidSysTickHandler(void);//中斷定時時間處理函數(shù)
          staticvu32TimingDelay;//中斷處理函數(shù)

          本文引用地址:http://www.ex-cimer.com/article/201611/321060.htm


          //SysTick設(shè)置
          voidSysTick_Config(void)
          {

          SysTick_CounterCmd(SysTick_Counter_Disable);


          SysTick_ITConfig(DISABLE);


          SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8);


          SysTick_SetReload(9000);
          //系統(tǒng)嘀嗒校準值固定到9000,當系統(tǒng)嘀嗒時鐘設(shè)定為9兆赫,產(chǎn)生1ms時基。



          SysTick_ITConfig(ENABLE);


          }


          voidDelay_Ms(u32nTime)
          {

          SysTick_CounterCmd(SysTick_Counter_Enable);

          TimingDelay=nTime;

          while(TimingDelay!=0)
          {
          }


          SysTick_CounterCmd(SysTick_Counter_Disable);

          SysTick_CounterCmd(SysTick_Counter_Clear);

          }


          voidSysTickHandler(void)
          {
          if(TimingDelay!=0x00)
          {
          TimingDelay--;
          }
          }
          這里所有使用的都是在有stm32f10x_systick.c這個文件的時候,這個是2.0中才有的文件,3.0中使用并不是這樣使用的@!

          在這里說明一下的是,必須要注意,systick和普通的中斷一樣,當計數(shù)器溢出時就會產(chǎn)生中斷,必須要再中斷處理函數(shù)中處理,但是沒有經(jīng)過NVIC的控制,這個是需要注意的,沒有使用NVIC配置systick。

          其中systick異常,異常號15,這個定時的異常的主要功能用于操作系統(tǒng)提供時鐘信號。

          但是當產(chǎn)生恒定的systick中斷頻率:最簡單的作法就是:直接把TENMS的值寫入重裝載寄存器,這樣一來,只要沒突破系統(tǒng)極限,就能做到每10ms來一次systick異常,如果需要其他的systick異常周期,則可以根據(jù)TENMS的值加以比例計算,只不過,在少數(shù)情況下,CM3芯片可能無法準確地提供TENMS的值(如,CM3的叫轉(zhuǎn)輸入信號被拉低)。

          Systick定時器除了能服務(wù)于操作系統(tǒng)之外,還能用于其他目的:如作為一個鬧鐘,用于測量時間等。要注意的是,當處理器在調(diào)試器件被喊停hatl時,則systick定時器亦將暫停運作。



          關(guān)鍵詞: STM32SYSTIC

          評論


          技術(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); })();