PIC16F877单片机的5个端口RA~RE各具什么特色?分别适用于什么场合?

PIC16F877单片机的5个端口RA~RE各具什么特色?分别适用于什么场合? 谁能详细的介绍下,谢谢

1. PORTA 总共有6个位(RA0~RA5),PORTA端口模块有3个特殊的寄存器:端口数据寄存器PORTA,端口方向控制寄存器TRISA,A/D转换控制寄存器ADCIN1;PORTA端口各引脚的所复合的功能相同,各引脚的内部结构也不一致。对三个寄存器的设置可控制PORTA端口作为数字I/O端口的应用,而系统重置后,PORTA自动成为模拟输入状态,可读取模拟输入讯号;

PORTB 是8位宽度的数字I/O端口(RB0~RB7),一般只有RB6和RB7两个引脚存在复用功能,它们在芯片编程烧写和在线调试时,RB6作为编程串行时钟引脚PGC,RB7作为编程串行数据引脚PGM,这是一种特殊模式的功能复用类型,它不可能出现在芯片正常工作时。PORTB模块有关的特殊寄存器有4个,PORTB端口作为数字I/0端口的应用可以撰写程序规划输入输出方向、状态;

PORTC 总共有8个位(RC0~RC7),有关的特殊寄存器有2个,单片机上电之后,输出数据寄存器PORTC的值随机值,方向寄存器TRISC的值全为1,因此,起始状态下各个引脚均处于输入方式,对外呈现高阻状态,通过定义TRISC寄存器的值,可以分别指定引脚设置为输入还是输出方式。除了可作为数位I/O外,还和一些特殊功能的周边电路共享接脚;

PORTC 是8位宽度的双向数字I/O端口(RC0~RC7),有关的特殊寄存器有3个,它在基本输入/输出功能的基础上,增加并行从动端口功能;另外每个引脚作I/O引脚使用时,输入信号都要经过其内部的施密特触发输入缓冲器,对于输入信号波形可以起整形作用,而工作于并行从动端口方式时则是经过TTL缓冲器输入。PORTC可作一般数字I/O,并与PSP(Parallel Slave Port)并列传输接口共享。当整体系统需要多单片机时,彼此可以经由并列传输接口来快速传输资料;
PORTE 只有3条引脚的双向I/O端口(RE0~RE2),有关的特殊寄存器有3个,它在基本输入/输出功能的基础上,增加并行从动端口,模拟量输入功能。单片机上电之后,输出数据寄存器PORTE的值随机值,方向寄存器TRISC的值全为1,因此,起始状态下各个引脚均处于输入方式,对外呈现高阻状态,通过定义TRISE寄存器的值,可分别指定引脚设置为输入还是输出方式。

2.由RA4的内部结构可知,RA4和PORTA端口的其它端口有很大的不同,它没有被复用成模拟信号输入。一般其作用有个:普通数字I/O端口和定时TMR0的外部数字脉冲输入端口(TOCKI)。RA4特征如下:

(1)输入时与其它端口一样,都是呈现高阻态。

(2)输出低电平时,与其它端口一样,吸入端口外部电路的电流,引脚上的电压接近0V。

(3)输出高电平时,与其它端口有很大不同,RA4端口只有一个N沟道场效应驱动管,没有P沟道场效应驱动管,所以RA4引脚处于漏极开路状态,输出高电平时为悬空状态。改进方法:尽量设计成低电平有效,若需要高电平来驱动外围电路时,必须在RA4引脚上外加上拉电阻。上拉电阻的取值范围为1KΩ~10KΩ左右。

3.是,选项寄存器POTION也是一个可读/写的寄存器,包含TMR0,分频器和端口RB有关的控制位。端口RB0与外部中断INT共同一引脚,与该引脚有关的2个控制位含义如下:

1=RB 端口弱上拉电路禁止

0=RB 端口弱上拉电路使能

所以该端口内部每条引脚的弱上拉电路是不可单独编

