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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32學(xué)習(xí)筆記——使用SysTick定時(shí)器做延時(shí)

          STM32學(xué)習(xí)筆記——使用SysTick定時(shí)器做延時(shí)

          作者: 時(shí)間:2016-11-28 來源:網(wǎng)絡(luò) 收藏

          lSystick當(dāng)前值寄存器(SysTick_VAL)

          lSysTick校準(zhǔn)值寄存器(SysTick_CALIB)

          各寄存器示意圖:

          2.SysTick函數(shù)

          3.0版以后的STM32固件庫在標(biāo)準(zhǔn)外設(shè)庫中移除了SysTick的驅(qū)動(dòng),因此用戶必須調(diào)用CMSIS定義的函數(shù)。

          CMSIS只提供了一個(gè)SysTick設(shè)置的函數(shù),替代了STM32原有SysTick驅(qū)動(dòng)的全部函數(shù)。

          [cpp]view plaincopy
          1. SysTick_Config(uint32_tticks);

          該函數(shù)設(shè)置了自動(dòng)重載入計(jì)數(shù)器(LOAD)的值,SysTick IRQ的優(yōu)先級(jí),復(fù)位了計(jì)數(shù)器(VAL)的值,開始計(jì)數(shù)并打開SysTick IRQ中斷。SysTick時(shí)鐘默認(rèn)使用系統(tǒng)時(shí)鐘。

          此外,還可以使用SysTick_CLKSourceConfig函數(shù)來改變時(shí)鐘源,使用NVIC_SetPriority設(shè)置中斷優(yōu)先級(jí)(往后再深入)。

          SysTick_CLKSourceConfig函數(shù)

          函數(shù)名

          SysTick_CLKSourceConfig

          函數(shù)原型

          SysTick_CLKSourceConfig(u32 SysTick_CLKSource)

          行為描述

          配置SysTick的時(shí)鐘源

          輸入?yún)?shù)

          SysTick_CLKSource:SysTick的時(shí)鐘源

          輸出參數(shù)

          返回值

          前提條件

          調(diào)用函數(shù)

          SysTick_CLKSource允許值

          SysTick_CLKSource

          描述

          SysTick_CLKSource_HCLK_Div8

          SysTick時(shí)鐘源為AHB時(shí)鐘的1/8

          SysTick_CLKSource_HCLK

          SysTick時(shí)鐘源為AHB時(shí)鐘



          關(guān)鍵詞: STM32SysTick定時(shí)

          評(píng)論


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