stm8s spi

实现代码如下

void init_spi(void)
{


    SPI_DeInit();

    GPIO_Init(GPIOC, GPIO_PIN_7, GPIO_MODE_IN_PU_NO_IT);

    GPIO_Init(GPIOC, GPIO_PIN_6, GPIO_MODE_OUT_PP_LOW_FAST);

    GPIO_Init(GPIOC,GPIO_PIN_5, GPIO_MODE_OUT_PP_LOW_FAST);

    SPI_Init(SPI_FIRSTBIT_MSB,SPI_BAUDRATEPRESCALER_2,\
             SPI_MODE_MASTER, SPI_CLOCKPOLARITY_LOW,\
             SPI_CLOCKPHASE_1EDGE,\
             SPI_DATADIRECTION_2LINES_FULLDUPLEX,\
             SPI_NSS_SOFT,7);

    SPI_Cmd(ENABLE);


}




u8 spi_rw(u8 byte)
{

    while(SPI_GetFlagStatus(SPI_FLAG_TXE)==RESET);

    SPI_SendData(byte);

    while(SPI_GetFlagStatus(SPI_FLAG_RXNE)==RESET);

    byte=SPI_ReceiveData();


    return byte;

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容