PIC单片机中 RBPU=0 端口内部上拉有什么作用
作者&投稿:玉霭 (若有异议请与网页底部的电邮联系)
<p>如PIC16F887的端口B为内部有上拉功能的端口,如果没有上拉,作为输入口,它是悬空的,这样这个引脚的电平是不定的,如果内部有上拉,则它是高电平的。</p>
<p>下图中的RB0程序设置为有内部弱上拉,RB3设置为不弱上拉,因此仿真运行时看到,按键都不按是,RB0为高电平(红色),而RB3为悬空(灰色),即电平不能确定。</p>
<p>如果不用内部弱上拉(如RB3),此时就要在外部加上一个电阻接到VCC,这就叫上拉。而叫弱上拉,是因为所加的电阻很大,电流很小的缘故。</p>
<p></p>
佛很苏迪: <p>弱上拉通常是作为输入时有用.</p> <p>如PIC16F887的端口B为内部有上拉功能的端口,如果没有上拉,作为输入口,它是悬空的,这样这个引脚的电平是不定的,如果内部有上拉,则它是高电平的.</p> <p>下图中的RB0程序设置为有内部弱上拉,RB3设置为不弱上拉,因此仿真运行时看到,按键都不按是,RB0为高电平(红色),而RB3为悬空(灰色),即电平不能确定.</p> <p>如果不用内部弱上拉(如RB3),此时就要在外部加上一个电阻接到VCC,这就叫上拉.而叫弱上拉,是因为所加的电阻很大,电流很小的缘故.</p> <p></p>
芦山县17031571882: PIC 单片机判断按键 pic16F886 - ?
佛很苏迪: WPUB: Weak Pull-up Register bit1 = Pull-up enabled0 = Pull-up disabled WPUB寄存器是设置PORTB引脚弱上拉的,相关位置1就会开启对应引脚的内部弱上拉功能.你改成下面的试一下.TRISB0=1; WPUB0=1; if(RB0==0) {//....}
芦山县17031571882: pic单片机RB口设置电平为0XF0,I/O设置为输入(TRISB=0XFF),能否检测到POTRB的电位是0XF0? - ?
佛很苏迪: 不能,RB口设为输入,你一读取RB口POTRB的点位就改变了,由外界决定.
芦山县17031571882: 单片机等一些设备上的RB端口中的RB是什么意思,具体解释下 - ?
佛很苏迪: PIC单片机的输入/输出端口由RA、RB、RC、RD、RD和RE共5个端口5个端口由33个I/O位组成. 类似于51的P0,P1,P2,P3.
芦山县17031571882: pic外部中断编程(rb0)怎样初始化 - ?
佛很苏迪: 你到底是要给RD口做中断还是做数据口?做普通输入输出的IO口的话,要修改TRISD寄存器,比如设置D口的高4位做输入,低4位做输出.那么就是把0赋给要做输出的位,把1赋值给做输入的位:BANKSEL TRISD ;换bank MOVLW 0XF0 ;先把数据送到W临时寄存器 MOVWF TRISD,F ; TRISD = 0XF0
芦山县17031571882: 单片机中DDRB=00fx什么意思 - ?
佛很苏迪: 这个是AVR单片机的IO口,也就是输入输出口线B口的引脚配置,如果配置成DDRB = 0XF0,则表示B口的高四位是输出,低四位是输入配置,如果配置成DDRB= 0XFF,则表示B口全部是输出模式.当然还可以配置成DDRB= 0XF1 0XF2 0XF4....
芦山县17031571882: (新手发问)如何让单片机的管脚输出低电平?? - ?
佛很苏迪: 1.对于传统的51单片机,在复位之后所有端口都输出1,即高电平,avr单片机则是portx=0x00,ddrx=0x00的高阻态,pic单片机也是这样. 2.如果你要让led受控,那应该反着接,即在端口输出0的时候才点亮led,另外对于常用的51单片机,高电平...
芦山县17031571882: 单片机中PORTA&=~BIT(PA4);是什么意思 - ?
佛很苏迪: 这是AVR单片机的一种赋值方式,举例如下:PORTB|=BIT(0); //B0口置1,其余各端口状态不变PORTB&=~BIT(1); //B1口置0,其余各端口状态不变PORTB|=BIT(2); //B2口置1,其余各端口状态不变PORTB&=~BIT(2); //B2口置0,其余各端口状态不变
芦山县17031571882: PIC单片机I/O端口的每个引脚的驱动能力是多少?每个端口的驱动能力是多少?整个芯片的驱动能力是多少? - ?
佛很苏迪: 对于PIC16F877A单片机来说,每个IO引脚的最大输出电流(拉电流)为20mA,最大输入电流(灌电流)为25mA.此外,端口A、B、E的最大输入电流总和与输出电流总和均为200mA,端口C、D的最大输入电流总和与最大输出电流总和也为200mA.不同的系列的驱动能力是不同的.请从芯片资料中查看.
芦山县17031571882: 单片机中sbit P0=P2^0是什么意思 - ?
佛很苏迪: 单片机中sbit P0=P2^0是一个位变量定义语句,意思是定义位变量P0为P2.0.但是从这句话本身来说,在编译时会出错的,因为P0是内部关键字,代表P0口,不能用来表示用户自定义变量.