色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

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

          STM32學(xué)習(xí)筆記之SysTick

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



          本文引用地址:http://cafeforensic.com/article/201611/321703.htm


          #define SYSTICK_COUNTFLAG 16

          //初始化延遲函數(shù)
          void delay_init(void)
          {
          uint32_t ticks;

          ticks = SystemFrequency/1000;
          if (ticks > SYSTICK_MAXCOUNT)while (1);


          SysTick->LOAD=(ticks & SYSTICK_MAXCOUNT) - 1;
          NVIC_SetPriority (SysTick_IRQn, (1<<__NVIC_PRIO_BITS) - 1);
          SysTick->VAL=(0x00);
          SysTick->CTRL = (1 << SYSTICK_CLKSOURCE);//選擇內(nèi)核時(shí)鐘
          }

          //ms延時(shí)
          void delay_nms(__IO uint32_t nms)
          {
          u32 temp;

          if(nms == 0)return;
          SysTick->VAL = 0x00;//清空計(jì)數(shù)器

          SysTick->CTRL |= (1 << SYSTICK_ENABLE);

          while(nms--)
          {
          do
          {
          temp=SysTick->CTRL;
          }
          while(temp&0x01&&!(temp&(1<<16)));//等待時(shí)間到達(dá)
          }


          SysTick->CTRL &= ~(1 << SYSTICK_ENABLE);
          SysTick->VAL =0X00;//清空計(jì)數(shù)器
          }



          評論


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

          關(guān)閉