C8051单片机基础 第四章 输入输出端口

合集下载

C8051单片机基础 第四章 输入输出端口

C8051单片机基础 第四章 输入输出端口
C8051F系列 SOC单片机原理及应用
第四章 端口输入/输出 主讲:吴国东
第四章 端口输入/输出 C8051F020/1/2/3 MCU 是高集成度的 混合信号片上系统,有按 8 位端口组织的 64个数字I/O引脚(C8051F020/2)或32个数 字 I/O 引脚 (C8051F021/3) 。低端口 (P0 、 P1、P2 和P3)既可以按位寻址也可以按字 节寻址。高端口 (P4 、 P5 、 P6 和 P7) 只能 按字节寻址。所有引脚都耐 5V 电压,都 可以被配置为漏极开路或推挽输出方式和 弱上拉。
4.1 端口和优先权交叉开关 7) 外部存储器接口引脚分配
如果外部存储器接口被设置在低端口, XBR2.1=1,使交叉开关不将P0.7 (/WR)、 P0.6 (/RD)和P0.5 (/ALE)(复用方式)分配给 外设。如果外部存储器接口被设置在低端口并 且发生一次片外MOVX 操作,则在该MOVX 指令执行期间外部存储器接口将控制有关端口 引脚的输出状态,而不管交叉开关寄存器和端 口数据寄存器的设置如何。
第四章 端口输入/输出 C8051F020/1/2/3器件有大量的数字资 源需要通过 4 个低端 I/O 端口 P0 、 P1 、 P2 和P3才能使用。P0-P3的每个引脚可定义 为通用的端口I/O(GPIO)引脚,又可以 分配给一个数字外设或功能(例如: UART0 或/INT1)。系统设计者控制数字 功能的引脚分配,只受可用引脚数的限 制。这种资源分配的灵活性是通过使用 优先权交叉开关译码器实现的。
4.1 端口和优先权交叉开关 2) 配置端口引脚的输出方式 例外情况: 连接到SDA、SCL、RX0(如果UART0 工作于方式0)、RX1(如果UART1工作 于方式0)的端口引脚总是被配置为漏 极开路输出,而与PnMDOUT寄存器中的 对应位的设置值无关。

C8051F410单片机的端口配置

C8051F410单片机的端口配置
7
精选课件
优先权交叉开关译码器
如果一个端口引脚已经被分配,则交叉开关在 为下一个被选择的资源分配引脚时将跳过该引 脚。此外,交叉开关还将跳过在PnSKIP寄存 器中被置1的那些位所对应的引脚。PnSKIP寄 存器允许软件跳过那些被用作模拟输入、特殊 功能或GPIO的引脚。
8
精选课件
优先权交叉开关译码器
(skip),此时我们可以参考图18.3(ppt第11 页)。 第一个例子,我们驱动一个LED。
20
精选课件
Example 1
21
精选课件
Example 1
P2MDIN |= 0x02; //设置P2.1为数字输入 P2MDOUT |= 0x02; //设置P2.1为推挽输出 P2SKIP |= 0x02; //CrossBar跳过P2.1
比如要对一个单片机外的脉冲进行计数,普通 的单片机会有一个端口作为脉冲的输入端口, 假设是P1.0,这个引脚是固定的,但由于某种 原因(比如PCB布线),我们希望这个外部脉 冲可以接到P2.3引脚,这时普通单片机就做不 到了,而C8051F410单片机就可以做到。
5
精选课件
和普通单片机I/O的不同
注意:如果一个端口引脚被一个外设使用而不 经过交叉开关,则该引脚在PnSKIP寄存器中 的对应位应被置1。
9
精选课件
优先权交叉开关译码器
这种情况适用于P1.0和/或P1.1(如果外部振荡 器电路被使能)、P1.2(如果使用VREF)、 P0.6(如果使用外部转换启动信号NVSTR)、 P0.0(如果使用IDA0)、P0.1(如果使用 IDA1)、以及任何被选择为ADC或比较器输 入的引脚。交叉开关跳过那些被选择的引脚 (如同将它们已分配),移向下一个未被分配 的引脚。

