SPI clock 은 1.5Mhz 로 설정하였고, SPI_EN 은 부팅 전에 Low 로 설정하였습니다.
Reset 을 주고, SPI_INTn 핀이 계속 Low 상태여서, 포럼에 올라온 글들을 참고하여,
High 가 될때까지 SPI read 를 하였지만, 계속 SPI_INTn 핀은 계속 low 상태입니다.
소스코드를 참고하여 설정하였습니다만, 여전히 SPI_INTn 핀은 Low 상태로 있습니다.
SPI_INTn 핀이 Low 인 상태에서도 SPI_REG_TX_BUFF_AVAIL (0x03) 을 read 해 보면, 2번째 bit 이 1 올라 옵니다만, SPI_CMD_TX_CMD, SPI_CMD_TX_DATA 를 보내도 SPI_INTn 핀이 Low 여서 그런지 아무 동작을 안하네요.
포럼 내용 중에 부팅 후 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 로 올라가지 않습니다.
SPI MISO 핀을 찍어보면, 3.3V 까지 올라가지 않고, 1.8V 정도까지만 올라갑니다. Host 에서 1로 인식하기가 좀 애매한 상황인 것 같습니다.