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

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

3天内不再提示

8bitMCU相关设置寄存器及注意事项

中颖电子 来源:中颖电子 作者:中颖电子 2022-07-03 16:10 次阅读

1、 8bitMCU 通用I/O 结构图

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

77973eb6-f84c-11ec-ba43-dac502259ad0.png

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

端口控制寄存器

xxHH 第7位 第6位 第5位 第4位 第3位 第2位 第1位 第0位
PxCR (xxH, Bank0) PxCR.7 PxCR.6 PxCR.5 PxCR.4 PxCR.3 PxCR.2 PxCR.1 PxCR.0
读/写 读/写 读/写 读/写 读/写 读/写 读/写 读/写 读/写
复位值(POR/WDT/LVR/PIN) 0 0 0 0 0 0 0 0
位编号 位符号 说明
7-0 PxCRy
x = 0-7,y = 0-7
端口输入/输出控制寄存器
0:输入模式
1:输出模式

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

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

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

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

端口上拉电阻控制寄存器

xxH 第7位 第6位 第5位 第4位 第3位 第2位 第1位 第0位
PxPCR (xxH, Bank0) PxPCR.7 PxPCR.6 PxPCR.5 PxPCR.4 PxPCR.3 PxPCR.2 PxPCR.1 PxPCR.0
读/写 读/写 读/写 读/写 读/写 读/写 读/写 读/写 读/写
复位值
(POR/WDT/LVR/PIN)
0 0 0 0 0 0 0 0
位编号 位符号 说明
7-0 PxPCRy
x = 0-7,y = 0-7
输入端口内部上拉电阻控制
0:内部上拉电阻关闭
1:内部上拉电阻开启

端口数据寄存器

xxH 第7位 第6位 第5位 第4位 第3位 第2位 第1位 第0位
Px (xxH, Bank0) Px.7 Px.6 Px.5 Px.4 Px.3 Px.2 Px.1 Px.0
读/写 读/写 读/写 读/写 读/写 读/写 读/写 读/写 读/写
复位值(POR/WDT/LVR/PIN) 0 0 0 0 0 0 0 0
位编号 位符号 说明
7-0 Px.y
x = 0-7,y = 0-7
端口数据寄存器

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

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

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

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

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

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

2、引脚电平读取指令举例:

MOV A,P0 ;P0->A

MOV R0, P0 ; P0->R0

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

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

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

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

77ac6174-f84c-11ec-ba43-dac502259ad0.png

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

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

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

77bf668e-f84c-11ec-ba43-dac502259ad0.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=5V举例,输入高电平>=2V,端口读取的电平为高,输入低电平<=0.8V,端口读取的电平为低。

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

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

xxH,Bank1 第7位 第6位 第5位 第4位 第3位 第2位 第1位 第0位
PIMS0 P04S PxxS PxxS PxxS PxxS PxxS PxxS PxxS
读/写 读/写 读/写 读/写 读/写 读/写 读/写 读/写 读/写
复位值(POR/WDT/LVR/PIN) 0 0 0 0 0 0 0 0
位编号 位符号 说明
7 P04S P0.4输入电平逻辑控制位(不包含端口数据寄存器输入)*
0:输入高电平阈值为0.8VDD,输入低电平阈值为0.2VDD(CMOS逻辑,带施密特)
1:输入高电平阈值为2.0V,输入低电平阈值为0.8V(VDD = 4.5 - 5.5V)(TTL逻辑)
输入高电平阈值为0.25VDD+0.8,输入低电平阈值为0.15VDD(VDD = 2.7V-4.5V)
注:PowerDown模式下,TLL逻辑无效

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

原文标题:中颖8bit 单片机I/O设置介绍

文章出处:【微信公众号:中颖电子】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红

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

    关注

    6039

    文章

    44575

    浏览量

    636394
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17173

    浏览量

    351658
  • 寄存器
    +关注

    关注

    31

    文章

    5357

    浏览量

    120635
  • 中颖电子
    +关注

    关注

    4

    文章

    174

    浏览量

    7500

原文标题:中颖8bit 单片机I/O设置介绍

