主题:SysConfig 中讨论的其他器件
工具/软件:
尊敬的 TI 团队:
我正在使用 F28388D controlCARD 进行测试、并在共享 GPIO 上组合 QEP2和 SCIB 功能时遇到潜在的 SysConfig 问题。
测试设置:
我通过 PWMXBAR 将 ABI 信号从 GPIO60、58和59路由到 QEP2。 在 SysConfig 中、我将 QEP2输入配置为使用 GPIO54 (A)、GPIO55 (B)和 GPIO57 (索引)。 同时、我想将 GPIO54和 GPIO55分别用于 SCIB_TX 和 SCIB_RX。
问题:
在 SysConfig SCI 模块中将 SCIB_TX 和 SCIB_RX 分配到 GPIO54和 GPIO55时、会收到一个 资源冲突错误 工程构建失败。
[图1:SCI 资源冲突]
[图2:通过 PWMXBAR 配置实现 EQEP2]
观察结果:
IF I 手动配置 GPIO54和 GPIO55对于 SCIB 调用后Board_init()
,项目生成和 QEP2和 SCIB 函数在运行时都能正常工作。
以下是后面的相关代码Board_init()
:
// SCIB GPIO manual setup GPIO_setPinConfig(GPIO_55_SCIB_RX); GPIO_setPadConfig(55, GPIO_PIN_TYPE_STD | GPIO_PIN_TYPE_PULLUP); GPIO_setQualificationMode(55, GPIO_QUAL_ASYNC); GPIO_setPinConfig(GPIO_54_SCIB_TX); GPIO_setPadConfig(54, GPIO_PIN_TYPE_STD | GPIO_PIN_TYPE_PULLUP); GPIO_setQualificationMode(54, GPIO_QUAL_ASYNC); // SCIB initialization SCI_clearInterruptStatus(SCIB_BASE, SCI_INT_RXFF | SCI_INT_TXFF | ... ); SCI_clearOverflowStatus(SCIB_BASE); SCI_resetTxFIFO(SCIB_BASE); SCI_resetRxFIFO(SCIB_BASE); SCI_resetChannels(SCIB_BASE); SCI_setConfig(SCIB_BASE, 50000000, 115200, (SCI_CONFIG_WLEN_8 | SCI_CONFIG_STOP_ONE | SCI_CONFIG_PAR_NONE)); SCI_disableLoopback(SCIB_BASE); SCI_performSoftwareReset(SCIB_BASE); SCI_setFIFOInterruptLevel(SCIB_BASE, SCI_FIFO_TX0, SCI_FIFO_RX0); SCI_enableFIFO(SCIB_BASE); SCI_enableModule(SCIB_BASE);
和 PWMXBAR 路由:
XBAR_enableEPWMMux(XBAR_TRIP4, XBAR_MUX01); XBAR_setInputPin(INPUTXBAR_BASE, XBAR_INPUT1, 60); XBAR_setEPWMMuxConfig(XBAR_TRIP4, XBAR_EPWM_MUX01_INPUTXBAR1); XBAR_enableEPWMMux(XBAR_TRIP5, XBAR_MUX03); XBAR_setInputPin(INPUTXBAR_BASE, XBAR_INPUT2, 58); XBAR_setEPWMMuxConfig(XBAR_TRIP5, XBAR_EPWM_MUX03_INPUTXBAR2); XBAR_enableEPWMMux(XBAR_TRIP7, XBAR_MUX05); XBAR_setInputPin(INPUTXBAR_BASE, XBAR_INPUT3, 59); XBAR_setEPWMMuxConfig(XBAR_TRIP7, XBAR_EPWM_MUX05_INPUTXBAR3);
问题:
-
这是已知的 SysConfig 限制还是错误?
-
使用 PWMXBAR 将信号路由到 QEPx 时、相应的 QEPx GPIO 是否仍可用于其他外设多路复用?
-
Board_init()
在这种情况下、是否在建议的权变措施之后手动覆盖多路复用?
提前感谢您的支持!