参考资料:http://wenwen.soso.com/z/q188974023.htm

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-10-14
RA0/AN0 bit0 TTL Input/output or analog input.
RA1/AN1 bit1 TTL Input/output or analog input.
RA2/AN2 bit2 TTL Input/output or analog input.
RA3/AN3/VREF bit3 TTL Input/output or analog input or VREF.
RA4/T0CKI bit4 ST Input/output or external clock input for Timer0. Output is open drain type.
RA5/SS/AN4 bit5 TTL Input/output or slave select input for synchronous serial port or analog input.

RB0/INT bit0 TTL/ST(1) Input/output pin or external interrupt input. Internal software
programmable weak pull-up.
RB1 bit1 TTL Input/output pin. Internal software programmable weak pull-up.
RB2 bit2 TTL Input/output pin. Internal software programmable weak pull-up.
RB3/PGM(3) bit3 TTL Input/output pin or programming pin in LVP mode. Internal software
programmable weak pull-up.
RB4 bit4 TTL Input/output pin (with interrupt-on-change). Internal software programmable
weak pull-up.
RB5 bit5 TTL Input/output pin (with interrupt-on-change). Internal software programmable
weak pull-up.
RB6/PGC bit6 TTL/ST(2) Input/output pin (with interrupt-on-change) or In-Circuit Debugger pin.
Internal software programmable weak pull-up. Serial programming clock.
RB7/PGD bit7 TTL/ST(2) Input/output pin (with interrupt-on-change) or In-Circuit Debugger pin.
Internal software programmable weak pull-up. Serial programming data.

RC0/T1OSO/T1CKI bit0 ST Input/output port pin or Timer1 oscillator output/Timer1 clock input.
RC1/T1OSI/CCP2 bit1 ST Input/output port pin or Timer1 oscillator input or Capture2 input/
Compare2 output/PWM2 output.
RC2/CCP1 bit2 ST Input/output port pin or Capture1 input/Compare1 output/
PWM1 output.
RC3/SCK/SCL bit3 ST RC3 can also be the synchronous serial clock for both SPI
and I2C modes.
RC4/SDI/SDA bit4 ST RC4 can also be the SPI Data In (SPI mode) or data I/O (I2C mode).
RC5/SDO bit5 ST Input/output port pin or Synchronous Serial Port data output.
RC6/TX/CK bit6 ST Input/output port pin or USART Asynchronous Transmit or
Synchronous Clock.
RC7/RX/DT bit7 ST Input/output port pin or USART Asynchronous Receive or

RD0/PSP0 bit0 ST/TTL(1) Input/output port pin or parallel slave port bit0.
RD1/PSP1 bit1 ST/TTL(1) Input/output port pin or parallel slave port bit1.
RD2/PSP2 bit2 ST/TTL(1) Input/output port pin or parallel slave port bit2.
RD3/PSP3 bit3 ST/TTL(1) Input/output port pin or parallel slave port bit3.
RD4/PSP4 bit4 ST/TTL(1) Input/output port pin or parallel slave port bit4.
RD5/PSP5 bit5 ST/TTL(1) Input/output port pin or parallel slave port bit5.
RD6/PSP6 bit6 ST/TTL(1) Input/output port pin or parallel slave port bit6.
RD7/PSP7 bit7 ST/TTL(1) Input/output port pin or parallel slave port bit7.

RE0/RD/AN5 bit0 ST/TTL(1)
I/O port pin or read control input in Parallel Slave Port mode or analog input:
RD
1 = Idle
0 = Read operation. Contents of PORTD register are output to PORTD
I/O pins (if chip selected)
RE1/WR/AN6 bit1 ST/TTL(1)
I/O port pin or write control input in Parallel Slave Port mode or analog input:
WR
1 = Idle
0 = Write operation. Value of PORTD I/O pins is latched into PORTD
register (if chip selected)
RE2/CS/AN7 bit2 ST/TTL(1)
I/O port pin or chip select control input in Parallel Slave Port mode or analog input:
CS
1 = Device is not selected
0 = Device is selected

PIC16F877单片机的5个端口RA~RE各具什么特色?分别适用于什么场合?
1. PORTA 总共有6个位(RA0~RA5),PORTA端口模块有3个特殊的寄存器:端口数据寄存器PORTA,端口方向控制寄存器TRISA,A\/D转换控制寄存器ADCIN1;PORTA端口各引脚的所复合的功能相同,各引脚的内部结构也不一致。对三个寄存器的设置可控制PORTA端口作为数字I\/O端口的应用,而系统重置后,PORTA自动成为...

