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

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

3天內(nèi)不再提示

一文知道STM32G071 PD0 PD2引腳使用注意事項

STM32單片機 ? 來源:陳翠 ? 2019-07-21 10:30 ? 次閱讀

背景

STM32G071的PD0,PD2作為外部中斷使用,外部接10K上拉電阻拉到3.3V。外部設(shè)備被觸發(fā)后電平變?yōu)榈碗娖?,平常保持高電?a target="_blank">信號

問題

在以上背景下,按道理外部設(shè)備正常時(未觸發(fā)中斷),IO口輸入電平應該是3.3V。但是實際上測量到的卻是0.9V,這跟觸發(fā)后的0V,同樣會被單片機識別為低電平,故無法產(chǎn)生電平跳變而觸發(fā)中斷。

分析解決

查閱STM32G0數(shù)據(jù)手冊可知:

這個引腳的電平類型為FT_c,我們知道FT是容忍5V的意思,那么FT_c是什么意思?不妨看看說明:

然后去用戶手冊查看GPIO相關(guān)說明,找到以下內(nèi)容:

基本上了解狀況了,再看一下相關(guān)寄存器說明:

具體說明:

看了以上說明,基本明白怎么操作了。在初始化IO的時候,應該把SYSCFG registers的UCPD2_STROBE位設(shè)置一下就ok了。

HAL庫操作:HAL_SYSCFG_StrobeDBattpinsConfig(SYSCFG_CFGR1_UCPD2_STROBE);

LL庫操作:MODIFY_REG(SYSCFG->CFGR1, (SYSCFG_CFGR1_UCPD1_STROBE | SYSCFG_CFGR1_UCPD2_STROBE), SYSCFG_CFGR1_UCPD2_STROBE);

再提醒下,其實PA8和PA15也是這樣的。如果我們不需要這個下拉電阻,需要按照上面的操作調(diào)整一下。

那么為什么STM32G071有這樣的設(shè)置呢?看下面IO功能即可知道,這幾個引腳其實是下面幾個管腳的復用腳。

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

    關(guān)注

    2270

    文章

    10900

    瀏覽量

    356092

原文標題:技術(shù)分享 | STM32G071 PD0 PD2引腳使用注意事項

文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    請問如何設(shè)置stm32f051的PD0、PD1為GPio口

    如何設(shè)置stm32f051的PD0、PD1為GPio口,以下程序只能直輸出高電平,請大神幫忙RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOD, EN
    發(fā)表于 01-08 09:22

    請問PD2引腳沒用到戰(zhàn)艦開發(fā)板以太網(wǎng)歷程中去嗎?

    我現(xiàn)在看了看以太網(wǎng)例程 ENC28J60有個中斷輸出引腳 戰(zhàn)艦板子上連接到了PD2 但是關(guān)于PD2的操作 我只是看到了初始化PD2位推挽輸出,然后就再也沒有找到關(guān)于
    發(fā)表于 07-31 04:35

    嵌入式系統(tǒng)的核心器件:STM32G071開發(fā)事項

    ,有沒有需要特別避過的坑?小馬哥,資深蝶粉,在G0開發(fā)中,被PD0,PD2引腳使用困擾,讓我們起復盤小馬哥踩過的坑和他的解決之道。
    發(fā)表于 12-06 09:39

    將CAN引腳重映射到了PD0PD1引腳

    【說明】程序?qū)AN引腳重映射到了PD0PD1引腳上。由于打開了Loopback模式,所以這兩個引腳不需要接任何器件,懸空就行。必須要設(shè)置
    發(fā)表于 08-19 08:47

    STM32G070的4個引腳相關(guān)資料推薦

    #STM32G070踩坑1. PB15/PA8默認4K下拉Bit 10 UCPD2_STROBE: PD0 and PD2 pull-down configuration strobe
    發(fā)表于 12-10 08:10

    引腳PD2鎖存問題的解決方案

    文章目錄方案引腳PD2鎖存問題方案二:直接對LCD部分函數(shù)進行修改方案三:定時器方式下LED模塊不受控制關(guān)于藍橋杯這個LED模塊,如果想控制的效果如你所愿,其實并非常的簡單。在這里我提供了三種
    發(fā)表于 12-15 08:26

    CH32F203的PD0,PD1作為GPIO不受控是什么原因?

    CH32F203,PD0,PD1作為GPIO不受控是什么原因?代碼如下:GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz
    發(fā)表于 06-16 07:42

    CHV203C8T6的OSC_IN和OSC_OUT重映射為PD0/PD1使用程序會停止運行如何解決?

    使用芯片內(nèi)部HSI,將OSC_IN和OSC_OUT引腳重映射為PD0、PD1.在程序中只能將PD0、PD1不能設(shè)置為推挽輸出模式,設(shè)置為推挽
    發(fā)表于 09-09 06:02

    使用帶有stm32g071rb76處理器的usb-pd系統(tǒng),為什么只有個CC引腳?

    我正在使用帶有 stm32g071rb76 處理器的 usb-pd 系統(tǒng)。該處理器上有 2 個 CC 引腳。但是當我使用stm32g0b1k
    發(fā)表于 12-30 07:13

    STM32F103C8引腳PD0PD1不能作為輸出要怎么解決?

    我把stm32f103c8的所有管腳配置成輸出。所有引腳都在切換,只有 PD0PD1 沒有切換。我使用的是 stm32f103c8 的
    發(fā)表于 01-04 09:00

    如何連接STM32G071進行USB Type-C PD充電?

    和 D- 以允許 5V 負載以更高的功率(DCP)充電?我們的計劃是從自主 USB PD 充電 IC 切換到 STM32G071。
    發(fā)表于 01-10 07:45

    STM32G071KBT6“GP版”與“PD版”的區(qū)別是什么?

    我正在查看 STM32G071KBT6 的數(shù)據(jù)表,其中些封裝顯示了兩次,次是“GP 版”,次是“PD 版”GP和
    發(fā)表于 01-12 07:48

    PD0內(nèi)部上拉與PD1內(nèi)部上拉起工作,讀取的數(shù)值與實際不符是為什么?

    stm32g071cbu 板上嘗試了這段代碼,結(jié)果是樣的(沒有按鈕,但是當 PD0PD1 都設(shè)置為帶上拉的數(shù)字輸入時,PD1 有
    發(fā)表于 02-01 08:21

    STM32G071 PD0 PD2引腳使用注意事項

    STM32G071PD0,PD2作為外部中斷使用,外部接10K上拉電阻拉到3.3V。外部設(shè)備被觸發(fā)后電平變?yōu)榈碗娖?,平常保持高電平信號?/div>
    發(fā)表于 02-10 10:27 ?1次下載
    <b class='flag-5'>STM32G071</b> <b class='flag-5'>PD0</b> <b class='flag-5'>PD2</b><b class='flag-5'>引腳</b>使用<b class='flag-5'>注意事項</b>

    STM32G071最小系統(tǒng)板原理圖與PCb源文件

    STM32G071最小系統(tǒng)板原理圖與PCb源文件
    發(fā)表于 09-26 14:20 ?0次下載