单片机中级教程4第四章80C51单片机的功能

单片机中级教程4第四章80C51单片机的功能

17
第四章80C51单片机的功能单元
因此,S6P2时写入端口锁存器的 新数值直到下一个周期的P1时被采样到, 即只有在下一个机器周期的S1P1时,才 真正出现在引脚上。 5 P1口的多功能线 在80C52中,P1.0和P1.1口线是多 功能的,即除作一般双向I/O口线之外, 这两根口线还具有下列功能:
第四章80C51单片机的功能单元
基本内容 4.1 并行I/O接口 4.1.1 P1口 4.1.2 P3口 4.1.3 P2口 4.1.4 P0口 4.2 定时器/计数器 4.2.1概述 4.2.2定时器/计数器T0、T1
1
第四章80C51单片机的功能单元
4.2.3定时器/计数器T2 4.2.4看门狗 4.2.5定时器/计数器的编程和使用 4.3 串行接口 4.4 中断系统 4.4.1中断、中断源及中断优先级 4.4.2中断的控制和操作 4.4.3中断的响应过程和中断矢量地址
18
第四章80C51单片机的功能单元
P1.0——定时器/计数器2的外部输入端T2; P1.1——定时器/计数器2的外部控制端 T2EX。 这时,该两位的结构与P3口 的位结构相当。 关于P1.0和P1.1的功能 在定时器/计数器2中叙述。
19
第四章80C51单片机的功能单元
4.1.2 P3口 P3口是一个多功能的8位口,可以字节访问 也可位访问,其字节访问地址为B0H,位访问地 址为B0H~B7H。 1 位结构与工作过程分析 (1) 位结构 P3口的位结构 如图4---2所示。从P3口的位结构 图中可以看出,它与P1的口位结构之间的区 别在于:
第四章80C51单片机的功能单元

在响应CPU输出的读引脚信号时,端口 本身引脚的电平值通过缓冲器 BUF1 进 入内部总线。这种类型的指令,执行之 前必须先将端口锁存器置1,使A点处于 高电平,否则会损坏引脚,而且也使信 号无法读出,已于前述。 这种类型的指令有: MOV A,P1 ;(A)←(P1) MOV direct,P1 ;(direct)←(P1)

单片机输入输出接口

