/* * Initialize external flash *and* SPI bus! */ void xmem_init(void) { spi_init(); P4DIR |= BV(FLASH_CS); // Unnecessary for Zolertia Z1 | BV(FLASH_PWR); P5DIR |= BV(FLASH_HOLD); // In P5 for Z1 SPI_FLASH_DISABLE(); /* Unselect flash. */ SPI_FLASH_UNHOLD(); }
/* * Initialize external flash *and* SPI bus! */ void xmem_init(void) { spi_init(); P4DIR |= BV(FLASH_CS) | BV(FLASH_HOLD) | BV(FLASH_PWR); P4OUT |= BV(FLASH_PWR); /* P4.3 Output, turn on power! */ SPI_FLASH_DISABLE(); /* Unselect flash. */ SPI_FLASH_UNHOLD(); }
/* * Initialize external flash *and* SPI bus! */ void xmem_init(void) { int s; spi_init(); P4DIR |= BV(FLASH_CS) | BV(FLASH_HOLD) | BV(FLASH_PWR); P4OUT |= BV(FLASH_PWR); /* P4.3 Output, turn on power! */ /* Release from Deep Power-down */ s = splhigh(); SPI_FLASH_ENABLE(); SPI_WRITE_FAST(SPI_FLASH_INS_RES); SPI_WAITFORTx_ENDED(); SPI_FLASH_DISABLE(); /* Unselect flash. */ splx(s); SPI_FLASH_UNHOLD(); }