在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

STM32的復用時鐘的開啟時間

汽車玩家 ? 來源:嵌入式大雜燴 ? 作者:嵌入式大雜燴 ? 2020-04-04 17:22 ? 次閱讀

STM32的AFIO時鐘真的是在開啟引腳復用功能的時候開啟嗎?其實并不是~

什么是復用?

我們知道,STM32有很多外設,這些外設的外部引腳都是與GPIO共用的。我們可以通過軟件來配置引腳作為GPIO引腳還是作為外設引腳。當引腳配置為外設引腳時就叫做復用。如串口默認復用的引腳為:

STM32的復用時鐘的開啟時間

PA9、PA10引腳可配置為普通IO,也可配置為串口引腳(PA9為TX,PA10為RX)。

例子:串口1為例

關于外設的配置可查閱:《STM32參考手冊》關于通用和復用功能I/O(GPIO和AFIO) 的章節,如串口引腳配置如下:

STM32的復用時鐘的開啟時間

我們可能經??吹揭恍┐a(基于STM32F103ZET6)的串口配置如下:

STM32的復用時鐘的開啟時間

看到這里開啟了AFIO時鐘,讓我疑惑了一下,為什么SPI相關的引腳也配置為復用但并沒有開啟APIO時鐘也能正常工作。所以AFIO時鐘應該什么時候開呢?

我們回顧一下,我們為什么要開啟時鐘呢?因為我們要對芯片內部的硬件進行控制(讀寫其寄存器),要控制哪一部分,就要開啟那一部分的時鐘。

本例中,使能GPIOA、USART1的時鐘是因為我們要對GPIOA、USART1相關的寄存器進行操作。那么AFIO呢?其管理的寄存器有哪些呢?從參考手冊關于通用和復用功能I/O(GPIO和AFIO)這一章節可以看到AFIO管理的寄存器如下:

STM32的復用時鐘的開啟時間

可以知道,本例對USART1進行配置,并沒有涉及到AFIO相關的寄存器,所以并不需要打開AFIO時鐘!

所以這里的第7行代碼可以刪掉。當然不刪也可以正常工作,但是會白白增加能耗、寫無用代碼(白白浪費程序存儲器空間)而已!

何時開啟AFIO時鐘?

按照上面分析的,當然是要操作AFIO相關的寄存器的時候才開啟AFIO時鐘。此處依舊以串口為例。我們看到AFIO管理的寄存器中有復用重映射和調試I/O配置寄存器(AFIO_MAPR) 這一寄存器,這個寄存器怎么用呢?

首先,我們要知道什么是重映射。

使用重映射功能可以把一些復用功能重新映射到其他引腳上,在某些時候可以方便板級硬件的布局設計。設置AFIO_MAPR寄存器實現引腳的重新映射。此時,復用功能不再映射到它們的原始分配上。 可以重映射到任意引腳嗎?其實是有規定的,可查閱參考手冊,如串口1的重映射:

STM32的復用時鐘的開啟時間

我們可以配置PB6、PB7作為串口1的TX、RX引腳,具體配置代碼如下:

STM32的復用時鐘的開啟時間

這里得調用一個重映射配置函數GPIO_PinRemapConfig,可在這個函數在stm32f10x_gpio.c中,如下:

STM32的復用時鐘的開啟時間

其中第一個參數為要重映射的外設,可在stm32f10x_gpio.h中查看:

STM32的復用時鐘的開啟時間

其中重映射又分為部分重映射和完全重映射,區別就是要重映射全部的引腳還是部分引腳,這也是有規定的。比如定時器1:

STM32的復用時鐘的開啟時間

我們從GPIO_PinRemapConfig函數的實現中可以看到我們需要操控AFIO_MAPR寄存器,所以需要開啟AFIO時鐘。

綜上,需要操控AFIO管理的寄存器才需開啟AFIO時鐘,否則不需要開啟。

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

    關注

    2283

    文章

    10986

    瀏覽量

    361292
  • 串口
    +關注

    關注

    14

    文章

    1580

    瀏覽量

    78332
  • GPIO
    +關注

    關注

    16

    文章

    1238

    瀏覽量

    53303
