请高手帮忙解答,简述51单片机P1,P3的主要功能和性能特点

作者&投稿:杭咐 (若有异议请与网页底部的电邮联系)
求浙江省2013年10月高等教育自学考试 单片机原理及应用试题参考答案。 课程代码:02358,非常感谢。~

整套都需要做吗

51单片机p0p1p2p3口,都可以当准IO口使用,也就是既可以作输出口,也可以作输入口。
需要说明的是,P1口、P2口只是普通IO口,无特殊功能。P0口作输出口用时,需加上拉电阻;P0口有复用功能,当对外部存储器进行读写操作时,P0口先是提供外部存储器的低8位地址,供外部存储器地址锁存器锁存,然后充当数据线,用于写出或读入数据。P3口是特殊功能口,所有管脚都有特殊功能,分别是:
P3.0----RXD,串行通信输入口,不使用串行通信功能时,可做普通IO口使用
P3.1----TXD,串行通信输出口,不使用串行通信功能时,可做普通IO口使用
P3.2----INT0,外部中断0输入口,不使用外部中断0功能时,可做普通IO口使用
P3.3----INT1,外部中断1输入口,不使用外部中断1功能时,可做普通IO口使用
P3.4----T0,定时器0外部计数输入口,不使用定时器0外部计数功能时,可做普通IO口使用
P3.5----T1,定时器1外部计数输入口,不使用定时器1外部计数功能时,可做普通IO口使用
P3.6----WR,外部存储器写信号,不使用外部存储器写功能时,可做普通IO口使用
P3.7----RD,外部存储器读信号,不使用外部存储器读功能时,可做普通IO口使用

P1口
P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。
作为输入口时,锁存器置1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低电平,也可由内部上拉电阻拉成高电平,正因为这个原因,所以P1口常称为准双向口。
需要说明的是,作为输入口使用时,有两种情况:
1.首先是读锁存器的内容,进行处理后再写到锁存器中,这种操作即读—修改—写操作,象JBC(逻辑判断)、CPL(取反)、INC(递增)、DEC(递减)、ANL(与逻辑)和ORL(逻辑或)指令均属于这类操作。
2.读P1口线状态时,打开三态门G2,将外部状态读入CPU。

P3口
P3口的电路如图4所示,P3口为准双向口,为适应引脚的第二功能的需要,增加了第二功能控制逻辑,在真正的应用电路中,第二功能显得更为重要。由于第二功能信号有输入输出两种情况,我们分别加以说明。
P3口的输入输出及P3口锁存器、中断、定时/计数器、串行口和特殊功能寄存器有关,P3口的第一功能和P1口一样可作为输入输出端口,同样具有字节操作和位操作两种方式,在位操作模式下,每一位均可定义为输入或输出。
我们着重讨论P3口的第二功能,P3口的第二功能各管脚定义如下:
·P3.0 串行输入口(RXD)
·P3.1 串行输出口(TXD)
·P3.2 外中断0(INT0)
·P3.3 外中断1(INT1)
·P3.4 定时/计数器0的外部输入口(T0)
·P3.5 定时/计数器1的外部输入口(T1)
·P3.6 外部数据存储器写选通(WR)
·P3.7 外部数据存储器读选通(RD)

对于第二功能为输出引脚,当作I/O口使用时,第二功能信号线应保持高电平,与非门开通,以维持从锁存器到输出口数据输出通路畅通无阻。而当作第二功能口线使用时,该位的锁存器置高电平,使与非门对第二功能信号的输出是畅通的,从而实现第二功能信号的输出。对于第二功能为输入的信号引脚,在口线上的输入通路增设了一个缓冲器,输入的第二功能信号即从这个缓冲器的输出端取得。而作为I/O口线输入端时,取自三态缓冲器的输出端。这样,不管是作为输入口使用还是第二功能信号输入,输出电路中的锁存器输出和第二功能输出信号线均应置“1”。

请高手帮忙解答,简述51单片机P1,P3的主要功能和性能特点
答:P1口 P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至"1",此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。作为输入口时,锁存器置1,Q(非)=0,T2截止,此时该位既可以把外部电路拉成低...

