一、熟悉GPIO結(jié)構(gòu)體
以下這個結(jié)構(gòu)體是我從官方手冊中獲取的:
[cpp] view plain copy print?
typedef struct
{
u16 GPIO_Pin;
GPIOSpeed_TypeDef GPIO_Speed;
GPIOMode_TypeDef GPIO_Mode;
} GPIO_InitTypeDef;
二、編寫程序步驟
1、首先定義一個GPIO_InitTypeDef的結(jié)構(gòu)體,給結(jié)構(gòu)體起一個名字 GPIO_InitStructure;
[cpp] view plain copy print?
GPIO_initTypeDef GPIO_initStructure ;
2、初始化RCC時鐘
RCC_APB2PeriphClockCmd 使能或者失能 APB2 外設(shè)時鐘,從下圖看GPIOA-G均屬于APB2時鐘總線。
3、對結(jié)構(gòu)體成員賦值,詳情參考固件庫使用手冊
//GPIO管腳
u16 GPIO_Pin;
//GPIO口的速率
GPIOSpeed_TypeDef GPIO_Speed;
//GPIO的輸出模式
GPIOMode_TypeDef GPIO_Mode;
4、初始化GPIO
這里要注意,每更新一個GPIO口就要初始化一次(用到了多組GPIO的情況)
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct)
5、
GPIO_SetBits 設(shè)置指定的數(shù)據(jù)端口位
GPIO_ResetBits 清除指定的數(shù)據(jù)端口位
-
led
+關(guān)注
關(guān)注
242文章
23347瀏覽量
662669 -
庫函數(shù)
+關(guān)注
關(guān)注
0文章
177瀏覽量
34006
原文標題:STM32學習筆記之使用庫函數(shù)驅(qū)動LED燈
文章出處:【微信號:wujianying_danpianji,微信公眾號:單片機精講吳鑒鷹】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論