请教一个问题,单片机原理做输入口时不接上拉下拉,检测端口电平,会不会从外部向io口内

查看: 698|回复: 3
请问单片机IO口接上拉电阻会提高驱动能力吗
我用的STC的芯片,IO口输出能力只有μA级别,请问接上拉电阻能提高驱动能力吗,如果要输出20~100mA的话,需要接多大的上拉电阻呢
一般的单片机除了P0口外都内置了上拉电阻。
需要提供驱动能力,必须加三极管和电阻配合使用
加上拉不是提高驱动的,要提高驱动可以考虑加驱动电路,三极管了什么的!
站长推荐 /1
《磁性元件与电源》是大比特资讯所出版的杂志,其内容包括对磁性元件与电源行业的市场解读、行业要闻、产业观察、活动报道、论坛知道、技术文献,以及厂商索引。
Weibo Weixin02单片机IO口操作
其实真的不能再简单了哦,就是三个寄存器。
1.PxSEL:设置某一个的IO口是作为基本的IO口还是作为第二功能的接口来使用。(0:基本IO,1:外设功能)
2.PxDIR:设置作为基本功能的IO口到底是作为输入还是输出使用。(0:输入,1:输出)
3.PxINP:设置某一个IO口的输入模式,上下拉还是三态模式,如果要具体指明上拉还是下拉,需要配合P2INP【5:7】这三位分别对应P0---P2这三组。(0:上拉,1:下拉)
ADC采集的时候用三态输入
4.注意,P2.0---P2.2这三个IO口不区分基本IO还是外设功能。
5.2530一共四十个IO,但是我们用到的只有21个,实质上中间还有一个大IO,所以是41个IO。这21个IO是P0和P1分别是8个,还有P2的5个。
6.上电初始化以后默认所有寄存器都是0.
补充内容:
1、掌握Zigbee无线模块基本工作电路。
2、做Zigbee无线模块,和TI CC2530基本工作电路有什么不同。
多出了一块复位电路;
从CC2530芯片直接引出下载的相关5根线,为CC2530下载程序。
3、学会随心所欲的控制所有口子的输入输出。
输出怎么配置:
需要让P1_0处于普通IO口模式,非是偏上外设的模式 P1SEL 的第0位 为0
//管理所有IO处于普通IO还是偏上外设,由P0SEL P1SEL P2SEL 决定
让P1_0处于输出状态,非输入状态
找到P1DIR 第0位 让它等于1
//让所有IO口处于输入状态还是输出状态由P0DIR P1DIR P2DIR 决定
输入怎么配置:
让P0_6处于普通IO口,非偏上外设模式 P0SEL 的第6位为0
让P0_6处于输入状态,非输出状态
P0DIR 的第6位为0
让P0_6处于上拉、下拉或者三态中的一种状态
if(1==P0_6)
{//检测到的是高电平
{//检测到的P0_6外部是低电平
LED模块文件
#ifndef __74LS164_8LED_H__
#define __74LS164_8LED_H__
#include&ioCC2530.h&
LS164_DATA
unsigned char
void LS164_Cfg();
void LS164_BYTE(UCHAR Data);//P1.3
实现文件:
#include&ioCC2530.h&
#include"74LS164_8LED.h"
static UCHAR LED_Map[]={0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x00,0xFF};
void LS164_Cfg()
P1SEL &=~0x0C;//xxxx 00xx
配置为普通IO模式
P1DIR |=0x0C;//xxxx 11xx
配置为输出模式
void LS164_BYTE(UCHAR Index) //P1.3
UCHAR i=0;
UCHAR Data=LED_Map[Index];
for(;i&8;i++)
if(0x80 & Data)
LS164_DATA=1;
LS164_DATA=0;
Data=Data && 1;
LS164_CLK=0;
LS164_CLK=1;
没有更多推荐了,查看: 13362|回复: 26
使用51单片机时P1、P2、P3也需要外接上拉电阻吗???
我看手册上明明说的是作为IO口使用时P0需要外接上拉电阻,P1、P2、P3不需要外接上拉电阻。。
可是我们的产品上电路图里面却给所有的IO都外接了上拉电阻!!!
我说,没必要外接,而且全接上拉电阻会时PCB不太好布线!!!可领导说,人家都接的,接上稳定!!!
不知大家在产品上使用51单片机时是如何处理这个问题的!!!接上上拉电阻真得会使产品更稳定吗???
貌似是这么回事噢.无用的IO都上拉
作为io口时外接上拉电阻抗干扰能力会更强点
瞎扯吧,普通51的P0内部没有上拉,所以作为普通IO使用必须上拉,否则是高阻状态。其它引脚内部都有上拉的。
STC等改进的都是可选的,一般默认已经上拉。
如果51的普通单片机引脚是弱上拉情况下,如果想高电平驱动外部设备,比如NPN三极管,高电平点亮LED啥的,需要加强上拉,一般1K-4K7。
回复【2楼】zbn2010
作为io口时外接上拉电阻抗干扰能力会更强点
-----------------------------------------------------------------------
和抗干扰无关,主要是驱动能力不行。
P1、P2、P3不需要外接上拉电阻!
P1、P2、P3不需要外接上拉电阻!
回复【1楼】skynet&&青青草原
-----------------------------------------------------------------------
我知道要上拉,关键是内部有上拉了,外部就不需要了吧!!!
回复【楼主位】XIVN1987 小显
-----------------------------------------------------------------------
不需要上拉电阻的。
回复【3楼】gongnn&&魔法师
-----------------------------------------------------------------------
大侠说的和书上以及手册上说的都是这样,应该错不了!!!
那我还是把那几个上拉电阻删掉吧!!
作为输入口,加上拉电阻可以提高抗干扰能力,作为输出口,加上拉可以提高带负载能力,唯一缺点就是增加了功耗
回复【4楼】gongnn&&魔法师
回复【2楼】zbn2010
作为io口时外接上拉电阻抗干扰能力会更强点
-----------------------------------------------------------------------
和抗干扰无关,主要是驱动能力不行。
-----------------------------------------------------------------------
我说的是做io口时。
支持3楼的解释。普通8051的P0口作复用时可以不接上拉电阻,作通用IO口时,因为是OC电路所以需要加上拉电阻。其它的IO口都有内部上拉电阻,加上拉电阻可以加强驱动能力。
不用加,内部有,P0要加
回复【3楼】gongnn 魔法师
-----------------------------------------------------------------------
想请问大虾那个上下拉阻值是怎样计算出来的。。。
回复【12楼】LXM_0922
支持3楼的解释。普通8051的p0口作复用时可以不接上拉电阻,作通用io口时,因为是oc电路所以需要加上拉电阻。其它的io口都有内部上拉电阻,加上拉电阻可以加强驱动能力。
-----------------------------------------------------------------------
回复【楼主位】XIVN1987 小显
-----------------------------------------------------------------------
接不接上拉电阻要得看情况了,一般51去驱动小电流的芯片或是对芯片的时序不是很严格的话P1 P2 P3口就可以不要的
P0口做i/o口需要加上上拉电阻,其他的i/o口都不需要加上拉电阻(自带电阻)
只用P0口需要加上拉& &其他IO口只有驱动能力不足时才加.和稳定无关.
回复【10楼】chess01&&潜水员
作为输入口,加上拉电阻可以提高抗干扰能力,作为输出口,加上拉可以提高带负载能力,唯一缺点就是增加了功耗
-----------------------------------------------------------------------
支持这种说法。51的上拉很弱的,应该在几十K,做为输入时比较容易受到干扰,比如你做按键时,可能用手碰下那个口都会有动作,所以加上拉后可以更稳定。
作为输出时就是提高带负载能力了。
加上上拉,驱动能力强点,因为整个芯片的IO驱动能力小于50ma
加上拉驱动能力强一些。
P0要上拉电阻,P1 P2 P3内部有上拉电阻
加上拉回复【20楼】lusson
回复【10楼】chess01&&潜水员
作为输入口,加上拉电阻可以提高抗干扰能力,作为输出口,加上拉可以提高带负载能力,唯一缺点就是增加了功耗
-----------------------------------------------------------------------
支持这种说法。51的上拉很弱的,应该在几十k,做为输入时比较容易受到干扰,比如你做按键时,可能用手碰下那个口都会有动作,所以加上拉后可以更稳定。
作为输出时就是提高带负载能力了。
-----------------------------------------------------------------------
支持这种说法。如果是悬空的,加上抗干扰,如果输出提供带负载能力...就是领导理解的“更稳定”。
學習了學習力&&P1P2P3口不需要上啦!
熬夜一天,终于明白了,51还是加上上拉电阻好点。
以前用的是32的单片机,内部上拉,省事。
这两天有一个小东西,用了STC的一个带AD的,如何设置也打不开内部上拉电阻,得了,板子上再焊电阻吧。
期待32的低价格产品。
阿莫电子论坛, 原"中国电子开发网"
, 原www.ourdev.cn, 原www.ouravr.com单片机、电路板
连接器、接插件
其他元器件
单片机的几种IO口配置
单片机的几种IO口配置
摘要:实现了一种全集成可变带宽中频宽带低通滤波器,讨论分析了跨导放大器-电容(OTA&C)连续时间型滤波器的结构、设计和具体实现,使用外部可编程电路对所设计滤波器带宽进行控制,并利用ADS软件进行电路设计和仿真验证。仿真结果表明,该滤波器带宽的可调范围为1~26 MHz,阻带抑制率大于35 dB,带内波纹小于0.5 dB,采用1.8 V电源,TSMC 0.18&m CMOS工艺库仿真,功耗小于21 mW,频响曲线接近理想状态。关键词:Butte
在单片机学习、开发和应用中,IO口的配置对功能的实现起着重要的作用,下面介绍常见的四种配置,而现在很多单片机都兼有这四种配置,可供选择。一.准双向口配置如下图,当IO输出为高电平时,其驱动能力很弱,外部负载很容易将其拉至低电平。当IO输出为低电平时,其驱动能力很强,可吸收相当大的电流。准双向口有三个上拉晶体管,一个“极弱上拉”,当端锁存器为逻辑“1”时打开,当端口悬空时,“极弱上拉”将端口上拉至高电平。第二个上拉晶体管为“弱上拉”,当端口锁存器为逻辑“1”且端口本身也为“1”时打开,此上拉提供的电流,使准双向口输出为“1”。如果此时端口被外部装置拉到逻辑“0”时,通过施密特触发器,控制“弱上拉”关闭,而“极弱上拉”维持开状态,为了把这个端口拉低,外部装置必须有足够的灌电流能力,使管脚上的电压,降到门槛电以下。第三个上拉晶体管为“强上拉”,当端口锁存器由“0”跳变到“1”时,这个上拉用来加快端口由逻辑“0”到逻辑“1”的转换速度。准双向口做为输入时,通个一个施密特触如器和一个非门,用以干扰和滤波。准双向口用作输入时,可对地接按键,如下图1,当然也可以去掉R1直接接按键,当按键闭合时,端口被拉至低电平,当按键松开时,端口被内部“极弱上拉”晶体管拉至高电平。当端口作为输出时,不应对地外接LED如图形控制,这样端口的驱动能力很弱,LED只能发很微弱的光,如果要驱动LED,要采用图3的方法,这样准双向口在输出为低时,可吸收20mA的电流,故能驱动LED。图4的方法也可以,不过LED不发光时,端口要吸收收很大电流。二.开漏输出配置这种配置,关闭所有上拉晶体管,只驱动下拉晶体管,下拉与准双向口下拉配置相同,因此只能输出低电平(吸收电流),和高阻状态。不能输出高电平(输也电流)。如果要作为逻辑输出,必须接上拉电阻到VCC。这种配置也可以通过上图3和图4来驱动LED。&
型号/产品名
深圳优耐检测技术有限公司
深圳优耐检测技术有限公司
深圳优耐检测技术有限公司
深圳优耐检测技术有限公司
深圳优耐检测技术有限公司扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
请问一下:什么是上拉电阻、下拉电阻?为什么要接?单片机IO口在什么情况下应接上拉电阻?什么情况下应接下拉电阻?
作业帮用户
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
顾名思义,上拉就是把电平拉高(一般到电源),下拉就是拉低(一般到地).上拉主要是为了提高灌电流驱动能力,相当于从电源借点儿功率到IO口,下拉主要是在IO口功率足够的情况下,为了保护IO口,静态时为0电平.
为您推荐:
其他类似问题
扫描下载二维码

我要回帖

更多关于 单片机编程用什么语言 的文章

 

随机推荐