急!!51单片机高手帮忙(内容见补充说明)
答:LZ太菜了..还是给你解释解释吧.dispcode[] 段码表.用于显示0-9 A-F这种数值 dispbitcode[] 这个数码管选择位,因为动态扫描每次只能点亮一个,所以用这种形式 dispbuf[] 要显示的数值.只所以用 0, 0, 16, 0, 0, 16, 0, 0 disbuf[0-1] 这两个是用来显示秒的看代码 dispbuf[0]=second...

请高手帮个忙!51单片机两位数码管显示问题
答:不接驱动的话有两种现象,1)如果是AT89S51的话,根本就不会亮,或者说非常非常暗,因为AT89S51输出高电平的负载能力非常低,确切地说是没有负载能力的,所以是不能正常显示的,接了上拉电阻可以得到改善,不过有点危险,很容易烧芯片的;至于重影,要看程序,一般动态扫描都需要清屏,如果有清屏指令的话...

51单片机减法的问题,高手帮忙啊
答:先算出10001的16进制数:2711H MOV R2,#11H ;低8位 MOV R3,#27H ;高8位 CLR C ;清CY位的内容,减法时需要用它来算借位 MOV A,R0 ;送R0的值到A SUBB A,R2 ;低8位进行减运算,值送A,如果需要借位,CY位置1 MOV R0,A ;将A中的结果送回R0 MOV A,R1 ;送R1...

51控制单片机。求高手帮忙
答:1、你先要明确你的爬虫的结构及其动作要求,再根据传感器数量、动作单元数量(也就是你的伺服舵机数量)来决定单片机所需的端口数量 2、再明确AI的控制逻辑,这个决定了单片机的处理能力需求及片内程序空间的容量 3、最小系统搞不定这个课题,单片机的驱动能力有限,你需要根据你伺服的电流、电压的需求来...

单片机高手进来帮帮忙,高分,简答题
答:第 9 个数据即 D8 位具有特别的用途,可以通过软件搂控制它,再加特殊功能寄存器 SCON 中的 SM2 位的配合,可使 MCS-51 单片机串行口适用于多机通信。方式 2 的波特率固定,只有两种选择,为振荡率的 1/64 或 1/32 ,可由 PCON 的最高位选择。 c:方式 3 :方式 3 与方式 2 完全类似,...

求C语言高手帮忙解决一下程序问题,51单片机
答:第一个循环内Data = temp;直接把Data给赋值没了,如传输的数是0x7F,程序传数据是高位开始,传0了后,程序把Data = temp,就相当后面的7位给清0了。所以在没完成你要的数据的时候,要小心原始数据。把循环内 :temp = Data《 1; Data = temp; 改成 temp = temp 《 1;试试看,个人...

急!!~~51单片机高手进(内容见补充说明)
答:1KHz信号的周期就是1ms啊!程序中flag=0的这0.2s输出200个周期为1ms的1KHz方波,200x1ms=0.2s。因为定时时间是0.5ms,这期间会发生400次中断,每次将P1_0取反,所以高低电平各持续0.5ms,2次取反就是一个周期1ms。flag=1的这0.2s(也是400次中断)P1_0保持不变,也就是输出电平信号。

请单片机高手帮忙,不胜感激!!
答:1、对于第一个问题,我认为 yuquanhai258 的回答不正确,CPU不会响应。在51单片机中,CPU是在每个机器周期的S5P2期间采样每个中断源,并根据采样值更新中断标志寄存器TCON ; 然后CPU在下一个机器周期的S1期间按优先级顺序进行中断处理。这样,楼主的第一个问题就很明白了。当高优先级中断执行完前后,低...

怎样实现51单片机根据温度动态控制风扇转速,请高手帮帮忙!
答:给您思路:第一,你需要使用温控元件测温,比如DS18B20温度传感器。第二:你所需要使用的控制芯片可以选择单片机,比如STC89C55(带掉电参数保存功能)。第三:使用数码管或者LCD1602显示您所检测的温度或者显示您所需要设置的温度范围。第四:按键,根据你所需要的温度范围,根据按键来设置参数范围。第五:...