点击蓝字关注

知识丨分享丨经验丨技巧

工程师的随身学堂

每一个电工最不愿意的见到的是:为 MCU 选型而烦恼

MCU 作为嵌入式系统的核心器件,其选型可以说是重中之重,成本、性能、开发难易.......

ST 新推出的新一代入门级利器 STM32G0 就是为了打破成本、性能、开发难易这个不可能三角!

接下来让我们来数数G0为你的新项目省下来的各种费用。

最让人激动的是,不但省下了这么多外围器件成本,而且G0本身的价格媲美同等配置的F0!

那么,在设计应用中,有没有需要特别避过的坑?

小马哥,资深蝶粉,在G0开发中,被PD0,PD2引脚使用困扰,让我们一起复盘小马哥踩过的坑和他的解决之道。

STM32G071  PD0 PD2引脚使用注意事

【背景】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功能即可知道,这几个引脚其实是:

PD0

UCPD2_CC1

PD1

UCPD2_CC2

PA8

UCPD1_CC1

PB15

UCPD1_CC2

也就是TYPE-C充电管理的相关引脚,所以会有这样的设置,关于TYPE-C相关知识,可以自行百度了解详情。

加入STM32粉蝶俱乐部,马上听课!

▼▼▼


©AI电堂课程重温计划

STM32G0新一代入门利器及USB Type-C PD技术深度解析

来电堂听课,找你要的设计秘笈!

都看到这了,赶紧用尽洪荒之力点个【在看】

gdal 使用 无法解析的外部_【小马哥学习笔记】STM32G071 PD0 PD2引脚使用注意事项...相关推荐

  1. python解析雷达数据_【学习笔记】使用python带时间戳提取rosbag中的图像和雷达数据...

    使用sick的TIM561雷达采集数据,topic nam是/scan,摄像头录制图像,topic name是/usb_cam/image_raw.脚本以下:python # coding:utf-8 ...

  2. 【SpringBoot】最新版2019Spring Boot配置解析,源码解析(速成SpringBoot)——学习笔记版【2】

    SpringBoot配置文件 文章目录 SpringBoot配置文件 四.配置文件 1.简介 2.YAML用法 2.1 简介 2.2语法 3.为属性注入值 3.1使用.yml配置文件 3.1编写.ym ...

  3. mysql中10049是什么错误_【学习笔记】Oracle数据库10049用于分析SQL解析笔记案例

    [学习笔记]Oracle数据库10049用于分析SQL解析笔记案例 时间:2016-11-05 13:54   来源:Oracle研究中心   作者:HTZ   点击: 次 天萃荷净 Oracle研究 ...

  4. 片偏移怎么计算_计算机网络学习笔记(四)之网络层

    点击蓝字关注我吧 越努力越幸运!!! 1 网络层的功能 1.1异构网络互联 网络的互联:指将两个以上的计算机网络,通过一定的方法, 用一种或多种通信处理设备(即中间设备)相互联接起来,以构成更大的网络 ...

  5. 嵌入式linux 添加中断,《嵌入式linux应用程序开发完全手册》中断控制器操作(外部中断)学习笔记...

    <嵌入式linux应用程序开发完全手册>中断控制器操作(外部中断)学习笔记 一.ARM中断体系 当一个"异常"发生时,或者说当收到一个中断触发信号时,ARM9将会自动完 ...

  6. sql md5函数_【学习笔记】常见漏洞:SQL注入的利用与防御

    第   21 课   SQL注入的利用与防御 课程入口(付费) 个人背景 李,本科,电子信息工程专业,毕业一年半,有JavaScript的,PHP,Python的语言基础,目前自学网络安全中. SQL ...

  7. 服务器每秒钟执行命令数量是什么_日常学习笔记.md

    ## ShedLock ShedLock不是一个`定时任务`框架,而是一个`保证定时任务在分布式环境中的合理执行`的辅助框架,保证定时任务在分布式环境中同一时间最多`只执行一次`.同时一个任务在执行时 ...

  8. php代码审计工具_【学习笔记】PHP代码审计入门:代码审计实例2

    第  35  课    代码审计实例之任意文件上传  课程入口(付费) 个人背景 李,本科,电子信息工程专业,毕业一年半,有JavaScript的,PHP,Python的语言基础,目前自学网络安全中. ...

  9. smbus使用 树莓派_树莓派学习笔记——I2C使用 PCF8574 Python SMBUS

    1.前言 树莓派的GPIO端口数量有限,可通过IO扩展芯片增加GPIO的数量,使得树莓派可以适应更多的应用.PCF8574为一款通过I2C总线扩展IO的芯片,单个PCF8574可扩展8个IO,一个I2 ...

  10. python字符串与列表与运算_[Python学习笔记1]Python语言基础 数学运算符 字符串 列表...

    这个系列是我在学习Python语言的过程中记录的笔记,主要是一些知识点汇总,而非学习教程,可供有一定编程基础者参考.文中偏见和不足难以避免,仅供参考,欢迎批评指正. 本系列笔记主要参考文献是官网文档: ...

最新文章

  1. JavaScript 复杂判断的更优雅写法
  2. P5431-[模板]乘法逆元2【递推】
  3. ubuntu 安装过程所需软件
  4. 使用 IntraWeb (38) - TIWAppForm、TIWForm、TIWBaseHTMLForm、TIWBaseForm
  5. 关于util.Date,sql.Date,sql.Time,sql.Timestamp以及他们和Clendar类的区别和联系
  6. livebos数据库
  7. css兼容360浏览器极速,CSS hack 360浏览器 极速模式与兼容模式
  8. 苹果开发者后台,修改付费app中银行账户信息时注意
  9. torch.utils.data.WeightedRandomSampler采样
  10. solidworks显示无法连接到服务器,SOLIDWORKS Electrical—无法连接协同服务器
  11. PS吸管工具用不了?
  12. 微信小程序之自定义组件的使用、介绍、案例分享
  13. 2-wireshark网络安全分析——MAC地址泛洪攻击
  14. 【3D视觉创新应用竞赛作品系列​】牲畜体表信息的三维重建,代码详尽
  15. java基础之封装数据类型
  16. 关于batch_size的理解
  17. 生物识别是未来的趋势——谭铁牛谈生物识别
  18. 四种游泳姿势的动画图解-【蝶泳、仰泳、自由泳、蛙泳】
  19. python数据挖掘(5.Apriori算法)
  20. HTML5期末大作业:XXX 网站设计——电影请以你的名字呼唤我(4页)HTML+CSS+JavaScript html网页制作期末大作业成品_网页设计期末作业

热门文章

  1. curl get请求_PHP 请求该用 cURL 还是 Guzzle ?
  2. 12. Django基础:模型层及ORM
  3. React:基础知识学习
  4. SQL:postgresql中合并多个查询结果UNION (ALL)
  5. CSS:position属性和z_index
  6. java课题设计实验报告,JAVA简单记事本程序设计实验报告
  7. CVPR2018论文阅读-Faster MPN-COV:迭代计算矩阵平方根以快速训练全局协方差池化
  8. UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb4 in position 176: in xxxx
  9. CVPR2022 | 移动端手部三维重建
  10. ElasticNet算法解析