0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

8bit 单片机I/O设置介绍

jf_pJlTbmA9 来源:中颖电子 作者:中颖电子 2023-10-27 15:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1、8bit MCU 通用I/O 结构图

端口模块如下图(79系列图):

wKgaomUD5A6AL0KgAAAwpWsHUHg418.png

2、相关设置寄存器及注意事项:

端口控制寄存器

wKgZomUD5BCAURO9AABjakB-6k4089.png
wKgaomUD5BGAV8FTAAA3oD-TW0o558.png

PxCR寄存器控制I/O输入输出状态设置。

当寄存器设置成输入模式时,Px寄存器读取的是端口电平状态。

当寄存器设置成输出模式时,Px寄存器读取的是数据寄存器的值。

如有未使用到的I/O,需要设置输出固定电平以免I/O浮动电平带来的漏电流。

端口上拉电阻控制寄存器

wKgaomUD5BOAQr9eAABwtUctU74874.png
wKgZomUD5BWAbVtTAABNdd6XR5c320.png

端口数据寄存器

wKgZomUD5BaALf8wAABegYy7c0Y026.png
wKgaomUD5BiANc3gAAAn-n8j0v4123.png

79系列单片机 Px 寄存器都在位寻址区(例如:80H,88H等),都可以进行位寻址操作。

在初始化设施PxCR(输出状态)前,请优先设置Px寄存器,避免WDT,,OVL等复位带来的端口电平变化。

当PxCR寄存器设置成输入状态时,操作读取对应Px,是读取对应引脚电平状态。

当PxCR寄存器设置成输出状态时,根据指令来分别对应 读取的是寄存器还是引脚电平。

端口寄存器读-改-写指令举例:

ANL P0, #立即数 ; P0->立即数 (与)P0->P0

ORL P0, A ; P0->A|(或)P0->P0

INC P0 ; P0->P0+1->P0

CPL P0.0 ; P0.0->P0.0~(取反)->P0.0

引脚电平读取指令举例:

MOV A,P0 ; P0->A

MOV R0, P0 ; P0->R0

不管端口是否共享为其它功能,对端口写操作都是针对端口数据寄存器。

当第二功能有冲突时,按照端口共享表格中的优先级来决定输出功能。

通常I/O的优先级是低于其他功能的。

以下图为例,当P0.6引脚上BUZ功能和LED功能同时选中时,引脚输出LED波形。

wKgaomUD5BmAKCA0AACGGLue9oY116.png

当允许端口复用为其它功能时,用户可以修改PxCR﹑PxPCR,但在复用的其它功能被禁止前,这些操作不会影响端口状态。

当允许端口复用为其它功能时,任何对端口的读写操作只会影响到数据寄存器的值,端口引脚值保持不变,直到复用的其它功能关闭。

3、 I/O开漏模式介绍:

wKgZomUD5BqARROIAAG2QaHiGNs248.png

在I/O章节有选择N沟道开漏功能的寄存器时,可以实现I/O的N沟道开漏功能(注意上图红线处,IO管脚的电压不得超过VDD+0.3V电压)

如果I/O章节没有该选项的寄存器,但是又有TWI通讯功能,那么在TWI功能开启时,引脚自动切换成N沟道开沟。关闭TWI功能,自动切换回普通I/O。

芯片的电源输入端建议加去耦电路,防止VDD端出现瞬间的高压引入导致的电路损坏。

4、施密特及TTL功能介绍:

施密特功能介绍:

施密特输入特性是输入高电平阈值为0.8VDD,输入低电平阈值为0.2VDD。

VDD=5V举例,输入高电平>=4V,端口读取的电平为高,输入低电平<=1V,端口读取的电平为低。相对应的引脚是否具有施密特功能,请查询电气特性章节(输入高电压2和输入低电压2中注明有施密特功能的引脚,例如INT0-4,T3-T5等)。普通I/O不具有施密特功能。

TTL功能介绍:

TTL电平输入特性是

1) 输入高电平阈值为0.25VDD+0.8,输入低电平阈值为0.15VDD(VDD=2.7V~4.5V)

以VDD=3.3V举例,输入高电平>=1.625V,端口读取的电平为高,输入低电平<=0.495V,端口读取的电平为低。

2)输入高电平阈值为2.0V,输入低电平阈值为0.8V(VDD=4.5V~5.5V)

以VDD=5 V举例,输入高电平>=2V,端口读取的电平为高,输入低电平<=0.8V,端口读取的电平为低。

选择TTL电平功能可与VDD电压为3.3V的WIFI模块直接通过以Uart或者TWI的方式通讯,又或者直接接收外部中断信号(INT0-4),不需要外加电平转换电路。(芯片是否有TTL功能请查询I/O章节及电气特性章节)

端口输入模式选择寄存器如下(TTL和CMOS选择)

wKgZomUD5ByAX0ZMAAB0LuuJ7V4884.png
wKgaomUD5B6AC1fpAADoAuVDSyw311.png

*:CPU在任何情况下,读取端口数据寄存器(P0,P1……),其输入高电平阈值为0.7VDD,输入低电平阈值为0.3VDD(CMOS逻辑,无施密特);该控制位控制的是其他功能输入的逻辑电平状态,例如:INT0 - 4,RXD,SDA等数字电平输入。

注意:TTL电平特性,详情请见规格书电气特性章节。

