view spi.c @ 13:96c345d304af default tip

Add 1wire code. 1wire.c, 1wire.h and 1wire-config.h are copied avr-lib.
author Daniel O'Connor <darius@dons.net.au>
date Wed, 08 Feb 2012 10:37:22 +1030
parents 58d76cf522ff
children
line wrap: on
line source

#include <stdint.h>
#include "spi.h"
#include "stm32f10x.h"

uint8_t
SPI_WriteByte(uint8_t out) {
    uint8_t in = 0; 

    /* Wait until the transmit buffer is empty */
    while (SPI_I2S_GetFlagStatus(SPI1,SPI_I2S_FLAG_TXE) == RESET)
	;
    
    /* Send the byte  */
    SPI_I2S_SendData(SPI1, out); 

    /* Wait until a data is received */
    while (SPI_I2S_GetFlagStatus(SPI1,SPI_I2S_FLAG_RXNE) == RESET)
	;
    
    /* Get the received data */
    in = SPI_I2S_ReceiveData(SPI1); 

    /* Return the shifted data */
    return (in);
}