LED跑馬燈實驗

2021-10-09 02:19:04 字數 1093 閱讀 3363

一、新建工程並新增相應的工程檔案

本實驗需要用到三個韌體庫檔案,分別為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 ...