cebf746
Dependents: CEBF746_Master CEBF746_Slave_withTPM CEBF746_Master_New
lib_spi_master.cpp
- Committer:
- gandol2
- Date:
- 2016-10-18
- Revision:
- 6:f1ec76e536ef
File content as of revision 6:f1ec76e536ef:
#include "mbed.h" #include "lib_spi_master.h" static bool spi_master_init_flag = false; void spi_master_init(cube_spi_master_t* pSPIHandle) { //SPI spi_master(SPI_MOSI, SPI_MISO, SPI_SCLK); // MOSI, MISO, SCLK(CLK,SCK) //DigitalOut cs(SPI_SSEL); static SPI spi_master(SPI_MOSI, SPI_MISO, SPI_SCLK); // MOSI, MISO, SCLK(CLK,SCK) static DigitalOut cs(SPI_SSEL); pSPIHandle->spi = &spi_master; pSPIHandle->cs = &cs; pSPIHandle->spi->format(SPI_CONFIG_BIT, 0); pSPIHandle->spi->frequency(SPI_CONFIG_FREQUENCY); printf("SPI Init.. Packet bit size=[%d] Frequency=[%d]Mhz\n", SPI_CONFIG_BIT, (SPI_CONFIG_FREQUENCY/1000000)); spi_dummy_write(pSPIHandle); spi_dummy_write(pSPIHandle); spi_dummy_write(pSPIHandle); spi_dummy_write(pSPIHandle); spi_dummy_write(pSPIHandle); spi_master_init_flag = true; } /** @brief spi master start * */ void spi_master_start(cube_spi_master_t* pSPIHandle) { pSPIHandle->spi->lock(); *(pSPIHandle->cs) = 0; SPI_WAIT(10); } /** @brief spi master end * */ void spi_master_end(cube_spi_master_t* pSPIHandle) { SPI_WAIT(10); *(pSPIHandle->cs) = 1; pSPIHandle->spi->unlock(); } /** @brief spi master dummy write * */ void spi_dummy_write(cube_spi_master_t* pSPIHandle) { spi_master_start(pSPIHandle); pSPIHandle->spi->write(0x00); spi_master_end(pSPIHandle); SPI_WAIT(10); }