久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

【青風帶你學stm32f051系列教程】 第1課 點亮你的第一個LED燈 | 愛板網(wǎng)

 weikong66 2013-03-28
【青風帶你學stm32f051系列教程】 第1課 點亮你的第一個LED燈
2012年12月03日 ? 教程 ? 評論數(shù) 3 ? 被圍觀 1,539+

第1課:點亮你的第一個LED燈

原理分析:

大家之前學習過51單片機,,也使用過IO口,。與ARM CORTEX M0的IO口配置有點區(qū)別,51不需要設置IO口為輸入或者輸出,,而CORTEX M0的IO口有多種狀態(tài)需要設置,,那么下面我們一一介紹:

首先看看IO口的模式,如下寄存器說明,,IO口可以配置為4種模式:輸入模式,,輸出模式,復用模式,,模擬通道模式,。由于stm32f051系列多數(shù)的IO關鍵復用了其外設功能,比如I2C,SPI,UART等,,此時就可以設置IO口為復用模式,。模擬通道則作為AD,DA的時候使用:

如果大家使用庫函數(shù)編程的時候,可以在 stm32f0xx_gpio.h文件中找到設置IO模式的結構體GPIOMode_TypeDef :

下面來介紹下輸入和輸出模式,,其中輸出模式如下圖所示,,分為推挽輸出和開漏輸出。這時候大家就要回憶下模電的課程了,。

我使用下面一個等效圖說明一下推挽輸出和開漏輸出。圖所示:U1是輸出鎖存器,,執(zhí)行GPIO管腳寫操作時,,在寫脈沖(Write Pulse)的作用下,數(shù)據(jù)被鎖存到Q和/Q,。T1和T2構成CMOS反相器,,T1導通或T2導通時都表現(xiàn)出較低的阻抗,但T1和T2不會同時導通或同時關閉,,最后形成的是推挽輸出,。

如圖1.3所示,為GPIO管腳在開漏輸出模式下的等效結構示意圖。開漏輸出和推挽輸出相比結構基本相同,,但只有下拉晶體管T1而沒有上拉晶體管,。同樣,T1實際上也是多組可編程選擇的晶體管,。開漏輸出的實際作用就是一個開關,,輸出“1”時斷開、輸出“0”時連接到GND(有一定內(nèi)阻),。

同樣大家使用庫函數(shù)編程的時候,,可以在 stm32f0xx_gpio.h文件中找到設置輸出模式的結構體GPIOOType_TypeDef

同時我們可以設置IO端口輸出的速度,在庫函數(shù)中通過結構體來解決:

輸入的模式可以分為上拉和下拉模式,,這就比較簡單了,,寄存器的設置如下圖:

同樣大家使用庫函數(shù)編程的時候,可以在 stm32f0xx_gpio.h文件中找到設置輸入模式的結構體GPIOOPuPd_TypeDef

上面介紹完了STM32F051的IO端口有哪幾種模式,,現(xiàn)在就來點亮一個LED燈,,學過51的同學可以回憶下,51是通過設置IO口輸出0或者1來驅動LED燈的亮滅,。在STM32F051中,,我們通過設置IO端口為輸出來點亮LED等。

硬件準備:

如上圖所示: 青風STM32F051開發(fā)板上,,通過管腳PA11和管腳PA12連接2個LED燈,,我們下面的任務首先來點亮它。

軟件準備:

按照第一章的介紹首先建立一個工程項目,,采用庫函數(shù)來在驅動IO口首先要添加幾個驅動庫,,如下圖所示:

上圖紅色框框中的幾個文件都是ST官方給我們編好的庫函數(shù)。那邊用戶在使用中,,只需要編寫led.c 驅動文件和main.c主函數(shù)就OK,,整個工程項目大家如果加入分層的思想那么就對之后的移植非常有利。打個比方:底層和應用程隔離,。底層驅動和應用層無關,,main.c使用的函數(shù)在led.c驅動中已經(jīng)些好,這些才和硬件有關,,這是需要移植到不同硬件時,,main主函數(shù)是可以不做任何修改的,只需要修改和底層相關的led.c驅動,。

下面來分析下led .c的驅動編寫:

上面的函數(shù)中GPIO_ResetBits函數(shù)和GPIO_SetBits函數(shù)在stm32f0xx_gpio.c驅動文件中所定義了,。分別表示復位和置位相關IO管腳。

那么主函數(shù)的編寫就比較簡單了,,我們需要調(diào)用下面2個頭文件,,才能夠直接使用我們定義的子函數(shù)。如下使用LED_Open()函數(shù)就能夠點亮一個LED燈了,是不是很簡單,。

那么加入一個小的延遲delay函數(shù)和打開與關閉LED子函數(shù)相結合,,就可以實現(xiàn)LED閃爍的功能了,函數(shù)如下所示:

下載到青風STM32F051開發(fā)板上運行后的效果如下圖所示:

如圖所示,,上方的用戶led燈不停閃爍,。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報,。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多