单片机输入输出接口
P3.3/INT1 13
P3.4/T0 14
P3.5/T1 15
P3.6/WR 16
P3.7/RD 17
XTAL2 18
XTAL1 19
GND 20
40 Vcc 39 P0.0 38 P0.1 37 P0.2 36 P0.3 35 P0.4 34 P0.5 33 P0.6 32 P0.7 31 EA 30 ALE 29 PSEN 28 P2.7 27 P2.6 26 P2.5 25 P2.4
/*“HELLO”的段码, 最高位送
uchar i; uint j; while(1) { P3=0x01; for(i=0;i<5;i++) { if(P17==1)P1=tab1[i]; else P1=tab2[i]; P3<<=1; for(j=0;j<=25000;j++);
}}} 课本习题5.8 *关于液晶显示
归纳四个并行口使用的注意事项如下:
1。如果单片机内部有程序存贮器,不需要扩展外 部存贮器和I/O接口,单片机的四个口均可作 I/O口使用。
2。四个口在作输入口使用时,均应先对其写 “1”,以避免误读。
3。P0口作I/O口使用时应外接10K的上拉电阻,其 它口则可不必。
4。P2可某几根线作地址使用时,剩下的线不能作 I/O口线使用。
用作地址/数据复用总线时,多路开关的控制 信号为1,输出与上方的地址/数据线反向器的输出 相连,由于控制信号为1,上面的场效应管受地址/ 数据信号控制,与下面的场效应管成为推挽输出 形态。外部不再需要上拉电阻,P0口为真正的双 向I/O口。
操作过程:假如要读外部程序存储器中 0x1245单元的指令,首先从P0口输出45H,P2口 输出12H,控制器输出ALE地址锁存信号,再发出 指令输出允许信号PSEN,外部程序存储器 0x1245单元的内容出现在总线上,由CPU读入程 序指令寄存器,译码执行。

第5章 80C51单片机中的输入输出口

第5章 80C51单片机中的输入输出口

一、并行I/O口的功能结构
作为I/O口应用的一个实例,下面介绍80C31 单片机的最小应用系统如下图所示:
80C31
一、并行I/O口的功能结构
二、产生接口控制信号的指令
80C51指令系统中能与接口打交道的指令 大体可分两类:
1、一般的输入/输出指令 2、“读-修改-写”指令
二、产生接口控制信号的指令
发送缓冲器和接收缓冲器共用一个地址,但它 们是独立的物理空间。
二、80C51单片机的串行通信接口
1、 功能特点 3)可用程序控制
内部有专用寄存器SCON(98H)和PCON(87H) 用于控制串行通信,包括方式的选择、接收控制、 多机通信控制、波特率是否加倍等;定时器T1可作 为串行口的波特率发生器,可改变串行口通信的定 时。
P1口一位的结构如下图所示:
一、并行I/O口的功能结构
(一)P1口
1、接口结构
锁存器起输出锁存作用,8位锁存器组成 特殊功能寄存器P1;
场效应管和上拉电阻组成输出驱动器,以 增大负载能力;
三态门1和三态门2分别用于控制输入引脚 和锁存器的状态。
一、并行I/O口的功能结构
2、接口功能
(一)P1口
P1口只有一种功能——通用输入输出接口, 有以下三种工作方式:输出、输入和端口操 作。 (1)输出方式:
二、80C51单片机的串行通信接口
1、功能特点 4)有四种工作方式能适应不同用途 (1)方式0 为移位寄存器I/O方式,数据从RXD端串行输入 或输出,以8位为一帧,按先低位后高位依次传送; 同步信号从TXD端输出,波特率固定为fosc/12。
二、80C51单片机的串行通信接口
1、功能特点 4)有四种工作方式能适应不同用途 (2)方式1 为8位的异步通信接口,传送一帧信息为10位,其 中,1位起始位(0),8位数据位(低位在前),1 位停止位(1)。

C8051F410单片机的端口配置PPT课件

C8051F410单片机的端口配置PPT课件
优先权交叉开关译码器为每个I/O功能分配优 先权,从优先权最高的UART0开始。当一个 数字资源被选择时,尚未分配的端口引脚中的 最低位被分配给该资源(UART0除外,它总 是被分配到引脚P0.4和P0.5)。
7
精选ppt课件2021
优先权交叉开关译码器
如果一个端口引脚已经被分配,则交叉开关在 为下一个被选择的资源分配引脚时将跳过该引 脚。此外,交叉开关还将跳过在PnSKIP寄存 器中被置1的那些位所对应的引脚。PnSKIP寄 存器允许软件跳过那些被用作模拟输入、特殊 功能或GPIO的引脚。
17
精选ppt课件2021
端口初始化步骤的注意事项
2)某个端口使用者有特殊的用处(而不是希 望用做PCA,UART,ECI等用途),比如你想将 P1.3用来驱动一个LED,此时你就要让交叉开 关译码器跳过P1.3,这样CrossBar在为内部数 字资源(比如PCA,UART,ECI等)分配端口时, 就会跳过P1.3。
13
精选ppt课件2021
优先权交叉开关译码器
此外,假如你希望某个端口用作普通的I/O端 口(至于干什么,由你自己决定),而不是特 殊的功能,比如PCA,SPI等,你也可以将 PnSKIP中相应的位置1,这样交叉开关译码器 在为内部数字资源(比如SPI,ECI,PCA登)分 配端口时,就会跳过这些端口,傻呼呼的认为 这些端口已经有某种用途了。
2
端口输入/输出
精选ppt课件2021
3
端口输入/输出
精选ppt课件2021
从图18.1可以看出,C8051F410单片机之所以 可以实现内部数字资源的灵活分配,是通过优 先级交叉开关译码器实现,即图中的Priority Crossbar Decoder。

单片机输入输出口课件

单片机输入输出口课件

串行输出口的应用
串行输出口常用于与外部设备进 行通信,如串口通信、I2C通信 等,实现数据的传输和控制等功
能。
串行输出口的配置
串行输出口的输出数据格式、波 特率等参数可以通过编程进行配 置,以满足不同的通信协议和数
据传输需求。
04
单片机输入输出口编 程
编程语言的选择
C语言
C语言是一种通用编程语言,具有高效、可移植性 强的特点,适用于单片机编程。
单片机输入输出口 课件
目录
• 单片机输入输出口概述 • 单片机输入口详解 • 单片机输出口详解 • 单片机输入输出口编程 • 单片机输入输出口应用实例
01
单片机输入输出口概 述
输入输出口的定义
输入输出口是单片机中用于与 外部设备进行通信的接口。
输入输出口可以接收外部设备 的数据,并将其传输到单片机 内部进行处理。
模拟输入口的精度和范围取决于ADC 的特性和位数,常见的有8位、10位 、12位和16位等。
模拟输入口通常需要一个模拟-数字 转换器(ADC)来将模拟信号转换为 数字信号,以便单片机进行处理。
模拟输入口在数据采集、智能传感器 等领域应用广泛。
数字输入口
01
数字输入口是单片机中 用于接收数字信号的接 口,如开关状态、脉冲 信号等。
02
数字输入口可以直接接 收高低电平信号,并通 过内部逻辑电路进行处 理。
03
数字输入口的响应速度 较快,适用于高速数字 信号的采集和传输。
04
数字输入口在工业控制 、智能仪表等领域应用 广泛。
串行输入口
01
02
03
04
串行输入口是单片机中用于接 收串行数据信号的接口,如
I2C、SPI等通信协议。

51单片机IO端口的四种输入输出模式知识讲解

51单片机IO端口的四种输入输出模式知识讲解

51单片机I O端口的四种输入输出模式51单片机IO端口的四种输入输出模式 (by wuleisly)单片机I O口的使用对所有单片机玩家来说都是“家常便饭”,但是你真的了解I O口吗?你真的能按你的需要配置I O口吗?一、准双向口输出准双向口输出类型可用作输出和输入功能而不需重新配置口线输出状态。

这是因为当口线输出为1时驱动能力很弱,允许外部装置将其拉低。

当引脚输出为低时,它的驱动能力很强,可吸收相当大的电流。

(准双向口有3个上拉晶体管适应不同的需要)准双向口读外部状态前,要先锁存为‘1’,才可读到外部正确的状态.二、强推挽输出推挽输出配置的下拉结构与开漏输出以及准双向口的下拉结构相同,但当锁存器为1时提供持续的强上拉。

推挽模式一般用于需要更大驱动电流的情况。

三、仅为输入(高阻)输入口带有一个施密特触发输入以及一个干扰抑制电路。

四、开漏输出配置(若外加上拉电阻,也可读)当口线锁存器为0时,开漏输出关闭所有上拉晶体管。

当作为一个逻辑输出时,这种配置方式必须有外部上拉,一般通过电阻外接到V cc。

如果外部有上拉电阻,开漏的I/O口还可读外部状态,即此时被配置为开漏模式的I/O口还可作为输入I/O口。

这种方式的下拉与准双向口相同。

开漏端口带有一个施密特触发输入以及一个干扰抑制电路。

关于I/O口应用注意事项:1.有些是I/O口由低变高读外部状态时,读不对,实际没有损坏,软件处理一下即可。

因为1T的8051单片机速度太快了,软件执行由低变高指令后立即读外部状态,此时由于实际输出还没有变高,就有可能读不对,正确的方法是在软件设置由低变高后加1到2个空操作指令延时,再读就对了.有些实际没有损坏,加上拉电阻就O K了有些是外围接的是NP N三极管,没有加上拉电阻,其实基极串多大电阻,I/O口就应该上拉多大的电阻,或者将该I/O口设置为强推挽输出. 2.驱动L E D发光二极管没有加限流电阻,建议加1K以上的限流电阻,至少也要加470欧姆以上做行列矩阵按键扫描电路时,实际工作时没有加限流电阻,实际工作时可能出现2个I/O口均输出为低,并且在按键按下时,短接在一起,我们知道一个C MO S电路的2个输出脚不应该直接短接在一起,按键扫描电路中,此时一个口为了读另外一个口的状态,必须先置高才能读另外一个口的状态,而8051单?片机的弱上拉口在由0变为1时,会有2时钟的强推挽高输出电流输出到另外一个输出为低的I/O口,就有可能造成I/O口损坏.建议在其中的一侧加1K限流电阻,或者在软件处理上,不要出现按键两端的I/O口同时为低.一种典型三极管控制电路:如果用弱上拉控制,建议加上拉电阻R1(3.3K~10K),如果不加上拉电阻R1(3.3K~10 K),建议R2的值在15K以上,或用强推挽输出。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4.1 端口和优先权交叉开关
4.1 端口和优先权交叉开关 2) 配置端口引脚的输出方式 在 XBARE ( XBR2.6 ) 被设置为逻辑 ‘1’之前,端口0-3 的输出驱动器保持 禁止状态。每个端口引脚的输出方式都 可被配置为漏极开路或推挽方式,缺省 状态为漏极开路。
4.1 端口和优先权交叉开关 2) 配置端口引脚的输出方式 在推挽方式,向端口数据寄存器中 的相应位写逻辑‘0’将使端口引脚被驱 动到 GND ,写逻辑‘ 1’将使端口引脚被 驱动到VDD。在漏极开路方式,向端口数 据寄存器中的相应位写逻辑‘0’将使端 口引脚被驱动到 GND ,写逻辑‘ 1’将使 端口引脚处于高阻状态。
第四章 端口输入/输出 注意:不管引脚被分配给一个数字外设或 是作为通用I/O,总是可以通过读相应的 数据寄存器得到端口I/O引脚的状态。端 口1的引脚可以用做ADC1的模拟输入。 在执行目标地址为片外XRAM 的MOVX 指令时,外部存储器接口可以在低端口或 高端口有效。 高端口(存在于C8051F020/2 中) 按字节访问。
4.1 端口和优先权交叉开关 2) 配置端口引脚的输出方式 例外情况: 连接到SDA、SCL、RX0(如果UART0 工作于方式0)、RX1(如果UART1工作 于方式0)的端口引脚总是被配置为漏 极开路输出,而与PnMDOUT寄存器中的 对应位的设置值无关。
4.1 端口和优先权交叉开关 3) 配置端口引脚为数字输入 通过设置输出方式为“漏极开路” 并向端口数据寄存器中的相应位写‘1’ 将端口引脚配置为数字输入。 例如,设置P3MDOUT.7 为逻辑‘0’ 并设置P3.7 为逻辑‘1’即可将P3.7 配 置为数字输入。
第四章 端口输入/输出 C8051F020/1/2/3器件有大量的数字资 源需要通过 4 个低端 I/O 端口 P0 、 P1 、 P2 和P3才能使用。P0-P3的每个引脚可定义 为通用的端口I/O(GPIO)引脚,又可以 分配给一个数字外设或功能(例如: UART0 或/INT1)。系统设计者控制数字 功能的引脚分配,只受可用引脚数的限 制。这种资源分配的灵活性是通过使用 优先权交叉开关译码器实现的。
4.1 端口和优先权交叉开关 5) 弱上拉
每个端口引脚都有一个内部弱上拉部件, 在引脚与VDD 之间提供阻性连接(约100 kΩ),在缺省情况下该上拉器件被使能。弱 上拉部件可以被总体禁止,通过向弱上拉禁止 位(WEAKPUD,XBR2.7)写‘1’实现。当 任何引脚被驱动为逻辑‘0’时,弱上拉自动取 消;即输出引脚不能与其自身的上拉部件冲突。 对于端口1 的引脚,将引脚配置为模拟输入时 上拉部件也被禁止。
4.2 端口4-7 5) 外部存储器接口 如果外部存储器接口被设置在高端 口并且发生一次片外MOVX操作,则在该 MOVX指令执行期间外部存储器接口将控 制有关端口引脚的输出状态,而不管端 口数据寄存器的设置如何。端口引脚的 输出配置不受EMIF 操作的影响,但读 操作将禁止数据总线上的输出驱动器。
4.1 端口和优先权交叉开关 4) 外部中断(IE6 和IE7)
除了外部中断/INT0和/INT1之外,P3.6和 P3.7可被配置为边沿触发的中断源,用IE6CF (P3IF.2)和IE7CF(P3IF.3)位可以将这两 个中断源配置为下降沿或上升沿触发。 当检测到P3.6或P3.7下降沿或上升沿发生 时,P3IF寄存器中对应的外部中断标志将被置 ‘1’。如果对应的中断允许,将产生一个中断。
第四章 端口输入/输出
第四章 端口输入/输出 4.1 端口0-3和优先权交叉开关译码器 优先权交叉开关译码器,或称为“交 叉开关”,按优先权顺序将端口0-3的引 脚分配给器件上的数字外设 ( UART 、 SMBus 、PCA 、定时器等)。端口引脚的 分配顺序是从P0.0 开始,可以一直分配 到P3.7。UART0具有最高优先权,而 CNVSTR具有最低优先权。
4.1 端口和优先权交叉开关 1) 交叉开关引脚分配 注意: 当选择了串行通信外设(即SMBus、 SPI或UART)时,交叉开关将为所有相 关功能分配引脚。 例 如 , 不 能 为 UART0 功 能 只 分 配 TX0 引脚而不分配 RX0 引脚。被使能的外设 的每种组合导致唯一的器件引脚分配。
4.2 端口4-7
端口的配置较复杂,寄存器较多, 对设置带来一些麻烦,芯片制造商提供 了端口配置软件,利用软件可以方便进 行端口配置。 国内新华龙网站即可下载: /
1.2 C8051F系列单片机分类
4.1 端口和优先权交叉开关 8) 交叉开关引脚分配示例 4.设置XBARE = 1 以使能交叉开关: XBR2= 0x46。 5.将UART0 的TX 引脚(TX0,P0.0)、 UART1 的TX 引脚(TX1,P0.4)、ALE、 /RD、/WR(P0.[7:3])的输出设置为推 挽方式,通过设置P0MDOUT = 0xF1 来 实现。
4.1 端口和优先权交叉开关 7) 外部存储器接口引脚分配
如果外部存储器接口被设置在低端口, XBR2.1=1,使交叉开关不将P0.7 (/WR)、 P0.6 (/RD)和P0.5 (/ALE)(复用方式)分配给 外设。如果外部存储器接口被设置在低端口并 且发生一次片外MOVX 操作,则在该MOVX 指令执行期间外部存储器接口将控制有关端口 引脚的输出状态,而不管交叉开关寄存器和端 口数据寄存器的设置如何。
4.2 端口4-7 1) 配置无引出脚的端口 P4-P7在C8051F021/3 中没有对应的 引脚,但端口数据寄存器仍然存在并可 为软件所用。由于数字输入通路保持活 动状态,所以建议不要将这些引脚处于 “浮空”状态,以避免因输入浮空为一 个无效逻辑电平而导致不必要的功率消 耗。
4.2 端口4-7 1) 配置无引出脚的端口 下面任何一种措施可防止这种情况出现: 1. 设置为弱上拉。 2. 配置为推挽方式。 3. 向端口数据寄存器写‘0’
4.2 端口4-7 2) 配置端口引脚的输出方式 每个端口的输出方式都可被配置为 漏极开路或推挽方式。在推挽方式,向 端口的相应位写逻辑‘0’将使端口引脚 被驱动到GND,写逻辑‘1’将使端口引 脚被驱动到VDD。在漏极开路方式,向 端口的相应位写逻辑‘0’将使端口引脚 被驱动到GND,写逻辑‘1’将使端口引 脚处于高阻状态。
4.1 端口和优先权交叉开关 8) 交叉开关引脚分配示例 2.将外部存储器接口配置为复用方式并 使用低端口,PRTSEL = 0,EMD2 = 0 (外部存储器接口配置EMI0CF ) P131 3.将作为模拟输入的端口1 引脚配置为 模拟输入方式:设置P1MDIN 为0xE3 (P1.4、P1.3 和P1.2 为模拟输入,所以 它们的对应P1MDIN 被设置为逻辑 ‘0’)。
4.1 端口和优先权交叉开关
4.2 端口4-7 4.2 端口4-7(仅C8051F020/2) 端口4-7 的所有端口引脚都可用作通 用I/O,通过读和写相应的端口数据寄存 器访问每个端口,这些端口数据寄存器 是一组按字节寻址的特殊功能寄存器。 读端口数据寄存器时,返回的是端口引 脚本身的逻辑状态。
C8051F系列 SOC单片机原理及应用
第四章 端口输入/输出 主讲:吴国东
第四章 端口输入/输出 C8051F020/1/2/3 MCU 是高集成度的 混合信号片上系统,有按 8 位端口组织的 64个数字I/O引脚(C8051F020/2)或32个数 字 I/O 引脚 (C8051F021/3) 。低端口 (P0 、 P1、P2 和P3)既可以按位寻址也可以按字 节寻址。高端口 (P4 、 P5 、 P6 和 P7) 只能 按字节寻址。所有引脚都耐 5V 电压,都 可以被配置为漏极开路或推挽输出方式和 弱上拉。
4.1 端口和优先权交叉开关 6) 配置端口1 的引脚为模拟输入 (AIN.[7:0]) 注意: 被配置为模拟输入的引脚的输出驱 动器并没有被明确地禁止。因此被配置 为模拟输入的引脚所对应的P1MDOUT 位 应被设置为逻辑‘0’(漏极开路方 式),对应的端口数据位应被设置为逻 辑‘1’(高阻态)。
4.1 端口和优先权交叉开关
1) 交叉开关引脚分配 当交叉开关配置寄存器 XBR0、XBR1 和 XBR2 中外设的对应使能位被设置为逻辑‘1’ 时,交叉开关将端口引脚分配给外设。 例如,如果 UART0EN 位( XBR0.2 )被设置 为逻辑‘1’,则TX0 和RX0 引脚将分别被分 配到P0.0 和P0.1。因为UART0有最高优先权, 所以当UART0EN 位被设置为逻辑‘1’时其引 脚将总是被分配到P0.0 和P0.1。
4.2 端口4-7 3) 配置端口引脚为数字输入 通过设置输出方式为“漏极开路” 并向端口数据寄存器中的相应位写‘1’ 将端口引脚配置为数字输入。 例如,设置P4OUT.7 为逻辑‘0’并 设置P7.7 为逻辑‘1’即可将P7.7 配置为 数字输入。
4.2 端口4-7 4) 弱上拉 每个端口引脚都有一个内部弱上拉 部件,在缺省情况下该上拉器件被使能, 在引脚与VDD之间提供阻性连接(约 100 kΩ)。弱上拉部件可以被总体禁止, 当任何引脚被驱动为逻辑‘0’时,弱上 拉自动取消;即输出引脚不能与其自身 的上拉部件冲突。
4.1 端口和优先权交叉开关 6) 配置端口1的引脚为模拟输入 (AIN.[7:0]) 端口1的引脚可以用作ADC1模拟多路开关 的模拟输入。通过向P1MDIN寄存器中的 对应位写‘0’即可将端口引脚配置为 模拟输入。缺省情况下端口引脚为数字 输入方式。
4.1 端口和优先权交叉开关 6) 配置端口1 的引脚为模拟输入 (AIN.[7:0]) 配置为模拟输入的过程如下: 1.禁止引脚的数字输入路径。 2.禁止引脚的弱上拉部件。 3.使交叉开关在为数字外设分配引脚 时跳过该引脚。
4.1 端口和优先权交叉开关 8) 交叉开关引脚分配示例 配置步骤如下: 1.按UART0EN = 1、UART1E = 1、 SMB0EN = 1、INT0E = 1、INT1E = 1 和EMIFLE =1设置XBR0、XBR1 和 XBR2,则有:XBR0 = 0x05,XBR1 = 0x14,XBR2 = 0x06。
相关文档
最新文档