来源:中颖电子
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6074

    文章

    45340

    浏览量

    663617
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    PMS154C系列 8bit OTP IO型单片机

    PMS154C是台湾应广(PADAUK)推出的 8 位 OTP I/O单片机,以超低功耗、高性价比和强抗干扰能力为核心优势,适用于智能门锁、温湿度计、小家电控制等需长续航、高稳定性
    发表于 11-26 08:59

    如何从主机将数据按8bit传入片上ITCM?

    需求:如何从主机将数据按8bit传入片上ITCM 我想在PC端(主机)通过8位IO每个周期传入8bit数据(一共大概32KB的数据,包括自定义指令和局部变量的数据,由.verilog文件读出来
    发表于 10-20 07:00

    单片机原理及应用详解

    单片机(Microcontroller Unit, MCC)  是一种集成计算机核心功能(CPU、存储器、I/O接口等)的微型芯片,广泛应用于嵌入式系统中。以下是其原理及应用的详细介绍
    的头像 发表于 08-11 13:57 1553次阅读

    单片机采用什么电流输出

    能力 单片机I/O 接口直接输出的电流较小,通常在 10-20mA 范围内。这是因为其内部输出电路由小型 MOS 管或三极管构成,主要用于传输控制信号,而非直接驱动大功率设备。例如,8
    的头像 发表于 07-30 11:13 750次阅读

    请问CY7C68013A可以使用8bit FIFO数据接口吗?

    因为FPGA管脚不太够,想问下CY7C68013A-56PVXI可以使用8bit FIFO数据接口吗?可以的话,FPGA连接的是低8bit(FD0~FD7) 还是高8bit(FD8~F
    发表于 05-30 07:20

    MAX7325 I²C端口扩展器,提供8路推挽式I/O8个漏极开路I/O技术手册

    MAX7325 2线串行接口外设具有16路I/O端口。其中8路为推挽输出,另外8路为I/O端口,
    的头像 发表于 05-22 15:27 684次阅读
    MAX7325 <b class='flag-5'>I</b>²C端口扩展器,提供<b class='flag-5'>8</b>路推挽式<b class='flag-5'>I</b>/<b class='flag-5'>O</b>和<b class='flag-5'>8</b>个漏极开路<b class='flag-5'>I</b>/<b class='flag-5'>O</b>技术手册

    DLPC350设置最小的曝光时间8333us,投射8bit图像,可以做多播放多少种图案?

    DLPC350投影单元投射8bit的图像,设置曝光时间为8333us,文档显示最多投射6种图形,我想问,这种模式下,是否可以使用反转的功能,实现12种播放图案。
    发表于 03-03 06:08

    用DLP4500 exe软件来对24张8bit的图合成8张24bit的图后,最后设置完sequence,play的时候就只显示了8张图,为什么?

    Sequence Settting 设置时也是将24张8bit图按顺序加入到Pattern Sequence中,不知道为啥。
    发表于 02-25 07:52

    使用DLP4500投影88bit的光栅图片遇到的几个问题求解

    我目前使用DLP4500投影88bit的光栅图片,图片是以及烧录到硬件中,使用pattern sequence 模式投影,但是发现一些问题,具体如下: 1.曝光时间&lt
    发表于 02-25 06:03

    DLP3010一个序列中包含8bit图和1bit图投影错误怎么解决?

    DLP3010投影仪投影两个图形序列。第一个序列包含1个8bit的pattern set,和一个1bit的pattern set。第二个序列仅包含1个1bit的pattern set。会根据需要切换
    发表于 02-21 10:15

    ads7886的输出接口 *CS SDO SCLK可以直接连接到单片机I/O上吗?

    请问一下,ads7886的输出接口 *CSSDOSCLK 可以直接连接到单片机I/O上,还是一定要上拉一个电阻然后在连接单片机I/
    发表于 02-08 07:08

    ADS7843E设置MODE采集精度为8bit后获取到的数据最大值只能到数字113,为什么?

    ADS7843E 设置MODE采集精度为8bit后获取到的数据最大值只能到数字113,按ADS7843E提供是数据表格我将VREF设置为电源VCC,按正常情况按压4线电阻触摸屏最大值应该是能达到255但是读取ADS7843E
    发表于 02-05 07:13

    单片机I/O接口的传输方式

    单片机(Microcontroller Unit,MCU)作为嵌入式系统的核心部件,其输入输出(Input/Output,I/O)接口是实现与外部设备数据交换的关键。I/
    的头像 发表于 02-02 15:56 1646次阅读

    普冉PY32MD310单片机介绍

    ,芯片集成了多个通讯接口,一个 I2C、2个SPI和2个USART。还有1 路 12-bit ADC,5 个 16 位定时器,以及 2 路比较器外设。PY32MD310单片机采用QFN32封装,有16个通用端口,均可作为外部中断
    的头像 发表于 01-15 10:24 1321次阅读
    普冉PY32MD310<b class='flag-5'>单片机</b><b class='flag-5'>介绍</b>

    单片机Debug与仿真区别

    是指在软件或硬件开发过程中,通过特定的工具和技术来查找、诊断和修复错误的过程。在单片机开发中,Debug通常涉及到以下几个方面: 硬件调试 :检查单片机的硬件连接是否正确,包括电源、时钟、I/
    的头像 发表于 12-19 09:47 1403次阅读