日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

stm32流水灯c语言程序,stm32流水灯程序源码

發布時間:2023/12/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 stm32流水灯c语言程序,stm32流水灯程序源码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#include "STM32f10x.h"

#include

#include "delay.h"

/*************************************************

函數: void RCC_Configuration(void)

功能: 復位和時鐘控制 配置

參數: 無

返回: 無

**************************************************/

void RCC_Configuration(void)

{

ErrorStatus HSEStartUpStatus;? ?? ?? ?? ?? ?? ???//定義外部高速晶體啟動狀態枚舉變量

RCC_DeInit();? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?//復位RCC外部設備寄存器到默認值

RCC_HSEConfig(RCC_HSE_ON);? ?? ?? ?? ?? ?? ?? ???//打開外部高速晶振

HSEStartUpStatus = RCC_WaitForHSEStartUp();? ?? ?//等待外部高速時鐘準備好

IF(HSEStartUpStatus == SUCCESS)? ?? ?? ?? ?? ?? ?//外部高速時鐘已經準別好

{

FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); //開啟FLASH預讀緩沖功能,加速FLASH的讀取。所有程序中必須的用法.位置:RCC初始化子函數里面,時鐘起振之后

FLASH_SetLatency(FLASH_Latency_2);? ?? ?? ?? ?? ?? ???//flash操作的延時

RCC_HCLKConfig(RCC_SYSCLK_Div1);? ?? ?? ?? ?? ?//配置AHB(HCLK)時鐘等于==SYSCLK

RCC_PCLK2Config(RCC_HCLK_Div1);? ?? ?? ?? ?? ? //配置APB2(PCLK2)鐘==AHB時鐘

RCC_PCLK1Config(RCC_HCLK_Div2);? ?? ?? ?? ?? ? //配置APB1(PCLK1)鐘==AHB1/2時鐘

RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);??//配置PLL時鐘 == 外部高速晶體時鐘 * 9 = 72MHz

RCC_PLLCmd(ENABLE);? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???//使能PLL時鐘

while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)? ? //等待PLL時鐘就緒

{

}

RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);? ?? ?? ?? ?//配置系統時鐘 = PLL時鐘

while(RCC_GetSYSCLKSource() != 0x08)? ?? ?? ?? ?? ?? ?//檢查PLL時鐘是否作為系統時鐘

{

}

}

RCC_APB2PeriphclockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE);??//允許GPIOB、AFIO時鐘

}

/*************************************************

函數: void GPIO_Configuration(void)

功能: GPIO配置

參數: 無

返回: 無

**************************************************/

void GPIO_Configuration(void)

{

GPIO_InitTypeDef GPIO_InitStructure;? ?? ???//定義GPIO初始化結構體

/* Configure PE.0,PE.1,PE.2,PE.3,PE.4,PE.5,PE.6,PE.7 as Output push-pull */

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0??;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;

GPIO_Init(GPIOB, &GPIO_InitStructure);

}

/*************************************************

函數: int main(void)

功能: main主函數

參數: 無

返回: 無

**************************************************/

int main(void)

{

RCC_Configuration();

GPIO_Configuration();

delay_init(72);

while(1)

{

GPIO_SetBits(GPIOB,GPIO_Pin_0);

delay_ms(500);

GPIO_ResetBits(GPIOB,GPIO_Pin_0);

delay_ms(500);

}

}

總結

以上是生活随笔為你收集整理的stm32流水灯c语言程序,stm32流水灯程序源码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。