色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

STM32片上外設時鐘使能 失能和復位的區別

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-06 15:31 ? 次閱讀

今天分享的關于時鐘知識,可能很多人沒有在意過。這也是之前有朋友問過的問題,這里就簡單給大家普及一下吧。

1

RCC時鐘說明

STM32參考手冊中,都有Reset and Clock Control(RCC)復位和時鐘控制的章節。

在這一章節就可以看到有兩類寄存器:peripheral reset register(RSTR)外設復位寄存器和peripheral clock enable register(ENR)外設時鐘使能寄存器。

我們拿STM32F1參考手冊為例,可以看到如下圖寄存器:

一種是控制外設時鐘的寄存器,一種是復位外設的寄存器。

2

外設時鐘使能和失能

我們都知道,配置STM32外設,會先開啟對應的時鐘(也就是使能外設時鐘)。

比如使能USART1時鐘:

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);

失能USART1時鐘:

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,DISABLE);

我之前分享過一篇文章《關于STM32時鐘配置的那些坑》,里面有說:為什么我們要先開啟STM32外設時鐘。

從時鐘使能和失能來說,這里再簡單總結一下:使能外設時鐘,我們就可以操作(讀寫)對應的外設;失能外設時鐘,則我們無法操作對應的外設。

所以說,我們要操作外設,就必須要先開啟(使能)其外設時鐘。

3

復位外設

復位外設相信大部分朋友都能理解,如果使用寄存器開發過的朋友,更應該明白。

簡單來說,復位外設就是恢復外設所有寄存器為上電默認值,也可以說復位了我們的配置。

可能有些地方你會也會發現xx外設配置之前有“重新初始化”外設的操作,如:

USART_DeInit(USART1);

DMA_DeInit(DMA1_Channel1);

這重新初始化代碼里面,其實就是調用了復位外設代碼。

4

失能外設時鐘和復位外設會對外設有何影響

上面說了失能外設時鐘,我們就不能操作外設了。那么復位外設,我們還能操作外設嗎?外設的時鐘也會被復位嗎?

可能許多人沒有深入分析過,我這里簡單總結一下:

1.外設時鐘未使能(失能狀態),不能配置(讀寫)外設;

2.復位外設,會復位外設的所有寄存器,但外設時鐘不會被復位;

3.外設時鐘使能,復位外設,再清除復位外設,可以繼續配置(讀寫)外設。如USART1重新初始化:

RCC_APB2PeriphResetCmd(RCC_APB2Periph_USART1, ENABLE);

RCC_APB2PeriphResetCmd(RCC_APB2Periph_USART1, DISABLE);

USART_Init(USART1, &USART_InitStructure);


4.復位外設,但不清除復位外設,則不能繼續配置(讀寫)外設。

RCC_APB2PeriphResetCmd(RCC_APB2Periph_USART1, ENABLE);

USART_Init(USART1, &USART_InitStructure);

在STM32的庫函數中,外設復位和清除都是成對的,所以,我們用庫開發的好處,就是相對不容易犯一些錯誤。

因為很多朋友使用寄存器開發,有很多細節問題沒有深入研究過,就不知道問題到底處在哪里。

所以,建議用寄存器開發的朋友轉向使用(SPL、HAL或CLL)庫開發。如果你非要一步一步理解底層,建議使用SPL標準外設庫。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5363

    瀏覽量

    120927
  • STM32
    +關注

    關注

    2270

    文章

    10923

    瀏覽量

    357036
  • 時鐘
    +關注

    關注

    11

    文章

    1746

    瀏覽量

    131673
  • 復位
    +關注

    關注

    0

    文章

    174

    瀏覽量

    24241
