【每日答疑】、关于上拉电阻的问题,有一个比较朦胧不太确定的疑问:STM32单片机的IO口,可以在程序
2020-07-07 23:42
1091 查看
关于上拉电阻的问题,有一个比较朦胧不太确定的疑问:STM32单片机的IO口,可以在程序中设置为输出上拉或者输出下拉模式,而我在设计IO硬件电路的时候,一般会加一个上拉电阻,程序中也会把IO口设置为输出上拉模式,那么我想问的是,是不是在硬件上,这个上拉电阻可以节省掉啊?这样就节省了一个电阻的价格。如果我节省掉这个上拉电阻,会带来啥样的后果呢?
(1)首先我们鼓励同学这样的思考,很多人有疑问但是好像别人从来没有这么做过,或者说前辈也没告诉我,这个时候我就不敢去尝试,不是这样的,大牛的成长之路都是这样一边学习一边质疑一边勇敢的去验证自己的假想
(2)然后针对于我们这位同学的问题,关注B站纪客老白我可以确切的高速大家,程序中也会把IO口设置为输出上拉模式,硬件上确实是可以省掉这个上拉电阻的;
(3)但是一般我们单片机内部的上拉都是弱上拉即上拉电阻比较大,其驱动动力较弱,所以外边的上拉电阻能不能省则主要取决于具体的应用
(4)比如说如果我们是按键输入,则没有任何问题,因为我们的按键是不存在驱动能力的问题,所以可以直接省掉,然后内部配置成上拉电阻
(5)针对于MCU等上下拉电阻的阻值选择原则
A.从功耗以及灌电流角度考虑,我们希望其功耗小,灌电流小,所以从这角度而言我们应该选择大电阻,因为电阻大则电流小。
B.从驱动能力而言我们希望其电阻小,因为电阻小则电流大则驱动能力强
C.对于高速电路,我们希望其上拉电阻不要太大,因为会使得边沿信号变缓
综合考虑以上三点,一般上下拉电阻都是在通常在1k到10k之间
相关文章推荐
- Springboot1
- 负载均衡
- 从0开始搭建基于hexo个人博客(三、上传第一篇文章)
- c++:acm从文件输入输出
- ssm5 判断登录用户角色
- JAVA数据类型及运算符
- 写了几天的小项目
- Javase复习系列——网络编程
- 初学Java---面向对象编程-多态学习
- springboot整合rabbitmq序列化与反序列化
- c++:getchar(), gets(), puts()等
- ssm4模糊查询,批量删除
- Vue基础入门(Vue指令篇)
- c++实现---数字在排序数组中出现的次数
- 常用Dos命令
- Spring Boot(1)
- 解决Clion输出中文乱码
- 新冠疫情可视化(7月7日,7月8日)
- 性能测试的基本概念
- Arduino+AS608指纹锁避坑记