PIC 16F877单片机的5个端口(RA~RE)各具什么特色?分别适用于什么...
这些口主要差别是,A口有6个引脚,RA0-RA5除了RA4为漏极开路外,它只能是数字口,其他5个引脚都是可以作为模拟转换的输入口,还有RE口,它只有3个引脚,与RA口一样,这三个引脚也是可以作为模拟转换的输入口,这样一共有8个引脚可以作为模拟输入的引脚。RB口有8个,RB0-RB7,RB0可作为INT中断,...

PIC16F877A RA口为普通I\/O口输出怎么设置?
2012-10-08 pic单片机怎么设置C口为普通I\/O口 1 2013-09-24 PIC16F877单片机的5个端口RA~RE各具什么特色?分... 5 2013-09-19 单片机怎么用c语言设置I\/O口输入或输出 3 2013-09-05 stc12c5a16s2单片机pwm怎么换成普通I\/O口输出... 2 2013-09-12 单片机如何用c语言来设置I\/O口,使I\/O口...

高手你好,单片机PIC16F887与PIC16F877A主要有什么区别?编程时要注意...
主要区别,887是纳瓦系列,功耗比877或877a要低;887有内部RC振荡器,887\/887A没有内部振荡器;887有一个普通CCP模块,一个增强型CCP模块,877A只有两个普通的CCP模块;887有十四个10位AD输入通道,877只有八个10位AD输入通道 887可以使用内部复位电路(RE3可以做IO或者做复位引脚),877A无此功能;...

...想学习pic单片机。求pic16f877单片像51那样用串口下程序的简单电路图...
对于PIC16F877是利用芯片上的5个脚。Vpp(1pin)Vdd(11pin,32pin)Vss(12pin,31pin)PGC(39pin) PGD(40pin)这五个脚通讯。如果你的下载工具是PICkit2(或者PICkit3),下载线的外壳上应该有一个箭头标志的,这是第1pin。你要接在Vpp上,从这个开始第2pin接Vdd,第3pin接Vss(接地),...

pic 16f877a 头文件
也就汇编的头文件PIC16F877A.inc和C语言的pic1687x.h这两种文件。 想要找汇编的头文件,只要你的电脑装了MPLAB就行,直接在MPLAB的安装目录下找即可,比如我的MPLAB7.50是装在D盘的,我要找这个汇编的头文件就是在D:\\Program Files\\Microchip\\MPASM Suite这个目录里。 而PIC单片机官方没有出针对PIC16F877A的C语言...

100分求dali协议的所有命令?
主控制器采用PIC16F877 单片机作为CPU。 PIC16F87X系列单片机是美国Microchip 公司的高性能 8 位CMOS 微处理器。PIC16F877 共有5 个I\/ O 端口, 分别是RA、RB、RC、RD、RE ,除了通用I\/ O 功能外,这些端口还具有各自不同的专用功能,例如PWM 输出、计数器输入、外部电平中断、I2C 总线接口等。

...增加单片机的灌电流能力,所用单片机为pic16f877a
不能增加负载能力.这和硬件的物理结构有关.看了一下datasheet,好像16F877A的电气特性没有封装的区分.整个MCU最大拉电流是300mA,最大灌电流是250mA

pic16f877a单片机12m晶振产生58K方波,哪位高手帮忙用编程给写个程序啊...
unsigned int16 count=0;void main(){ set_tris_a(0xFF);set_tris_b(0x00);setup_timer_0(RTCC_INTERNAL|RTCC_DIV_256);enable_interrupts(GLOBAL);while(TRUE){ enable_interrupts(INT_TIMER0); \/\/start timer0 } } int_timer0 void interval(){ set_timer0(0xFE); \/\/改变初值...

PIC16877单片机和PIC16F877单片机有什么区别
PIC16877单片机和PIC16F877单片机,PIC16877的16后面应该还有一字母.两种芯片功能性能都一样,不是F的,一般的是一次性烧写程序的芯片.PIC16F877单片机是可重新擦除重写程序多次的芯片.

相似回答