收藏 人收藏

    評論

    相關推薦

    TPA3255在復位引腳禁用和使的時候會出現啪嗒聲,怎么解決?

    TPA3255芯片我參考官方的EVM電路做了2款PCB,購買了2TPA3255芯片,現在無法解決復位引腳在使和禁用時的啪嗒聲。 電路前級是PCM5242,TPA3255處于BTL
    發表于 09-29 06:25

    STM32復位電路用復位芯片和阻容復位電路區別

    STM32是一款廣泛使用的微控制器,其復位電路設計對于系統的穩定性和可靠性至關重要。本文將詳細介紹STM32復位電路中使用復位芯片和阻容
    的頭像 發表于 08-06 10:26 ?1764次閱讀

    伺服電機的使信號及其相關問題

    伺服電機是一種高精度、高響應速度的電機,廣泛應用于工業自動化、機器人、航空航天等領域。伺服電機的使信號是控制電機啟動和停止的關鍵信號,對于電機的正常運行和安全性能具有重要意義。 伺服電機使
    的頭像 發表于 07-10 14:58 ?1845次閱讀

    伺服開啟使ON接什么點

    伺服電機是一種高精度、高響應速度的電機,廣泛應用于自動化設備、機器人、數控機床等領域。在伺服電機的控制中,使信號(Enable Signal)是一個非常重要的信號,它用于控制伺服電機的啟動和停止
    的頭像 發表于 06-14 10:21 ?2366次閱讀

    STM32CubeMX中怎么使CRC時鐘

    請教各位大俠,STM32CubeMX中,怎么使CRC時鐘
    發表于 05-16 07:04

    時鐘使的八邊三格D型觸發器數據表

    電子發燒友網站提供《帶時鐘使的八邊三格D型觸發器數據表.pdf》資料免費下載
    發表于 05-15 10:42 ?0次下載
    帶<b class='flag-5'>時鐘</b><b class='flag-5'>使</b><b class='flag-5'>能</b>的八邊三格D型觸發器數據表

    stm32輔助時鐘AFIO,什么時候使時鐘?其作用是什么?

    一直不知道AFIO,請指點一下,什么時候使時鐘。其作用是什么?
    發表于 05-15 08:01

    STM32F070選擇內部時鐘后外部復位有時點亮不了燈怎么解決?

    STM32F070F6P6選擇內部時鐘后,外部復位,有時點亮不了燈(外部晶振拆了);(20次有1到2次會出現)使用外部晶振是沒有問題的。 配置信息如下: static void
    發表于 04-18 06:05

    stm32F429串口采用DMA方式發送,數據流使失敗的原因?

    最近項目要使用F429的DMA進行串口發送數據,燒錄之后程序無法正常運行,仿真發現在執行完DMA_Cmd(DMA2_Stream7, ENABLE)之后并沒有被使,反而多了兩個錯誤中斷標志,一個是
    發表于 04-17 07:05

    和儲區別?為什么要儲

    和蓄是能源領域中兩個密切相關但又有所區別的概念。它們在能源轉換、存儲和利用過程中扮演著重要的角色。
    的頭像 發表于 04-11 10:45 ?4336次閱讀

    STM32H7想把PA5作為SP1的時鐘輸出,結果只要使DAC2就不能用PA5,為什么?

    問題描述:我把DAC連接到運放,從PE7輸出。想把PA5作為SP1的時鐘輸出,結果只要使DAC2就不能用PA5。 手冊上有一句話:如果 DAC 輸出與輸出焊盤斷開連接并連接到
    發表于 04-03 06:00

    系統與單片機的區別

    系統(SoC)與單片機在多個方面存在明顯的區別
    的頭像 發表于 03-28 14:39 ?1642次閱讀

    STM32G070 SPI主機只接收模式關閉SPI使后為什么還有時鐘輸出?

    使用STM32G070,一個板子實現主機只接收,另一個板子實現從機只發送,通信波形發現主機SPI關閉使后,選信號已經置高,仍然有8個
    發表于 03-28 07:08

    STM32無法進入Bootloader的處理方法

    STM32無法進入Bootloader的處理方法? 當STM32芯片無法進入Bootlo
    的頭像 發表于 02-02 14:33 ?2235次閱讀

    GD32 MCU電源復位和系統復位有什么區別

    GD32 MCU的復位分為電源復位和系統復位,電源復位又稱為冷復位,相較于系統復位
    的頭像 發表于 02-02 09:37 ?1568次閱讀
    GD32 MCU電源<b class='flag-5'>復位</b>和系統<b class='flag-5'>復位</b>有什么<b class='flag-5'>區別</b>
    主站蜘蛛池模板: 大胸美女被C得嗷嗷叫动态图| 无码精品AV久久久奶水| 久久亚洲精品专区蓝色区 | 国产精品高潮呻吟AV久久96| 久久精品在现线观看免费15| 日本成熟bbxxxxxxxx| 益日韩欧群交P片内射中文| 成年人视频在线免费看| 久久久久久久久亚洲| 视频在线免费观看| 97无码欧美熟妇人妻蜜| 国产精选视频在线观看| 泡妞高手在都市免费观看| 亚洲无吗视频| 国产国拍亚洲精品永久软件| 桥本有菜护士| 91麻豆精品国产一级| 久99视频精品免费观看福利| 无码人妻精品一区二区蜜桃在线看 | 国产三级级在线电影| 日本老妇一级特黄aa大片| 综合网伊人| 久久视频这里只精品99热在线| 午夜向日葵视频在线观看| 出差无套内射小秘书| 欧美人成在线观看ccc36| 91青青草原| 麻生希第一部快播| 在线a亚洲视频| 久久99AV无色码人妻蜜| 亚洲女人毛片| 好吊日视频在线| 亚洲精品一线二线三线无人区| 国产精品一库二库三库| 色WWW永久免费视频首页| 不分昼夜H1V3| 日韩无码在线| 国产精品成人影院| 午夜视频在线瓜伦| 国产三级影院| 亚洲视频中文|