设置DA14683(AQFN)USB引脚P1_1&P2_2作为SPI MOSI和MISO引脚

了解更多常见问题解答教程

2个帖子/ 0新
最后一篇
kuda.
离线
最后一次露面:1天40分钟前
加入:2020-03-21 14:58
设置DA14683(AQFN)USB引脚P1_1&P2_2作为SPI MOSI和MISO引脚

嗨!PM_DIALOG,

我有自定义DA14683板,并在SPI MOSI和MISO引脚设置DA14683(AQFN)USB引脚P1_1和P2_2时出现问题。

对于PCB布局问题,我的定制板需要将P1_1(USB引脚)和P2_2(USB PIN)设置为SPI MOSI和MISO引脚。

我有跟踪SPI MOSI和MISO信号输出和示波器输入。它可以跟踪波形以验证硬件是工作。

但我无法从SPI读取功能中获取任何数据。

我试图将USB引脚P1_1设置为SPI MOSI和P4_0作为SPI MISO引脚。然后我可以从SPI读取功能接收数据。

我的问题是

CAN14683 USB PIN P1_1&P2_2设置为SPI MOSI和MISO引脚通过呼叫REG_SET_BIT(CRG_PER,USBPAD_REG,USBPAD_EN);。?

我的代码,如下所示。

REG_SET_BIT(CRG_PER,USBPAD_REG,USBPAD_EN);
// spi.
hw_gpio_set_pin_function(hw_gpio_port_mt6381_pi_clk,hw_gpio_pin_mt6381_spi_clk,hw_gpio_mode_output,hw_gpio_func_spi_clk);

hw_gpio_set_pin_function(hw_gpio_port_mt6381_spi_di,hw_gpio_pin_mt6381_spi_di,hw_gpio_mode_input,hw_gpio_func_spi_di);
hw_gpio_set_pin_function(hw_gpio_port_mt6381_spi_do,hw_gpio_pin_mt6381_spi_do,hw_gpio_mode_output,hw_gpio_func_spi_do);
hw_gpio_set_pin_function(hw_gpio_port_mt6381_spi_csn,hw_gpio_pin_mt6381_spi_csn,hw_gpio_mode_output,hw_gpio_func_pi_en);
hw_gpio_set_active(hw_gpio_port_mt6381_spi_csn,hw_gpio_pin_mt6381_spi_csn);

....

mt6381_spi_handle = ad_spi_open(mt6381_spi);

spi_tx_buf [0] = spi_cr_cmd;
spi_tx_buf [1] = reg;
spi_tx_buf [2] = addr;
spi_tx_buf [3] =(data_size&0xff) - 1;
spi_tx_buf [4] =(data_size&0xff00)>> 8;
spi_tx_buf_data_size = 5;

ad_spi_write(mt6381_spi_handle,spi_tx_buf,spi_tx_buf_data_size);

Memset(SPI_TX_BUF,0,SPI_BUFFER_LEN);
spi_tx_buf [0] = spi_rd_cmd;
spi_tx_buf_data_size = 1;
ad_spi_transact(mt6381_spi_handle,spi_tx_buf,spi_tx_buf_data_size,spi_rx_buf,data_size);
os_delay_ms(spi_dma_callback_idle_time_microsecond);
memcpy(data_buf_ptr,spi_rx_buf,data_size);
ad_spi_close(mt6381_spi_handle);

TKS

kuda.

设备:
PM_DIALOG.
线上
最后一次露面:12分7秒前
员工
加入:2018-02-08 11:03
嗨Kuda,

嗨Kuda,

根据DA14683数据表和部分32.5特殊I / O考虑因素

“要在GPIO模式下使用P1_1或P2_2,必须设置USBPAD_REG [USBPAD_EN]。但是,此引脚上的允许电平为0V,V33导轨上的电压。如果选择1.8V作为引脚电源,则为150的电流。UA是预期的。此外,这些引脚不应在睡眠模式下使用,因为USBPAD_REG将被关闭(属于外围电源域)。“

两者都可以使用3.3V电源轨,因此两者都不能以睡眠模式供电。您是否在睡眠中或在活动模式下使用DA14683?

此外,当这些引脚用作GPIO时,请确保取消激活USB逻辑。

#define dg_configuse_usb_enumeration(0)#define dg_configuse_usb(0)

谢谢,PM_DIALOG.