一、新建工程並新增相應的工程檔案
本實驗需要用到三個韌體庫檔案,分別為stm32f4xx_gpio.c /stm32f4xx_gpio.h 、stm32f4xx_rcc.c/stm32f4xx_rcc.h 、misc.c/ misc.h 。
二、編寫使用者驅動**
1、編寫c檔案
a.使能gpio時鐘,根據電路原理圖可知led0、led1對應io口的引腳為pe3、pe4,led2對應的引腳為pg9,故將rcc_ahb1periph_gpioe | rcc_ahb1periph_gpiog作為第乙個入口引數。
b.初始化io口設定
c.初始化gpio
d.設定輸出電平,由電路圖可知,為上拉模式,設定輸出高電平,燈滅。
#include
"led.h"
#include
"common.h"
//初始化pe3,pe4為輸出口,並使能io口時鐘
//ledio口初始化
void
led_init
(void
)
2、編寫標頭檔案
#ifndef __led_h
#define __led_h
#include
"common.h"
#define led0 peout(3)
//巨集定義
#define led1 peout(4)
//巨集定義
#define led2 pgout(9)
//巨集定義
void
led_init
(void);
#endif
巨集定義的部分必須要與使能的io口相匹配。
三、編寫主函式
#include
"led.h"
#include
"common.h"
intmain
(void
)}
一定要對用到的模組先進行初始化。 LED跑馬燈效果
這個led跑馬燈的效果是怎麼乙個原理,現分析如下 假設有乙個要進行變化的物件陣列,我們稱之為a物件。如下 這個等變化的陣列長度為5,有顏色陣列,我們稱之為b,如下 這個長度為3。要分析出原理,我們要根據事物的表象去分析得到事物內在的規律與原理,根據這個原理與規律我們才能得出解決辦法。我們進行一次模擬...
LED跑馬燈 位操作
之前我們已經介紹了庫函式和暫存器控制led跑馬燈,其實無論使用哪一種方法 包括操作bsrr,brr暫存器的方式 最終都是通過操作gpio odr暫存器 32位暫存器只使用低16位 響應的位為該io口賦值 那麼什麼是位操作?我們知道gpio odr暫存器的每一位對應乙個io口的電平操作,而每一位實際是...
實驗一 跑馬燈實驗
一 實驗目的 通過控制戰艦stm32開發板上的兩個led燈 ds0和ds1交替閃爍,實現類似跑馬燈的效果。二 stm32 io簡介 stm32 的每個 io 埠都有 7 個暫存器來控制。他們分別是 配置模式的 2 個 32 位的埠配置暫存器 crl 和 crh 2 個 32 位的資料暫存器 idr ...