我正在使用DSP外设模式作为我的基线开发环境。我的申请目前使用2个UART和SPI分配GPIO端口/引脚,如下所定义:
/ **************************************************************************************** /
/ * UART1外部主机接口的GPIO配置* /
/ **************************************************************************************** /
#define gpio_uart1_tx_port gpio_port_0.
#define gpio_uart1_tx_pin gpio_pin_4.
#define gpio_uart1_rx_port gpio_port_0.
#define gpio_uart1_rx_pin gpio_pin_5.
/ **************************************************************************************** /
/ * QPI CI接口的UART2 GPIO配置* /
/ **************************************************************************************** /
#define gpio_uart2_tx_port gpio_port_1.
#define gpio_uart2_tx_pin gpio_pin_2
#define gpio_uart2_rx_port gpio_port_1.
#define gpio_uart2_rx_pin gpio_pin_3.
/ **************************************************************************************** /
/ * SPI Flash选项* /
/ **************************************************************************************** /
#define spi_gpio_port gpio_port_0.
#define spi_clk_pin gpio_pin_0.
#define spi_cs_pin gpio_pin_1.
#define spi_di_pin gpio_pin_6.
#define spi_do_pin gpio_pin_7.
我们正在使用580 WL-CSP34软件包,其中我理解此特定包只有2个可用的GPIO端口。
使用上述GPIO端口/引脚分配,您如何释放可用PIN的建议是用DA挖掘另一个设备的重置线,以便以编程方式重置该设备?
谢谢,
- khai
嗨kqtrinh,
是的,WL-CSP34确实只有两个可用的端口Port_0和Port_1,虽然我不完全承认您的问题,但您希望额外的GPIO引脚以通过外部MCU以编程方式重置580,所以我想你会切换那个通过外部MCU的GPIO通过SW检查引脚的状态并发出平台复位,是这种情况吗?在您发布的当前配置中,您还可以使用免费引脚(P02,P03,P10和P11,也可以使用P14 / SWCLK和P15 / SW_DIO - 您需要对那些引脚有点小心,因为它们是JTAG引脚),所以究竟是什么?
一些附加信息,如果在特定的函数中将引脚配置为配置引脚,则不限制在不同的功能实体中重新配置它们,例如,当您希望发送或发送时,您可以将PIN配置为UART TX / Rx。您知道您将在完成数据接收后,完成后,您可以重新配置PIN函数是否有任何SPI功能。
谢谢mt_dialog.
不,实际上我想要它等待它。我希望DA MCU通过GPIO引脚重置外部设备。因此,基于我已经用完了两个UART和SPI的基础,看起来GPIO Port1 PIN0(P1_0)或POR1 PIN1(P1_1)可用于此目的?我对么?
我也想使用MCU 16MHz时钟来驱动我的外部设备。这个时钟是否映射到580基本/ Pro套件上的GPIO引脚之一?如果没有,我如何利用这个时钟为我的外部设备?
谢谢,
- khai
嗨kqtrinh,
关于时钟,通过启用,GPIO引脚上的时钟,XTAL16,XTAL32,RC16M_CLK,RC32K和RC32K低抖动时钟的XTAL或任何时钟分别映射到端口/引脚P05,P06,P07,P10和P11相应的时钟并通过将相应的引脚设置为输出。这将将所选时钟输出到指定的引脚,此行为仅在测试期间启用(有一个特定的隐藏寄存器将芯片放在测试模式下),这意味着从端口0和1中的相应引脚将保留在输出中时钟的测试信号(如果相应的引脚配置为输出),因此您不会在测试模式下运行时使用这些端口作为输出。此外,如果您的意思在580上使用睡眠模式,请注意,XTAL将在低功耗模式下关闭。所以我不确定这是一个好主意,因为你已经有一个PIN限制。
谢谢mt_dialog.
好的。看起来不像我们可以从580那里依靠这个时钟。您能评论重置引脚是否可以确认我的思维是否正确?
回想一下我的问题:
我想要另一个方式。我希望DA MCU通过DA J4标题上的GPIO引脚重置外部设备。
因此,基于我已经用完了两个UART和SPI的基础,看起来GPIO Port1 PIN0(P1_0)或POR1 PIN1(P1_1)可用于此目的?我对么?
谢谢,
- khai
嗨kqtrinh,
是的,我没有看到任何probelm,您应该能够使用这些GPIO作为输出来驱动外部MCU复位。
谢谢mt_dialog.
在GPIO的DA固件代码中,有功能
gpio_configurepin()
gpio_setinactive()
gpio_setactive()
你介意告诉我什么时候使用?查看代码,看起来需要在初始化或启动期间调用GPIO_CONFIGUREPIN()。然后可以使用gpio_setactive()和gpio_setinactive()。我的理解是否正确?
谢谢,
- khai
嗨kqtrinh,
是的GPIO_CONFIGUREPIN()是配置PIN的功能实体,也可以设置引脚的默认状态(高或低),使用GPIO_SETINACT()和GPIO_SETICTIVE()来设置PIN高的状态低的。
我建议看一下UM-B-051 DA1458X软件平台参考文献.PDF在第101节上,其中记录了SDK中GPIO的驱动程序。
谢谢mt_dialog.