HC32功能复用说明

目录

  • 引脚有哪些功能
  • 如何选择功能
  • 代码

引脚有哪些功能

数据手册中,每一个引脚功能有至多64个,对应列Func0~Func63

其中,Func0 ~Func31在《表 2-1 引脚功能表》中列出
Func32~Func63在《表 2-2 Func32~63 表》中列出。

Func32~Func63中的功能分为两组Func_Grp1,Func_Grp2

引脚可以任意选择组内的任意一个功能
在这里插入图片描述

在这里插入图片描述

如何选择功能

  • PFSRxy->FSEL[5:0]:功能选择
  • PFSRxy->BFE[5:0]:副功能许可
  • PCCR->BFSEL[3:0]:副功能选择

如果需要将一个端口同时设成两种功能,才要使能副功能。一般不使用设置为Disable即可。

副功能选择只有4个位域,只能选择到Func0~Func31
在这里插入图片描述

代码

/*********************************************************************************** \brief   Set Port Pin function**** \param   [in]  enPort               GPIO port index, This parameter can be**                                     any value of @ref en_port_t** \param   [in]  u16Pin               GPIO pin index, This parameter can be**                                     any value of @ref en_pin_t** \param   [in]  enFuncSel            Function selection, This parameter can be**                                     any value of @ref en_port_func_t**** \param   [in] enSubFunc             The new state of the gpio sub-function.** \arg     Enable                     Enable.** \arg     Disable                    Disable.**** \retval  Ok                         Set successful to corresponding pins********************************************************************************/
en_result_t PORT_SetFunc(en_port_t enPort, uint16_t u16Pin, en_port_func_t enFuncSel,  \en_functional_state_t enSubFunc)
{stc_port_pfsr_field_t *PFSRx;uint8_t u8PinPos = 0u;/* parameter check */DDL_ASSERT(IS_VALID_PORT(enPort));DDL_ASSERT(IS_VALID_FUNC(enFuncSel));DDL_ASSERT(IS_FUNCTIONAL_STATE(enSubFunc));PORT_Unlock();for (u8PinPos = 0u; u8PinPos < 16u; u8PinPos ++){if (u16Pin & (uint16_t)(1ul<<u8PinPos)){PFSRx = (stc_port_pfsr_field_t *)((uint32_t)(&M4_PORT->PFSRA0) \+ 0x40ul * enPort + 0x4ul * u8PinPos);/* main function setting */PFSRx->FSEL = enFuncSel;/* sub function enable setting */PFSRx->BFE = (Enable == enSubFunc ? Enable : Disable);}}PORT_Lock();return Ok;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/70671.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据库管理-第293期 奇怪的sys.user$授权+(20250210)

数据库管理293期 2025-02-10 数据库管理-第293期 奇怪的sys.user$授权&#xff08;20250210&#xff09;1 清空shared pool2 SR反馈总结 数据库管理-第293期 奇怪的sys.user$授权&#xff08;20250210&#xff09; 作者&#xff1a;胖头鱼的鱼缸&#xff08;尹海文&#xff09…

AutoMQ 如何实现没有写性能劣化的极致冷读效率

前言 追赶读&#xff08;Catch-up Read&#xff0c;冷读&#xff09;是消息和流系统常见和重要的场景。 削峰填谷&#xff1a;对于消息来说&#xff0c;消息通常用作业务间的解耦和削峰填谷。削峰填谷要求消息队列能将上游发送的数据堆积住&#xff0c;让下游在容量范围内消费…

【大模型】本地部署DeepSeek-R1:8b大模型及搭建Open-WebUI交互页面

本地部署DeepSeek-R1:8b大模型 一、摘要及版本选择说明1.1 摘要1.2 版本选择 二、下载并安装Ollama三、运行DeepSeek-R1:8b大模型四、安装Open WebUI增强交互体验五、关闭Ollama开机自动启动六、DeepSeek大模型启停步骤 一、摘要及版本选择说明 1.1 摘要 作为一名对 AI 和生成…

DeepSeek大模型的发展的十问十答

DeepSeek大模型是由杭州深度求索人工智能基础技术研究有限公司开发的一款基于Transformer架构的大型语言模型&#xff0c;具体介绍如下&#xff1a; 1. 架构基础 Transformer架构&#xff1a;DeepSeek大模型基于Transformer架构&#xff0c;该架构由Google在2017年提出&#xf…

Avnet RFSoC基于maltab得5G 毫米波 开发工具箱

使用 MATLAB 连接到 AMD Zynq™ RFSoC 评估板。使用 RF 附加卡执行 OTA 测试。使用 HDL Coder 部署算法 版本要求&#xff1a; 大于 2023b 需要以下支持包之一&#xff1a; 适用于 Xilinx 基于 Zynq 的无线电&#xff08;R2023b 及更早版本&#xff09;的通信工具箱支持包适…

计算机毕业设计Python+Spark知识图谱医生推荐系统 医生门诊预测系统 医生数据分析 医生可视化 医疗数据分析 医生爬虫 大数据毕业设计 机器学习

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

Vue事件处理 - 绑定事件

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue事件处理 - 绑定事件及事件处理 目录 事件处理 绑定方式 函数表达式 绑定函数名 输入框绑定事件 拿到输入框的值 传值加事件源 事件第三种写法 总结 事件处理 绑定方式 函数表达式 在按钮上使用函数表达式绑定事…

World of Warcraft [CLASSIC] 80 Four Horsemen (Naxxramas)

纳克萨玛斯 天启四骑士 Four Horsemen 图一&#xff1a;10人同生共死 图二&#xff1a;25人同生共死站位 图三&#xff0c;不做同生共死&#xff0c;做永恒者&#xff0c;击杀白马分布图&#xff0c;主要是不熟练乱跑&#xff0c;容易导致减员失败 永恒者&#xff0c;玩家无一…

DeepSeek与AI提示语设计的全面指南

当人人都会用AI时&#xff0c;你如何用得更好更出彩&#xff1f;本文全面介绍了DeepSeek的功能与使用方法&#xff0c;并深入探讨了AI提示语设计的核心技巧与进阶策略。通过精准的任务定义、提示语优化和人机协作&#xff0c;用户可以从AI的基础使用逐步进阶到创新应用&#xf…

HarmonyOS Next 方舟字节码文件格式介绍

在开发中&#xff0c;可读的编程语言要编译成二进制的字节码格式才能被机器识别。在HarmonyOS Next开发中&#xff0c;arkts会编译成方舟字节码。方舟字节码长什么样呢&#xff1f;我们以一个demo编译出的abc文件&#xff1a; 二进制就是长这样&#xff0c;怎么去理解呢&…

TCP/IP 协议图解 | TCP 协议详解 | IP 协议详解

注&#xff1a;本文为 “TCP/IP 协议” 相关文章合辑。 未整理去重。 TCP/IP 协议图解 退休的汤姆 于 2021-07-01 16:14:25 发布 TCP/IP 协议简介 TCP/IP 协议包含了一系列的协议&#xff0c;也叫 TCP/IP 协议族&#xff08;TCP/IP Protocol Suite&#xff0c;或 TCP/IP Pr…

【C++11】lambda和包装器

1.新的类功能 1.1默认的移动构造和移动赋值 原来C类中&#xff0c;有6个默认成员函数&#xff1a;构造函数/析构函数/拷⻉构造函数/拷⻉赋值重载/取地址重 载/const 取地址重载&#xff0c;最后重要的是前4个&#xff0c;后两个⽤处不⼤&#xff0c;默认成员函数就是我们不写…

zabbix监控nginx指标

使用nginx作为web服务器&#xff0c;我们需要清晰知道&#xff1a; 1.nginx的工作状态 2.请求数有多少&#xff0c;多少是已经响应完成的&#xff0c;多少是响应失败的 3.nginx服务以及端口监听情况是否处于运行状态 当出现服务停止或者大量请求响应失败时&#xff0c;我们需要…

当Axure遇见DeepSeek:设计工具的革命性进化

从传统的平面设计软件到如今的交互原型工具&#xff0c;设计工具经历了多次革命性的进化。然而&#xff0c;随着人工智能技术的不断发展&#xff0c;设计工具正面临又一次重大的变革。Axure&#xff0c;作为设计界知名的原型设计工具&#xff0c;以其强大的功能和灵活的操作性&…

【Matlab优化算法-第15期】基于NSGA-II算法的铁路物流园区功能区布局优化

基于NSGA-II算法的铁路物流园区功能区布局优化 一、前言 铁路物流园区的合理布局对于提高物流效率、降低运营成本具有重要意义。随着铁路物流的快速发展&#xff0c;传统的铁路货场需要升级为综合物流园区&#xff0c;以满足多式联运和综合物流服务的需求。本文将介绍一种基于…

【韩顺平linux】部分上课笔记整理

整理一下一些韩顺平老师上课时候的笔记 课程&#xff1a;【小白入门 通俗易懂】韩顺平 一周学会Linux linux环境&#xff1a;使用阿里云服务器 笔记参考 &#xff1a; [学习笔记]2021韩顺平一周学会Linux 一、自定义函数 基本语法 应用实例&#xff1a; 计算两个参数的和…

DeepSeek-R1 本地电脑部署 Windows系统 【轻松简易】

本文分享在自己的本地电脑部署 DeepSeek&#xff0c;而且轻松简易&#xff0c;快速上手。 这里借助Ollama工具&#xff0c;在Windows系统中进行大模型部署~ 1、安装Ollama 来到官网地址&#xff1a;Download Ollama on macOS 点击“Download for Windows”下载安装包&#x…

推荐一款 免费的SSL,自动续期

支持自动续期 、泛域名 、可视化所有证书时效性 、可配置CDN 的一款工具。免费5个泛域名和1个自动更新。 链接 支持&#xff1a;nginx、通配符证书、七牛云、腾讯云、阿里云、CDN、OSS、LB&#xff08;负载均衡&#xff09; 执行自动部署脚本 提示系统过缺少crontab 安装cro…

UE5--浅析委托原理(Delegate)

委托概述 委托是一种用于事件处理的机制。通过使用委托&#xff0c;可以将一个或多个函数绑定到一个事件上&#xff0c;在事件触发时自动调用这些函数。代理也叫做委托&#xff0c;比如&#xff1a;跳&#xff0c;跑&#xff0c;开枪&#xff0c;伤害等响应&#xff0c;就是注…

ABP框架9——自定义拦截器的实现与使用

一、AOP编程 AOP定义:面向切片编程&#xff0c;着重强调功能&#xff0c;将功能从业务逻辑分离出来。AOP使用场景&#xff1a;处理通用的、与业务逻辑无关的功能&#xff08;如日志记录、性能监控、事务管理等&#xff09;拦截器:拦截方法调用并添加额外的行为&#xff0c;比如…