Beispiel #1
0
void sendArray3310( uint8_t * data, int cnt )
{
    spiAcquireBus( &SPID1 );     // Acquire ownership of the bus.
    spiStart( &SPID1, &spicfg ); // Setup transfer parameters.
    spiSelect( &SPID1 );         // Slave Select assertion.
    //spiExchange( &SPID1, 512,
    //            txbuf, rxbuf );  // Atomic transfer operations.
    spiStartSend( &SPI_3310, cnt, data );
    spiUnselect( &SPID1 );       // Slave Select de-assertion.
    spiReleaseBus( &SPID1 );     // Ownership release.
}
Beispiel #2
0
/** * @brief Sends a byte through the SPI interface and return the byte
    * received from the SPI bus. 
    * @param byte : byte to send. 
    * @retval : The value of the received byte. 
    */ 
void sendByte3310( uint8_t byte )
{
    spiAcquireBus( &SPI_3310 );     // Acquire ownership of the bus.
    spiStart( &SPI_3310, &spicfg ); // Setup transfer parameters.
    spiSelect( &SPI_3310 );         // Slave Select assertion.
    spiStartSend( &SPI_3310, 1, &byte );
    //spiExchange( &SPI_3310, 512,
    //             txbuf, rxbuf );  // Atomic transfer operations.
    spiUnselect( &SPI_3310 );       // Slave Select de-assertion.
    spiReleaseBus( &SPI_3310 );     // Ownership release.
}
Beispiel #3
0
static void adis_burst_read(SPIDriver *spip) {
	if(adis_driver.state == ADIS_IDLE) {
		adis_driver.spi_instance        = spip;
		adis_driver.adis_txbuf[0]       = adis_create_read_addr(ADIS_GLOB_CMD);
		adis_driver.adis_txbuf[1]       = (adis_reg_data) 0x0;
		adis_driver.reg                 = ADIS_GLOB_CMD;
		adis_driver.rx_numbytes         = (ADIS_NUM_BURSTREAD_REGS *2);
		adis_driver.tx_numbytes         = 2;
		adis_driver.debug_cb_count      = 0;

		spiAcquireBus(spip);                /* Acquire ownership of the bus.    */
		spiSelect(spip);                    /* Slave Select assertion.          */
		spiStartSend(spip, adis_driver.tx_numbytes, adis_driver.adis_txbuf);
		adis_driver.state             = ADIS_TX_PEND;
	}
}