Ejemplo n.º 1
0
unsigned char
pdlibSPI_ReceiveDataBlocking()
{
	unsigned long ulRxData;

	ROM_SSIDataGet(g_SSIModule[g_SSI][SSIBASE], &ulRxData);
	
	return ((unsigned char)(ulRxData & 0xFF));
}
Ejemplo n.º 2
0
uint8_t SPIClass::transfer(uint8_t data) {

    unsigned long rxData;

    ROM_SSIDataPut(SSIBASE, data);

    while(ROM_SSIBusy(SSIBASE));

    ROM_SSIDataGet(SSIBASE, &rxData);

    return (uint8_t) rxData;

}
Ejemplo n.º 3
0
uint8_t SPIClass::transfer(uint8_t ssPin, uint8_t data, uint8_t transferMode) {

	unsigned long rxData;

	digitalWrite(ssPin, LOW);

	ROM_SSIDataPut(SSIBASE, data);

	while(ROM_SSIBusy(SSIBASE));

	if(transferMode == SPI_LAST)
		digitalWrite(ssPin, HIGH);
	else
		digitalWrite(ssPin, LOW);

	ROM_SSIDataGet(SSIBASE, &rxData);

	return (uint8_t) rxData;

}
Ejemplo n.º 4
0
unsigned char
pdlibSPI_TransferByte(unsigned char ucData)
{
	unsigned long ulRxData;
	/* Validate parameters */
	if(g_SSI < 5)
	{
#ifdef PART_LM4F120H5QR

			ROM_SSIDataPut(g_SSIModule[g_SSI][SSIBASE], ucData);

			/* Wait until current transmission is over */
			while(ROM_SSIBusy(g_SSIModule[g_SSI][SSIBASE]));

			ROM_SSIDataGet(g_SSIModule[g_SSI][SSIBASE], &ulRxData);

			/* Wait until current transmission is over */
			while(ROM_SSIBusy(g_SSIModule[g_SSI][SSIBASE]));
#endif
	}

	return ((unsigned char)(ulRxData & 0xFF));
}
Ejemplo n.º 5
0
unsigned long SPIRead(unsigned short SPINum) {
	unsigned long data;
	ROM_SSIDataGet(SSIBase[SPINum], &data);
	return data;
}