This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM625:PRU 快速 IO

Guru**** 2482225 points
Other Parts Discussed in Thread: AM625

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1448341/am625-pru-fast-io

器件型号:AM625

工具与软件:

您好、 

我正在使用 am625评估板、并且尝试 了解如何使用 PRU 引脚的(FAST) GPI 模式。  我使用 PRU 接头(J10)引脚(18、19和20)进行测试。

首先、我将所述引脚配置为 GPO、以便验证我是否可以在 PRU 中切换(高电平/低电平)。  我使用了以下设置、可以确认引脚是否正确设置为高电平和低电平。

AM62X_IOPAD (0x0050、PIN_INPUT、4)/*(P22) GPMC0_AD5.PR0_PRU0_GPO5 */
AM62X_IOPAD (0x0054、PIN_INPUT、4)/*(P21) GPMC0_AD6.PR0_PRU0_GPO6 */
AM62X_IOPAD (0x0058、PIN_INPUT、4)/*(R23) GPMC0_AD7.PR0_PRU0_GPO7 */

然后、我将上述引脚更 改为 GPI:

AM62X_IOPAD (0x0050、PIN_INPUT、5)/*(P22) GPMC0_AD5.PR0_PRU0_GPI5 */
AM62X_IOPAD (0x0054、PIN_INPUT、5)/*(P21) GPMC0_AD6.PR0_PRU0_GPI6 */
AM62X_IOPAD (0x0058、PIN_INPUT、5)/*(R23) GPMC0_AD7.PR0_PRU0_GPI7 */

我使用了这个简单的 PRU 代码:

volatile register uint32_t __R30;
volatile register uint32_t __R31;

#define BIT7 (1 << 7)
#define BIT5 (1 << 5)

void main(void)
{
	while (1) {		
		if (__R31 & BIT7)
			Debug_Log("BIT7: High\n\r");
		if (__R31 & BIT5)
			Debug_Log("BIT5: High\n\r");
	}
}

如果将引脚设置为高电平、则我没有看到输入引脚的变化。 我努力想要控制住  

ct_CFG.gpcfg0_reg_bit.pru0_gpi_mode = 1;仍然获得相同的行为。
能否就如何使用 GPI 模式提供一些指导?
此致、
John