怎樣用STM32點亮LED燈?怎樣用STM32讓LED閃爍?
對于單片機編程而言,點亮LED是單片機編程的入門操作。
對于STM32,本人習慣使用寄存器操作,所以本文將以KEIL4.12作為開發環境,以寄存器操作試驗為編程思路講解。
先創建一個工程名為LED_Project,在keil的右側的工程窗口,選中項目,鼠標右手單擊,出現如下圖所示
選擇Device項,選擇對應型號,
在工程中添加對應的寄存器版本的支持文件,因只需要LED相關的寄存器操作,則只需要RCC,GPIO的固件庫文件,
創建main.c文件,并包含#includeltstm32f10x_lib.hgt頭文件
首先我們假設當PA4引腳為高電平時,LED燈亮,為低電平時,LED等滅,
設置LED的宏定義,如下:
#defineLED_ONGPIOA-gtODR|(1ltlt4)
#defineLED_OFFGPIOA-gtODRamp~(1ltlt4)
定義一個LED的GPIO初始化函數,
如上圖所示,
RCC-gtAPB2ENR|1ltlt2是PA端口的時鐘使能
我們使用PA4作為LED輸出控制端口,配置PA4作為推挽輸
設置led燈1秒鐘亮滅一次,俗稱呼吸燈函數如下:
設置LED燈亮滅時間漸變,函數如下圖所示
如上圖所示,函數中使用for循環,完成一個led閃爍頻率從最快10ms間隔閃爍一次,漸漸增大時間,最后到1S閃爍一次,再逐漸減小間隔時間,閃爍頻率加快。
LED閃爍的實現效果還可以進行設計,大家可以自由的進行發揮代碼的魅力和能力
以上是問題的粗略解答,難免會有遺漏
希望大家留言,點贊,轉發,關注
海迪拉特led燈怎么樣?
海迪拉特led燈質量好
海迪拉特led燈還是很不錯的不僅專業做燈,產品質量也有保證,創建于2015年,自創建以來,海迪拉特品牌以全新的管理模式,完善的技術,周到的服務,卓越的品質為生存根本,堅持用自己的服務去打動客戶,深受廣大客戶和消費者的青睞。