在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            stm32學習之四

            作者: 時間:2016-12-03 來源:網(wǎng)絡(luò) 收藏
            systick(滴答定時器):

            系統(tǒng)的滴答定時器可以測試的例子是,將開發(fā)板上的LED等輪流點亮即可(我選擇的是1s輪流點亮三個LED等)。
            首先,系統(tǒng)滴答定時器的特點是,設(shè)置開啟定時器的話,會自動計數(shù),這個時候,計數(shù)到0的時候,會觸發(fā)中斷。
            可以設(shè)置一個靜態(tài)的變量,全局進行計數(shù),從而延時。

            步驟:
            1、建立一個SysTick.h文件,代碼如下:
            #ifndef _SYSTICK_H
            #define _SYSTICK_H

            本文引用地址:http://www.biyoush.com/article/201612/325174.htm

            #include "stm32f10x.h"
            void SysTick_Init(void);

            //void timeDecrement(void);

            void delay(__IO uint32_t count);

            #endif
            2、建立一個SysTick.c文件,代碼如下:
            #include "SysTick.h"
            static __IO uint32_t timeCount;

            void SysTick_Init(void)
            {
            if(SysTick_Config(SystemCoreClock/1000))//配置1ms的中斷
            {
            while(1);
            }
            SysTick->CTRL &= ~SysTick_CTRL_ENABLE_Msk;
            }

            void delay(__IO uint32_t count)
            {
            timeCount = count;
            SysTick->CTRL |= SysTick_CTRL_ENABLE_Msk;
            while(timeCount!=0);
            }

            void timeDecrement(void)
            {
            if(timeCount!=0x00)
            {
            timeCount--;
            }
            }

            3、中斷產(chǎn)生后,會執(zhí)行stm32f10x_it.c文件:
            會自動執(zhí)行這個函數(shù):
            SysTick_Handler()
            那么在函數(shù)內(nèi)部進行處理函數(shù):
            void SysTick_Handler(void)
            {
            timeDecrement();
            }

            4、LED的操作不變:
            led.c文件:
            #include "led.h"
            void LED_GPIO_Config(void)
            {
            GPIO_InitTypeDef GPIO_InitStructure;
            RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);

            GPIO_InitStructure.GPIO_Pin=GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5;
            GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_OD;
            GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

            GPIO_Init(GPIOC,&GPIO_InitStructure);

            GPIO_SetBits(GPIOC,GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5);
            }
            led.h文件:
            #ifndef _LED_H
            #define _LED_H
            #include "stm32f10x.h"

            #define ON 1
            #define OFF 0

            #define LED1(a) if (a)
            GPIO_ResetBits(GPIOC,GPIO_Pin_3);
            else
            GPIO_SetBits(GPIOC,GPIO_Pin_3)
            #define LED2(a) if (a)
            GPIO_ResetBits(GPIOC,GPIO_Pin_4);
            else
            GPIO_SetBits(GPIOC,GPIO_Pin_4)
            #define LED3(a) if (a)
            GPIO_ResetBits(GPIOC,GPIO_Pin_5);
            else
            GPIO_SetBits(GPIOC,GPIO_Pin_5)
            void LED_GPIO_Config(void);


            #endif

            主函數(shù)如下:
            /******************** (C) COPYRIGHT 2013**************************
            * 文件名 :main.c
            * 描述 :用3.5.0版本建的工程模板。
            * 實驗平臺:野火STM32開發(fā)板
            * 庫版本 :ST3.5.0
            *
            * 作者 :wit_yuan
            * 版本 : v1.0
            * 時間 : 2013年4月27日
            **********************************************************************************/
            #include "stm32f10x.h"
            #include "led.h"
            #include "SysTick.h"

            /*
            * 函數(shù)名:main
            * 描述 : 主函數(shù)
            * 輸入 :無
            * 輸出 : 無
            */
            int main(void)
            {
            LED_GPIO_Config();
            SysTick_Init();
            while(1)
            {
            LED1(ON);
            delay(1000);
            LED1(OFF);
            delay(1000);
            LED2(ON);
            delay(1000);
            LED2(OFF);
            delay(1000);
            LED3(ON);
            delay(1000);
            LED3(OFF);
            delay(1000);


            }

            }

            整個實驗過程完畢。



            關(guān)鍵詞: STM32systic

            評論


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

            關(guān)閉