WizFi360 PA - SPI issue (SPI_INTn)

안녕하세요,
WizFi360 PA 모듈을 사용하여, STM 보드로 SPI 통신을 하려고 합니다.

SPI 모드로 보드 꾸미기 전에 UART로 읽은 버전 정보입니다.

AT+GMR

AT version:1.1.1.7(May 4 2021 15:14:59)
SDK version:3.2.0(a0ffff9f)
compile time:May 4 2021 15:14:59

SPI clock 은 1.5Mhz 로 설정하였고, SPI_EN 은 부팅 전에 Low 로 설정하였습니다.
Reset 을 주고, SPI_INTn 핀이 계속 Low 상태여서, 포럼에 올라온 글들을 참고하여,
High 가 될때까지 SPI read 를 하였지만, 계속 SPI_INTn 핀은 계속 low 상태입니다.

Reset 후 다른 설정이 필요한지 궁금하네요.

안녕하세요.

WizFi360 SPI를 사용하기 위해서는 말씀하신 내용과 같이 하기와 같은 설정이 필요로 합니다.

  • F/W version 1.1.x.x의 최신 F/W 사용
  • SPI_EN pin을 low로 설정

상기와 같이 설정을 하셨다면 reset 이후에 별도 다른 설정을 하지 않으셔도 됩니다.

WizFi360 SPI 관련 pin 설정 및 SPI 사용 예제 source code는 하기 link 참고 바랍니다.

그리고 WizFi360은 SPI slave mode로 동작한다는 점 유의하시여 구현 부탁드리겠습니다.

감사합니다.

안녕하세요,

소스코드를 참고하여 설정하였습니다만, 여전히 SPI_INTn 핀은 Low 상태로 있습니다.

  1. SPI_INTn 핀이 Low 인 상태에서도 SPI_REG_TX_BUFF_AVAIL (0x03) 을 read 해 보면, 2번째 bit 이 1 올라 옵니다만, SPI_CMD_TX_CMD, SPI_CMD_TX_DATA 를 보내도 SPI_INTn 핀이 Low 여서 그런지 아무 동작을 안하네요.

  2. 포럼 내용 중에 부팅 후 SPI 버퍼에 “ready” 와 같은 값이 버퍼에 있기 때문에 SPI_INTn 이 Low 상태로 된다는 내용이 있었습니다.
    부팅 후 SPI_INTn 이 Low 일 경우, SPI_REG_INT_STTS (0x06) 과 SPI_REG_RX_DAT_LEN (0x02) 를 이용하여 Rx length 만큼 SPI read 를 하면 되는지요?

  • SPI_REG_INT_STTS (0x06) 를 체크하면, 1 번째 bit 가 1로 올라오는 경우가 없습니다.
  • SPI_REG_RX_DAT_LEN (0x02) 만 해보면, Rx length 값이 올라오는 경우가 있지만, length 만큼 SPI read 를 해도 SPI_INTn 핀이 High 로 올라가지 않습니다.
  1. SPI MISO 핀을 찍어보면, 3.3V 까지 올라가지 않고, 1.8V 정도까지만 올라갑니다. Host 에서 1로 인식하기가 좀 애매한 상황인 것 같습니다.

다른 설정이 필요한지 궁금합니다.