单片机c32语言,单片机课件c32IO口.ppt

单片机课件c32IO口

3.2 单片机I/O口原理及应用 I/O口的特点 基本功能:输入、输出准双向工作 操作灵活:字节、位处理 输入方式:管脚、锁存器 附加功能:总线扩展、专用功能 驱动能力:P0更强,外接上拉电阻 数量:4口32bit(管脚) 要求:知其然,知其所以然 I/O口介绍 单片机共有P0、P1、P2、P3四个8位准双向输入输出端口,每个端口都有锁存器、输出驱动器和输入缓冲器,都能作输入输出口用。 每个I/O端口既可按字节操作,也可按位处理,总共占32根引脚。作输入时,分为读管脚和读锁存器两种方式。 P0和P2还可作为系统扩展总线,可用于对外部存储器的访问。P3口还有特殊功能。 单片机对外界进行控制,是通过I/O口实现的,因此I/O口具有重要性。 1. 输出功能 内部数据通过时钟保存在锁存器中,反相端 连接到输出驱动电路,在管脚上同相输出。 2. 输入功能:读引脚或读锁存器 读引脚:I/O口作为源操作数的指令。下面一个缓 冲器用于读端口引脚数据,当执行该类指令时,读 脉冲把该三态缓冲器打开,这样端口引脚上的数据 经过缓冲器读入到内部总线。 读锁存器 I/O口作为目的操作数的指令,读取输出锁存 器的状态。上面一个缓冲器用于读端口锁存 器数据。 P1口工作原理 输出高低电平的实现(各个组成器件功能的理解) 输入状态的实现,两种输入操作的区别(源操作数或目的操作数指令,C51定义位变量sbit) 输入操作的条件?准双向口的含义 二、P3口的一位结构 3.2.2 P0口、P2口的内部结构 二、P0口的内部结构 1.P0口作为普通I/O口 2.P0作为地址/数据总线 小节 当P0作为I/O口使用时,特别是作为输出时,输出级属于开漏电路,必须外接上拉电阻才会有高电平输出;所有端口作为输入时,必须先向相应的锁存器写“1”,才不会影响输入电平。 当CPU内部控制信号为“1”时,P0口作为地址/数据总线使用,这时,P0口就无法再作为I/O口使用了。P2和P3也有类似情况。 P1、P2 和P3 口为准双向口, 在内部差别不大, 但使用功能有所不同。  P1口是用户专用口, 具有通用输入/输出功能, 每一位都能独立地设定为输入或输出。当由输出方式变为输入方式时, 该位的锁存器必须写入“1”, 然后才能进入输入操作。 P2口还可作为扩展系统的地址总线, 输出高8位地址, 与P0 口一起组成 16 位地址总线。 P3口具有第二功能。 复习与预习 教材P21-24的I/O口 教材P169-184,按键和显示 * * 在进行系统扩展时,P2口作为高8位地址线,P0口分时作为低8位地址线和双向数据总线。 51单片机4个I/O端口的线路设计非常巧妙,学习I/O端口逻辑电路,不但有利于正确合理地使用端口,而且会对设计单片机外围逻辑电路有所启发。 下面简单介绍输入/输出端口结构。 3.2.1 P1口、P3口的内部结构 一、P1口的内部结构 由一个输出锁存器、两个三态输入缓冲器和输出驱动电路组成----准双向口。 D Q CLK Q P1.n 读锁存器 内部总线 写锁存器 读引脚 VCC R T P1口引脚 D Q CLK Q P1.n 读锁存器 内部总线 写锁存器 读引脚 VCC R T P1口引脚 D Q CLK Q P1.n 读锁存器 内部总线 写锁存器 读引脚 VCC R T P1口引脚 D Q CLK Q P1.n 读锁存器 内部总线 写锁存器 读引脚 VCC R T P1口引脚 读锁存器原因:如果原端口输出为1,且端口负载恰是一个晶体管基极,那么导通了的PN结会把端口引脚高电平拉低(见图)。若直接读端口引脚信号,将会把原输出的“1”电平误读为“0”电平。采用读输出锁存器代替读引脚,可避免上述错误。 准双向口:下图中,在读入端口数据时,由于输出驱动FET并接在引脚上,如果T导通,就会将输入的高电平拉成低电平,产生误读。所以在端口进行输入操作前,应先向端口锁存器写“1”,使T截止,引脚处于悬浮状态,变为高阻抗输入。这就是准双向口的含义。 D Q CLK Q P1.n 读锁存器 内部总线 写锁存器 读引脚 VCC R T P1口引脚 D Q CLK Q P3.n 读锁存器 内部总线 写锁存器 读引脚 VCC R T P3口引脚 第二输入功能 第二输出功能 1.作为通用I/O口与P1口类似----准双向口(W=1) W 1 2.P3口的第二功能(Q=1) D Q CLK Q P3.n 读锁存器 内部总线 写锁存器 读引脚 VCC R T P3口引脚 第二输入功能 第二输出功能 此时引脚部分输入(Q=1、W=1) ,部分输出(Q=1、W输出) 。 W P3口第二功能各引脚功能定义:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值