이런 경우는 보통 드문데, 핀이 모자라서 하게 되었습니다.
SPI TopDesign 탭의 내용은 다음과 같습니다.
SPI -> GPIO 동작 방법은 다음과 같습니다.
1. SPI component STOP.
2. SPI 핀 모드를 GPIO 출력인 경우 Strong Drive 로 설정
3. SPI핀 기능을 GPIO 핀으로 변경
4. GPIO 기능 처럼 핀을 프로그램에서 사용.
SPIFLASH_Stop();
SPIFLASH_miso_m_SetDriveMode(SPIFLASH_miso_m_DM_STRONG);
SPIFLASH_SET_HSIOM_SEL(*(reg32 *)SPIFLASH_miso_m__0__HSIOM, SPIFLASH_miso_m__0__HSIOM_MASK,
SPIFLASH_miso_m__0__HSIOM_SHIFT, SPIFLASH_HSIOM_GPIO_SEL);
SPIFLASH_miso_m_Write(1); CyDelayUs(1);
SPIFLASH_miso_m_Write(0); CyDelayUs(1);
SPIFLASH_miso_m_Write(1); CyDelayUs(1);
GPIO -> SPI 동작 방법은 다음과 같습니다.
1. SPI핀 기능을 GPIO 핀으로 변경
2. SPI component START.
SPIFLASH_SET_HSIOM_SEL(*(reg32 *)SPIFLASH_miso_m__0__HSIOM, SPIFLASH_miso_m__0__HSIOM_MASK,
SPIFLASH_miso_m__0__HSIOM_SHIFT, SPIFLASH_HSIOM_SPI_SEL);
SPIFLASH_Start();
댓글 없음:
댓글 쓰기