早上好、
我还有一个关于 GPIO 的问题。
我的理解:
(三
我们板上的引脚当前使用 SysConfig 进行配置、SysConfig 会生成一个包含引脚名称的 gPinMuxMainDomainCfg 类型映射
(即枚举 Pinmux_MainOffsets 中 TI_SDK/MCU_PLUS_SDK_am64x/SOURCE /驱动程序/ pinmux/am64x_am243x/pinmux.h 中定义的引脚偏移)
作为密钥和设置(PIN_MODE、拉动方向、输入/输出)作为数据。
在初始化期间调用函数 Pinmux_Init、该函数使用域 main 调用一次自身 Pinmux_Config、使用域 MCU 调用一次。
然后在 Pinmux_Config内部 指定一个域(主域或 MCU)。 然后根据域计算基地址。
(三
我无法理解的内容
(三
现在、似乎可以通过某个域相关基址以及枚举 Pinmux_MainOffsets 中给出的引脚偏移来访问每个单个引脚。
这包括 GPIO 引脚。
但同时、通过计算组寄存器索引和引脚掩码、GPIO 引脚只能作为位位置进行访问(whcih 是合理的、因为它们只有数字值)
来自 GPIO 模块基址、该基址指向 TI_SDK/MCU_PLUS_SDK_am64x/SOURCE /驱动程序/GPIO/V0/cslr_gpio.h 中定义的 CSL_GpioRegs 结构
这里的问题是、我看不到 SysConfig 方法如何使用每个引脚的寄存器、而 cslr_gpio.h 方法如何使用仅用于组和引脚的寄存器作为位值组合在一起。
(三
感谢您抽出宝贵的时间、为您解决问题。
此致
Philip。