0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文知道STM32G071 PD0 PD2引脚使用注意事项

STM32单片机 来源:陈翠 2019-07-21 10:30 次阅读

背景

STM32G071的PD0,PD2作为外部中断使用,外部接10K上拉电阻拉到3.3V。外部设备被触发后电平变为低电平,平常保持高电平信号

问题

在以上背景下,按道理外部设备正常时(未触发中断),IO口输入电平应该是3.3V。但是实际上测量到的却是0.9V,这跟触发后的0V,同样会被单片机识别为低电平,故无法产生电平跳变而触发中断。

分析解决

查阅STM32G0数据手册可知:

这个引脚的电平类型为FT_c,我们知道FT是容忍5V的意思,那么FT_c是什么意思?不妨看看说明:

然后去用户手册查看GPIO相关说明,找到以下内容:

基本上了解状况了,再看一下相关寄存器说明:

具体说明:

看了以上说明,基本明白怎么操作了。在初始化IO的时候,应该把SYSCFG registers的UCPD2_STROBE位设置一下就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也是这样的。如果我们不需要这个下拉电阻,需要按照上面的操作调整一下。

那么为什么STM32G071有这样的设置呢?看下面IO功能即可知道,这几个引脚其实是下面几个管脚的复用脚。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2239

    文章

    10671

    浏览量

    348720

原文标题:技术分享 | STM32G071 PD0 PD2引脚使用注意事项

文章出处:【微信号:STM32_STM8_MCU,微信公众号:STM32单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32G071G070在未烧写程序时,MCU上电其PB7输出的是个高电平,为什么?

    STM32G071G070在未烧写程序时,MCU上电其PB7输出的是个高电平,因为此接的是个蜂鸣器,MCU上电
    发表于 03-29 08:13

    请问如何设置stm32f051的PD0PD1为GPio口

    如何设置stm32f051的PD0PD1为GPio口,以下程序只能直输出高电平,请大神帮忙RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOD, EN
    发表于 01-08 09:22

    请问PD2引脚没用到战舰开发板以太网历程中去吗?

    我现在看了看以太网例程 ENC28J60有个中断输出引脚 战舰板子上连接到了PD2 但是关于PD2的操作 我只是看到了初始化PD2位推挽输出,然后就再也没有找到关于
    发表于 07-31 04:35

    嵌入式系统的核心器件:STM32G071开发事项

    ,有没有需要特别避过的坑?小马哥,资深蝶粉,在G0开发中,被PD0PD2引脚使用困扰,让我们起复盘小马哥踩过的坑和他的解决之道。
    发表于 12-06 09:39

    将CAN引脚重映射到了PD0PD1引脚

    【说明】程序将CAN引脚重映射到了PD0PD1引脚上。由于打开了Loopback模式,所以这两个引脚不需要接任何器件,悬空就行。必须要设置
    发表于 08-19 08:47

    STM32G070的4个引脚相关资料推荐

    #STM32G070踩坑1. PB15/PA8默认4K下拉Bit 10 UCPD2_STROBE: PD0 and PD2 pull-down configuration strobe
    发表于 12-10 08:10

    引脚PD2锁存问题的解决方案

    文章目录方案引脚PD2锁存问题方案二:直接对LCD部分函数进行修改方案三:定时器方式下LED模块不受控制关于蓝桥杯这个LED模块,如果想控制的效果如你所愿,其实并非常的简单。在这里我提供了三种
    发表于 12-15 08:26

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

    CH32F203,PD0,PD1作为GPIO不受控是什么原因?代码如下:GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz
    发表于 06-16 07:42

    CHV203C8T6的OSC_IN和OSC_OUT重映射为PD0/PD1使用程序会停止运行如何解决?

    使用芯片内部HSI,将OSC_IN和OSC_OUT引脚重映射为PD0PD1.在程序中只能将PD0PD1不能设置为推挽输出模式,设置为推挽
    发表于 09-09 06:02

    使用带有stm32g071rb76处理器的usb-pd系统,为什么只有个CC引脚?

    我正在使用带有 stm32g071rb76 处理器的 usb-pd 系统。该处理器上有 2 个 CC 引脚。但是当我使用stm32g0b1k
    发表于 12-30 07:13

    STM32F103C8引脚PD0PD1不能作为输出要怎么解决?

    我把stm32f103c8的所有管脚配置成输出。所有引脚都在切换,只有 PD0PD1 没有切换。我使用的是 stm32f103c8 的
    发表于 01-04 09:00

    如何连接STM32G071进行USB Type-C PD充电?

    和 D- 以允许 5V 负载以更高的功率(DCP)充电?我们的计划是从自主 USB PD 充电 IC 切换到 STM32G071
    发表于 01-10 07:45

    STM32G071KBT6“GP版”与“PD版”的区别是什么?

    我正在查看 STM32G071KBT6 的数据表,其中些封装显示了两次,次是“GP 版”,次是“PD 版”GP和
    发表于 01-12 07:48

    PD0内部上拉与PD1内部上拉起工作,读取的数值与实际不符是为什么?

    stm32g071cbu 板上尝试了这段代码,结果是样的(没有按钮,但是当 PD0PD1 都设置为带上拉的数字输入时,PD1 有
    发表于 02-01 08:21

    STM32G071 PD0 PD2引脚使用注意事项

    STM32G071PD0,PD2作为外部中断使用,外部接10K上拉电阻拉到3.3V。外部设备被触发后电平变为低电平,平常保持高电平信号。
    发表于 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>