ESP32C3--SPI2使用问题--ESP-IDF_V4.4

timerc
Posts: 1
Joined: Sat Oct 09, 2021 3:14 am

ESP32C3--SPI2使用问题--ESP-IDF_V4.4

Postby timerc » Sat Oct 09, 2021 3:35 am

使用ESP32C3的SPI2的时候,配置SPI接口后,发现SPI接口读取从设备的数据的时候会整体左偏移一bit,
SPI模式为0;
spi_device_interface_config_t devcfg={
.clock_speed_hz=2*1000*1000, //Clock out at 2 MHz
.mode=0, //SPI mode 0
.spics_io_num=-1,//PIN_NUM_CS, //CS pin
.queue_size=7,
}
使用的接收API是spi_device_polling_transmit(spi, t);
DMA通道配置的是SPI_DMA_CH_AUTO
IO配置如下:
MISO------GPIO2
MSOI------GPIO7
SCK--------GPIO6
CS----------GPIO8
比如从设备上发的值是0x00,0x01,0x02,0x04;
但是在芯片读到的值却是0x00,0x02,0x04,0x08;
整体左移了一bit;
请问这个是什么问题,有没有办法解决啊;
同样的代码和配置在ESP32D0WDQ6-V3上使用就没有问题,
ESP32D0WDQ6-V3的IO配置如下:
MISO-------GPIO25
MOSI-------GPIO23
SCK---------GPIO19
CS-----------GPIO22
除了IO配置不一样,其他操作配置代码都一样,
是不是这两款芯片有啥使用上差别,官网上没有找到相关资料,

ESP_Yake
Posts: 109
Joined: Mon Mar 06, 2017 12:23 pm

Re: ESP32C3--SPI2使用问题--ESP-IDF_V4.4

Postby ESP_Yake » Tue Oct 12, 2021 11:55 am

Hi ,
我想确认几个问题,
1. 是否只有 SPI2 有问题,又试一下其他 SPI 么?
2. 能否确定是否只有 SPI master 读数据才有左移 1bit 的情况,如果是这样的话,你可以搜索一下 input_delay_ns 这个参数

Who is online

Users browsing this forum: Google [Bot] and 69 guests