收藏 人收藏

    評論

    相關推薦

    請問STM32CUBEIDE如何開啟代碼聯想功能?

    STM32CUBEIDE如何開啟代碼聯想功能?
    發表于 03-10 08:23

    如何加快STM32G473上電時間

    現在采用STM32G473,采用外部8M晶振,工作為72M,測試上電3.3V到時鐘初始化完,大約需要5ms,有沒有什么措施加快上電時間?即縮短上電3.3V到時鐘初始化完成的
    發表于 03-07 08:11

    一千余字解讀stm32時鐘

    轉換為多個外部設備的周期性運作。這種時鐘“能量”的傳遞路徑類似于大樹的養分由主干流向各個分支,因此被稱為時鐘樹。STM32內部也是由多種多樣的電路模塊組合在一起實現
    的頭像 發表于 12-30 21:01 ?2523次閱讀
    一千余字解讀<b class='flag-5'>stm32</b><b class='flag-5'>時鐘</b>樹

    北斗衛星同步時鐘系統:精準時間的秘密

    辦公樓中,所有的電腦、時鐘甚至是樓宇的自動化系統,都顯示著同一個時間。這個時間均來源于北斗衛星同步時鐘系統。這個系統由一個母鐘(主時鐘)和一
    的頭像 發表于 12-03 14:19 ?670次閱讀
    北斗衛星同步<b class='flag-5'>時鐘</b>系統:精準<b class='flag-5'>時間</b>的秘密

    有什么辦法能讓TAS5756輸出一個44.1khz的IIS采用時鐘嗎?

    關于TAS5756請教一個PLL的問題,我們對5756提供一個12.888Mhz的主時鐘,有什么辦法能讓5756輸出一個44.1khz的IIS采用時鐘嗎?
    發表于 10-25 07:31

    物聯網系統硬件方案的“脈搏”_時鐘詳解

    01 物聯網系統中為什么要使用 時鐘芯片 在物聯網系統中使用時鐘芯片的原因主要體現在以下幾個方面: 時間同步的重要性 物聯網設備通常需要基于時間執行各種任務,如數據采集、事件記錄、定時
    的頭像 發表于 09-26 14:57 ?1013次閱讀
    物聯網系統硬件方案的“脈搏”_<b class='flag-5'>時鐘</b>詳解

    無線時鐘音響怎么使用

    按鈕,開啟音響。 連接無線網絡 :如果音響支持Wi-Fi,按照說明書指示連接到你的家庭或辦公室網絡。 藍牙配對 :如果音響支持藍牙,開啟你的手機或其他音頻源的藍牙功能,并搜索設備進行配對。 3. 時間設置 手動設置 :使用音響上
    的頭像 發表于 09-07 09:14 ?1311次閱讀

    【GD32 MCU 入門教程】GD32 MCU 常見外設介紹(1)RCU 時鐘介紹

    眾所周知,時鐘是MCU能正常運行的基本條件,就好比心跳或脈搏,為所有的工作單元提供時間 基數。時鐘控制單元提供了一系列頻率的時鐘功能,包括多個內部RC振蕩器
    的頭像 發表于 08-09 09:46 ?1143次閱讀
    【GD32 MCU 入門教程】GD32 MCU 常見外設介紹(1)RCU <b class='flag-5'>時鐘</b>介紹

    時間頻率設備 時鐘同步 賦能機場系統-安徽京準

    時間頻率設備(時鐘同步)賦能機場系統-安徽京準
    的頭像 發表于 08-06 14:29 ?524次閱讀
    <b class='flag-5'>時間</b>頻率設備 <b class='flag-5'>時鐘</b>同步 賦能機場系統-安徽京準

    安徽京準 | PLC時鐘同步(NTP網絡時間服務器)的重要性

    安徽京準、PLC時鐘同步-ntp網絡時間服務器的重要性
    的頭像 發表于 06-19 10:38 ?718次閱讀
    安徽京準 | PLC<b class='flag-5'>時鐘</b>同步(NTP網絡<b class='flag-5'>時間</b>服務器)的重要性

    京準電鐘:基于GPS與北斗高精度實時時鐘時間同步方法

    京準電子分享:基于GPS與北斗衛星高精度實時時鐘時間同步方法
    的頭像 發表于 06-18 14:35 ?1007次閱讀
    京準電鐘:基于GPS與北斗高精度實時<b class='flag-5'>時鐘</b>的<b class='flag-5'>時間</b>同步方法

    【京準】標準時鐘系統:精確、可靠的時間計量工具

    【京準】標準時鐘系統:精確、可靠的時間計量工具
    的頭像 發表于 06-04 11:26 ?1295次閱讀

    STM32F407讀取掛在FSMC上的外部ADC數據,開啟DMA的Mem to Mem模式時只能讀取一次FSMC數據,為什么?

    大家好,我現在使用STM32F407,想要讀取掛在FSMC上的外部ADC的數據,我利用NOE產生一個時鐘信號給ADC。 現在的問題是,當我開啟DMA的Mem to Mem 模式時,只能讀取一次
    發表于 05-29 07:20

    STM32的HAL庫如何開啟FPU?

    求:STM32的HAL庫如何開啟FPU?
    發表于 05-16 07:26

    關于復用和映射的疑問求解

    弱弱的問個問題啊,大神勿噴,如標題所示的這樣。 就是比如USART3原來是PA1,PA2引腳的復用功能,你首先開了GPIOA和USART3的時鐘,然后配置了GPIOA的這個1,2復用,然后配置下
    發表于 05-13 07:40
    主站蜘蛛池模板: 人人澡人人澡人人看青草 | 天天天天添天天拍天天谢 | 黄网站观看 | 手机看片a永久免费看大片 手机毛片 | 国内精品久久久久影院免费 | 特一级黄 | 午夜精品久久久 | 午夜在线播放视频 | 性在线视频| 好大好硬好长好爽a网站 | 91av视频网站 | 视频色版 | 午夜免费影视 | 日韩午夜大片 | av网址在线看| 亚洲天堂2013 | 一区二区三区免费 | 久久综合中文字幕 | 日韩在线视频一区二区三区 | 奇米影视777四色米奇影院 | 韩国男女无遮挡高清性视频 | 成年色黄大色黄大片 视频 成年视频xxxxx免费播放软件 | 婷婷天堂 | 天天摸夜夜摸爽爽狠狠婷婷97 | 欧美猛交xxxx乱大交 | 国产在线97色永久免费视频 | 天堂在线观看 | 精品女视频在线观看免费 | 波多野结衣久久国产精品 | 最近国语剧情视频在线观看 | 久久精品国产精品亚洲毛片 | 欧美激情在线 | ww欧洲ww在线视频免费观看 | 一个色在线视频 | 国产精品欧美一区二区三区不卡 | 婷婷色网 | 欧美 在线播放 | 色妞女女女女女bbbb | 我要色综合网 | 高清性欧美xxx | 特黄视频免费看 |