主题中讨论的其他器件:HALCOGEN
工具/软件:
您好、
我尝试使用 SPI4 外设从 SPI 闪存读取数据。
手动控制 CS(使用 GPIO)时、一切都运行良好。 但是、当我让 SPI4 外设控制 GPIO 时、无法获得有效读数。
JEDEC ID 命令就是一个简单的示例:
spiBASE_t *base = spiREG4;
spiDAT1_t data_format = {.CS_HOLD = true,
.WDEL = true,
.DFSEL = SPI_FMT_0,
.CSNR = SPI_CS_0};
uint16_t tx[10] = {JDEC_COMMAND};
uint16_t rx[10] = {0};
spiTransmitData(base, &data_format, 1, tx);
spiReceiveData(base, &data_format, 4, rx);
我怀疑问题在于 CS 在发送和接收操作之间被复位。
如何确保 CS 保持低电平?
请注意、我不能使用 spiTransmitAndReceiveData、因为 我不想在传输的同时接收数据。
此致、
Gabriel