文章出处:【微信号:SINO_25181447,微信公众号:中颖电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    请问在中断处理程序中操作寄存器时的注意事项有哪些?

    在中断处理程序中操作寄存器时的注意事项
    发表于 11-23 14:17

    ADS1211与89C52的接口电路设计,有什么注意事项

    ADS1211的结构及特点ADS1211的引脚功能ADS1211的重要寄存器设置ADS1211与89C52的接口电路设计,有什么注意事项
    发表于 04-22 07:13

    使用DR寄存器有哪些需要注意事项

    什么是DR寄存器?DR寄存器有何性能?使用DR寄存器有哪些需要注意事项呢?
    发表于 12-07 07:38

    与STM32F767串口控制相关寄存器有哪些呢

    与STM32F767串口控制相关寄存器有哪些呢?有何功能?有哪些注意事项呢?
    发表于 12-10 07:14

    AT32 事件唤醒Deepsleep 模式有什么注意事项

    AT32 事件唤醒Deepsleep 模式有什么注意事项Questions:事件唤醒 Deepsleep 模式有什么注意事项?Answer:可以通过 RTC 闹钟事件和外部事件唤醒
    发表于 05-06 19:47

    Si443x-寄存器设置

    Si443x-寄存器设置
    发表于 03-30 17:10 4次下载

    AD转换寄存器设置

    AD转换寄存器设置AD转换寄存器设置AD转换寄存器设置
    发表于 11-10 17:36 16次下载
    AD转换<b class='flag-5'>寄存器</b><b class='flag-5'>设置</b>

    SZ/SNZ/LSZ/LSNZ指令功能及注意事项

    下一条指令。这些 指令执行过程包含读写数据存储操作,当[m]为特殊功能寄存器时,因特殊功能寄存器与 MCU 的正确操作密切相关,需注意
    发表于 05-10 14:40 3次下载
    SZ/SNZ/LSZ/LSNZ指令功能及<b class='flag-5'>注意事项</b>

    寄存器是什么 掌握使用寄存器做设计需要注意事项

    既然RTL是以寄存器行为为基础,那么就必须先了解寄存器是什么,并且掌握使用寄存器做设计需要注意事项
    的头像 发表于 07-13 15:38 1590次阅读
    <b class='flag-5'>寄存器</b>是什么 掌握使用<b class='flag-5'>寄存器</b>做设计需要<b class='flag-5'>注意</b>的<b class='flag-5'>事项</b>

    8位MCU EEPROM使用注意事项

    中颖8位MCU EEPROM使用注意事项
    的头像 发表于 09-27 15:34 1213次阅读
    中<b class='flag-5'>8</b>位MCU EEPROM使用<b class='flag-5'>注意事项</b>

    CPSR寄存器和APSR寄存器的组成

    程序状态寄存器的作用就是反映处理的状态信息。在程序运行期间我们可以通过查看程序状态寄存器的状态位来进行程序的分支跳转处理,或者我们可以设置程序状态
    的头像 发表于 10-20 11:38 4731次阅读
    CPSR<b class='flag-5'>寄存器</b>和APSR<b class='flag-5'>寄存器</b>的组成

    轻负载时开关元件工作相关注意事项

    轻负载时开关元件工作相关注意事项
    的头像 发表于 12-14 15:43 466次阅读
    轻负载时开关元件工作<b class='flag-5'>相关</b>的<b class='flag-5'>注意事项</b>

    电流互感的使用注意事项

    当谈到电流互感的使用时,有一些重要的注意事项需要我们牢记。在本文中,我们将探讨这些注意事项,为您提供详细和全面的信息。
    的头像 发表于 12-15 10:34 1595次阅读
    电流互感<b class='flag-5'>器</b>的使用<b class='flag-5'>注意事项</b>

    示波器接电流探头时的设置方法及注意事项

    示波器接电流探头时的设置方法及注意事项  示波器是一种用于观测电子信号波形的重要仪器。在实际应用中,经常需要接入电流探头以观测电路中的电流波形。正确的设置方法和注意事项对于获取准确的波
    的头像 发表于 01-08 16:36 3726次阅读

    家用路由的使用技巧和注意事项**

    家用路由器使用技巧包括合理放置、定期重启、设置强密码、设置访客网络、更新固件、启用双频网络和设置家长控制。注意事项包括避免过度拥挤、防止过度疲劳、防止遮挡信号、定期检查网络设备、保护隐
    的头像 发表于 03-21 17:37 831次阅读