久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3497|回復: 0
打印 上一主題 下一主題
收起左側

奮斗stm32開發板學習日記6—庫函數開發小結

[復制鏈接]
跳轉到指定樓層
樓主
                  回顧之前的教程, 主要寫了GPIO點燈, EXTI按鍵中斷, USART串口通信,通過這幾個實驗,筆者已經能總結出用ST庫開發的步驟和共同點了。那么接下來就來談談他們的共同點。
初始化:
翻看前面筆者寫過的例程,不難發現我們在使用這些外設之前,總要先定義一個結構體,然后給該結構體中的相關參數賦值。先看看之前都用了哪些結構體:
  • GPIO_InitTypeDef形的結構體用來配置GPIO外設
  • EXTI_InitTypeDef形的結構體用來配置按鍵等其他的外部中斷
  • NVIC_InitTypeDef形的結構體用來配置總中斷管理器。
  • USART_InitTypeDef形式結構體用來配置串行口相關參數。
可能有人要問, 之前自己在學51時,直接配置相關寄存器就行了,在stm32開發中,是不是就不需要配置寄存器,直接通過填充結構體就可以了呢?其實不然。我們可以在相關初始化函數上右擊鼠標,選擇Go to Definition, 便可以一目了然。例如GPIO_Init這個函數,
如圖,

該函數會將之前填充的相關結構中參數寫入GPIO中BRR, BSRR, CRH寄存器中:

而這幾個寄存器正是配置stm32的pin口speed,mode。有時,如果我們不懂結構中相關參數在對應寄存器中的意思時,可以通過查詢《stm32手冊》來查找其參數意義。
因此在使用st庫對外設進行初始化,一般的步驟如下:
  • 定義一個xxx_InitTypeDef類型的初始化結構體,
  • 根據使用需求,向這些結構體中寫入特定的控制參數,
  • 填充好結構體,把這個結構體作為函數xxx_Init()的參數進行傳遞。寫入對應的寄存器        中。
數據輸入與輸出:
在按鍵試驗中,我們用了GPIO_ReadInputData()函數來讀取按鍵輸入pin口的電平。同樣也可以用GPIO_ReadOutputData()函數來讀取pin口的輸出值, 說道著這里,想必大家知道這兩個函數的重要性,有了這兩個函數,就可以讓MCU做一些邏輯任務了。同樣,在在串口通信中,用了USART_SendData與UART_ReceiveData來通過串口收發數據。
標志位的檢查與清除:
當外設完成了某些工作或出現某些狀態的時候,會觸發一些事件, 同時在相關寄存器中標志位就會被置位,例如,在USART通信中,當數據接收或者發送完成后,都會觸發一個中斷一個事件,并且進入同一中斷服務程序中,這時候,檢查標志位就很重要了,如果要確定是否為接收數據引發的中斷,此時就可以用USART_GetITStatus來檢查他的TXNE位是否被置位,具體如圖所示:

接收位標志位的清除可以有兩種方法第一是當你用軟件讀取USART_DR寄存器時,便可以完成RXNE的清除,同時也可以通過軟件對它寫0也可以清除。


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩中文在线 | 黄色片视频网站 | 青青草亚洲 | 午夜ww| 四虎永久影院 | 国产超碰人人爽人人做人人爱 | 成人在线精品视频 | 久久午夜精品福利一区二区 | 国产成人免费一区二区60岁 | 亚洲第一中文字幕 | 中文字幕日韩欧美一区二区三区 | 观看毛片 | 精品欧美一区二区在线观看视频 | 女同久久另类99精品国产 | 一级一级毛片免费看 | 国产视频一区二区 | 亚洲欧洲综合av | 久久久精品国产 | 欧美色欧美亚洲另类七区 | 黄色一级大片在线免费看产 | 久久在线视频 | 国产精品高潮呻吟 | 欧美aaaaaaaaaa | 亚洲人的av| 亚洲先锋影音 | 久久精品亚洲 | 日韩成人在线视频 | 极品一区 | 欧美精品在线看 | av中文字幕在线观看 | 91一区二区三区 | 国产精品无| 国产精品一区二区免费 | av播播| 亚洲精品一区在线 | 日本特黄a级高清免费大片 特黄色一级毛片 | 国产在线观看福利 | 日本三级网址 | 亚洲免费精品 | 狠狠亚洲| 日韩精品一区二区三区 |