RA2快速设计指南 [8] I/O端口配置(2)

9. i/o端口配置(2)
9.2 设置端口并将其用作gpio
有两种方法可以设置端口并将其用作gpio:一种是使用端口控制寄存器(pcntr1),另一种是使用pmnpfs寄存器。
方法1:端口控制寄存器(pcntr1)
  • 通过向端口控制寄存器1(pcntr1)的端口方向位 (pdrn) 写入“1”,选择一个引脚作为输出。
• 端口方向位 (pdrn) 是可读写的。将该值设置为“1”将选择该引脚作为输出。i/o端口的默认状态为“0”(输入)。可以在ra2 mcu上读取端口方向寄存器。
• 相应端口控制寄存器 (pcntr1) 中的端口输出数据位 (podrn) 是可读写的。读取podr时,也会读取输出数据锁存器的状态(不是引脚电平)。
• 端口控制寄存器 2 (pcntr2) 中的端口输入位 (pidrn) 是只读的。读取pcntr2寄存器中的 pidrn 位以读取引脚状态。
方法2:端口mn引脚功能
选择 (pmnpfs) 寄存器
  • 端口模式寄存器 (pmr) 是可读写的,用于指定各个引脚是用作gpio还是用作外设引脚。复位后,所有pmr寄存器均置0,这会将所有引脚都设置为gpio。如果pmr寄存器置1,则该对应的引脚将用于实现外设功能。外设功能由该引脚的mpc设置定义。
• 将引脚设置为输出时,建议先将所需的端口输出值写入数据锁存器,然后将方向寄存器设置为输出。尽管在所有系统中此操作都不太重要,但这可以防止在设置端口时出现意外的输出毛刺。
通常,使用pcntr1配置端口有助于提高访问速度,但可用的配置功能较少。使用pmnpfs寄存器将获得更多可用的配置功能,但访问速度较慢。
renesas fsp提供了引脚配置工具,以在复位后配置gpio引脚,如图19所示。配置gpio后,可以在fsp中使用hal层api对该gpio进行控制
图19. 使用fsp配置器将p107配置为输出和低电平
9.2.1 内部上拉
• 端口0到9上的大多数引脚都可以选择使能上拉电阻。上拉由每个端口mn引脚功能选择 (pmnpfs) 寄存器中的上拉 (pcr) 位控制。每个pmnpfs寄存器中的pcr位用于控制端口上的相应引脚。
• 首先,必须通过pmnpfs寄存器中的相关位将该引脚设置为输入。将pcr位置“1”以使能上拉,将其置“0”以禁用上拉。
• 复位后,会将所有pcr寄存器清零,因此将禁用所有上拉电阻。
• 每当将某个引脚指定为外部总线引脚、gpio输出或外设功能输出引脚时,上拉就会自动关闭。
9.2.2 漏极开路输出
• 配置为输出的引脚通常用作cmos输出。
• 端口0到上的大多数引脚都可以选择配置为nmos漏极开路输出。
• 每个端口9mn引脚功能选择 (pmnpfs) 寄存器中的n沟道漏极开路控制 (ncodr) 位控制哪些引脚以漏极开路模式工作。将每个寄存器中的适用位置“1”会使输出形式变为漏极开路。将每个寄存器中的适用位置“0”会将端口设置为cmos输出。
9.2.3 驱动能力
ra2a1产品可以使能驱动能力输出,其驱动能力可设为低或中驱动能力输出。其他ra2产品无此功能。
• 驱动能力的切换由每个端口mn引脚功能选择 (pmnpfs) 寄存器中的驱动能力控制寄存器 (dscr) 位控制。
• 复位后,会将所有dscr寄存器清零,因此会将所有引脚设置为低驱动能力输出。设置“00”以外的值会更改所选引脚的输出的驱动能力。
• 引脚的最大总输出因产品及封装而异。具体请参见mcu硬件手册“电气特性”章节的内容。
• 驱动能力的差异如下所示。实际输出电流会因产品和引脚类型而有所不同。详细信息请参见mcu硬件手册。
表10. 引脚驱动能力
输出驱动能力可能会对电路板设计的整体性能造成重大影响。为每个输出选择驱动能力时,应考虑以下几点:
• 建议首先将所有引脚设置为低驱动能力(默认)并评估性能。
• 根据电路板布局的不同,驱动能力设置为中或高的引脚可能会产生较高的emi辐射。
• 较长的走线可能需要更高的驱动能力,才能使信号正确传播到接收器。
9.3 设置和使用端口外设功能
端口mn引脚功能选择寄存器 (pmnpfs) 用于配置每个端口的特性。psel 位用于选择为每个端口选择的外设功能。
• 由于大多数引脚具有多种功能,因此ra2 mcu提供了引脚功能控制寄存器 (pmnpfs),可用于更改分配给引脚的功能。
• 每个引脚都有自己的pmnpfs寄存器。
• 每个pmnpfs寄存器都允许将引脚用于外设功能(psel位)、用作irq输入引脚(isel位)或用作模拟输入引脚(ase位)。如果asel位置“1”(将引脚用作模拟输入引脚),则应将该引脚的pmr位置1以用于gpio,并将该引脚的pdr位置1以用于输入。
• 请参见《硬件手册》中“i/o端口”一章的“每种产品的外设选择设置”部分。
• 为了确保外设引脚上没有非预期的边沿输入或输出,确保在修改引脚的pmnpfs寄存器之前将目标引脚的端口模式控制 (pmr) 位清零。
• 复位后,所有pmnpfs寄存器均受到写保护。为了对这些寄存器执行写入操作,必须首先使用写保护寄存器 (pwpr) 来使能写入。
• 设置pmnpfs寄存器时应格外小心,切勿将一个功能分配给多个引脚。用户不应这样做,但mcu允许上述操作。如果发生这种情况,则引脚上的功能将处于未定义状态。
• 图20为使用renesas fsp的引脚配置器使能qspi引脚的示例。
图20. 使用renesas fsp中的引脚配置器使能qspi引脚

国内的智能家居品牌有哪些
联电获三星ISP代工大单,明年首季产能利用率或满载
安全防御最有力的武器是什么
华为最新消息 7nm麒麟新处理器来了 Arm没停止与华为合作关系
一键打开和关闭微处理器
RA2快速设计指南 [8] I/O端口配置(2)
扛鼎之作vivo NEX双屏版发布 将采取前后双屏的设计
数明半导体三通道 LED 线性电流驱动方案满足汽车级需求
索尼Xperia1评测 向真实的影院观影体验靠拢
图文解说S参数(基础篇)
预处理&还原法实现废旧电池正极的批量回收
双通道直流电阻测试仪的结构及技术参数
武汉电信在2020年里的5G建设总体规划分析
2020年世界半导体制造设备年终预测
MIS基板封装技术的推动者之一
化学氧消防自救呼吸器防护性能测试仪技术指标
红米5A和魅蓝6哪个值得买? 难道只是差价100元的区别?
全新GD32F4产品系列紧贴市场高端需求
浅谈ADAS和电动汽车
汽车电子常用EMC保护方案集