久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1104|回復: 0
收起左側

STM32單片機嘀嗒定時器主程序

[復制鏈接]
ID:1061970 發表于 2023-2-10 22:02 | 顯示全部樓層 |閱讀模式
#include "stm32f10x.h"
#include "led.h"
#include  "tim.h"

u32  TimingDelay;        
ErrorStatus   HSEStartUpStatus;                                  // 變量定義

void SysTick_Init(void);
void Delay_ms(__IO u32 nCount);        

int main(void)
{        
        GPIO_Configuration();         //配置GPIO
  SysTick_Init();
        EXTI_Configuration();                                //配置EXTI
  NVIC_Configuration();                                //配置NVIC
  TIM_Configuration();  
        while (1)        ;                                               //無限循環
   
        
}




/******************************************************************************
* 函數名  :MySystemInit
* 描述    :配置不同的系統時鐘
* 輸入    : 無
* 輸出    : 無
* 返回    : 無
******************************************************************************/
void MySystemInit()        
{   
    RCC_DeInit();                                                                     //將RCC寄存器設為默認值
    RCC_HSEConfig(RCC_HSE_ON);                                                   //打開外部高速時鐘
    HSEStartUpStatus = RCC_WaitForHSEStartUp();                          //等待外部高速時鐘工作
    if(HSEStartUpStatus == SUCCESS)
    {
       RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9); //PLLCLK = 8MHz * 9 = 72 MHz                                                                                                         
       RCC_PLLCmd(ENABLE);                                                                    //使能PLL
    while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)      //等待PLL就緒
     {
     }
    RCC_HCLKConfig(RCC_SYSCLK_Div1);                                                   // HCLK = SYSCLK
    RCC_PCLK2Config(RCC_HCLK_Div1);                                               // PCLK2 = HCLK
    RCC_PCLK1Config(RCC_HCLK_Div2);                                                         // PCLK1 = HCLK/2
    FLASH_SetLatency(FLASH_Latency_2);                                        //設置FLASH存儲器延時時鐘周期數
    FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);   //使能FLASH預取指緩存
    RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);                             //設置PLL作為系統時鐘源
    while(RCC_GetSYSCLKSource() != 0x08)                                          //等待PLL成為系統時鐘源有效
     {
     }
    }
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOF|RCC_APB2Periph_AFIO, ENABLE); //使能PA,PB,PC,PF,AFIO時鐘
                RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);
        
}


void SysTick_Init(void)
{
        /* SystemCoreClock / 1000    1ms中斷一次
         * SystemCoreClock / 100000         10us中斷一次
         * SystemCoreClock / 1000000 1us中斷一次*/

        //if (SysTick_Config(72000)
        if (SysTick_Config(SystemCoreClock / 1000))         // 1ms中斷一次
        {         
                while (1);
        }
        SysTick->CTRL &= ~ SysTick_CTRL_ENABLE_Msk;  // 關閉滴答定時器  
}
void Delay_ms(__IO u32 nTime)
{
        TimingDelay = nTime;        
        SysTick->CTRL |=  SysTick_CTRL_ENABLE_Msk;        // 使能滴答定時器  
        while(TimingDelay != 0);
        SysTick->CTRL &= ~ SysTick_CTRL_ENABLE_Msk;  // 關閉滴答定時器
}
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩精品免费在线观看 | 一区二区三区四区在线播放 | 福利影院在线观看 | 日韩成人精品一区二区 | 黄色小视频免费观看 | 欧美一二 | 欧美日韩免费 | 夜夜嗨av一区二区三区网页 | 日日操日日操 | 在线观看三级 | 欧美顶级黄色大片免费 | 欧美一级日韩一级 | 久草资源| 欧美视频在线观看一区 | 欧美亚洲天堂 | 久久久在线视频 | 日本中文字幕在线播放 | 国产精品欧美日韩 | 亚洲精品网站在线观看 | 久久久久毛片 | 日韩久久一区 | 在线观看的av | 人人爽人人干 | 日韩在线小视频 | 午夜视频在线播放 | 他揉捏她两乳不停呻吟动态图 | 欧美日韩一区二区三区视频 | 香蕉视频一区二区 | 中文字幕精品一区久久久久 | 老司机深夜福利视频 | av在线免费播放 | 国产亚洲一区二区三区 | 国产亚洲区 | 成人亚洲视频 | 91伦理| 亚洲免费视频一区 | 亚洲高清在线视频 | 国产精品hd| www.三级 | 午夜精品福利视频 | 蜜桃成人av |