stm32外設初始化和設定過程

2021-07-13 20:17:58 字數 760 閱讀 4881

1.主應用檔案中宣告ppp_inittypedef結構體變數。

例:gpio_inittypedef gpio_initstructure;

2.為定義的結構體變數設定需要的值。

設定變數中所有的值:ppp_initstructure.member1 = value1;ppp_initstructure.member2 = value2;...

or:            定義時直接賦值:ppp_inittypedef ppp_initstructure = ;

設定變數中部分值:ppp_structinit(&ppp_initstructure);//先對結構體變數進行初始化

ppp_initstructure.member1 = value1;ppp_initstructure.member2 = value2;...

3.在設定乙個外設前,必須呼叫一下乙個函式來使能它的時鐘。

rcc_ahbperiphclockcmd(rcc_ahbperiph_pppx,enable);

rcc_apb1periphclockcmd(rcc_apb1periph_pppx,enable);

rcc_apb2periphclockcmd(rcc_apb2periph_pppx,enable);

4.呼叫ppp_init(ppp,&ppp_initstructure)進行外設初始化。//ppp_deinit()功能和ppp_init(ppp)相反,將暫存器復位為預設值。

5.ppp_cmd(ppp,enable);將外設使能。

stm32埠初始化

今天上課,點亮數碼管,gpio初始化後,數碼管上有一段亂碼。要讓這亂碼消失掉,需要改變gpio初始化的順序。在gpio埠使能後,要加odr 埠暫存器 控制 gpio inittypedef gpio initstructure 定義乙個結構體 rcc apb2periphclockcmd rcc a...

STM32初始化SD卡流程

1,初始化sdio外設,關閉sdio時鐘。2,上電,開啟時鐘,注意此時時鐘應不能超過400khz,且此時是只有一位資料線,要到初始化完成後再調時鐘與資料線寬度。3,延時最低74個時鐘週期。使時鐘與sd卡穩定,否則會出錯。4,傳送cmd0,需要返回0x01,進入idle狀態 5,為了區別sd卡是2.0...

stm32的外設初始化步驟,以定時器為例。

我這個程式的目的在於讓定時器開啟更新中斷,實現定時器1s中斷一次然後在中斷函式中led電平翻轉一次。1.首先先開啟這個外設的時鐘 rcc apb2periphclockcmd rcc apb2periph tim1,enable 開啟定時器1 的時鐘apb2 2.定義這個外設的初始化結構體 tim ...