新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 【STM32 Cotex-M3處理器系列編程】定時器燈亮

        【STM32 Cotex-M3處理器系列編程】定時器燈亮

        作者: 時間:2016-11-27 來源:網絡 收藏
        //定時一秒LED
        #include "stm32f10x.h"
        unsigned int TimingDelay;
        void Delay(unsigned int x)
        {
        TimingDelay=x;
        while(TimingDelay--);
        }
        void TIM3_IRQHandler(void)
        {
        if(TIM_GetITStatus(TIM2,TIM_IT_Update) != RESET)//檢查中斷溢出標志位
        {
        TIM_ClearITPendingBit(TIM2,TIM_IT_Update);//清中斷溢出標志位
        GPIO_SetBits(GPIOC, GPIO_Pin_7);
        }
        }
        int main(void)
        {
        SystemInit();
        //配置IO口
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE,ENABLE);//IO口使能設置
        GPIO_InitTypeDef GPIO_InitStructure; //定義結構體
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_Init(GPIOC, &GPIO_InitStructure);
        //設置定時器2
        TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
        RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);//打開TIM2外設時鐘
        TIM_TimeBaseStructure.TIM_Period = 10000;//1s
        TIM_TimeBaseStructure.TIM_Prescaler = 7199;//7200分頻
        TIM_TimeBaseStructure.TIM_ClockDivision = 0;//設置時鐘分割
        TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;//設置計數方式為向上計數
        TIM_TimeBaseInit(TIM2,&TIM_TimeBaseStructure);//初始化定時器2
        TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE);//打開定時器2中斷
        TIM_Cmd(TIM2,ENABLE);//使能定時器
        //使能TIM2中斷
        NVIC_InitTypeDef NVIC_InitStructure;
        NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;//選擇TIM2全局中斷
        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;
        NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
        NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
        NVIC_Init(&NVIC_InitStructure);
        while(1);
        }
        //以下是報錯函數
        #ifdef USE_FULL_ASSERT
        void assert_failed(uint8_t* file, uint32_t line)
        {
        while (1)
        {
        }
        }
        #endif


        關鍵詞: STM32Cotex-M3定時

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 诸城市| 南安市| 阳山县| 昆山市| 开平市| 武城县| 香河县| 布拖县| 南通市| 云南省| 博爱县| 渭源县| 汾阳市| 建水县| 榆中县| 来安县| 湖北省| 九龙县| 赫章县| 林芝县| 延长县| 行唐县| 沧源| 汉中市| 阳江市| 新干县| 淮安市| 成安县| 台江县| 广饶县| 苏尼特左旗| 石台县| 乐亭县| 平舆县| 深州市| 庆云县| 吴旗县| 依兰县| 水富县| 塘沽区| 子长县|