ソフトウェアシミュレーションSPI基礎関数--およびいくつかのフレームワーク思想
1012 ワード
/*
:
===》 ===》 ===》
: ,
:void FM25_IOInit(void);
void FM25_CS(u8 IO);
void FM25_CLK(u8 IO);
void FM25_MOSI(u8 IO);
u8 FM25_MISO(void);
:
:
//
SPI_Type FM25_SPI = {
.CS = FM25_CS,
.CLK = FM25_CLK,
.MOSI = FM25_MOSI,
.MISO = FM25_MISO};
u8 Soft_SPI_RW(SPI_Type *BaseSPI, u8 dat) , FM25_SPI
eg:
u8 SPI_Send_Byte( u8 WRDat )
{
return Soft_SPI_RW( FM25_SPI, WRDat ); //
}
:
:
*/
typedef struct _SPI
{
//SPI
void (*CS)(u8) ; //
void (*CLK)(u8) ; //
void (*MOSI)(u8) ; //
u8(*MISO)(void) ; //
} SPI_Type;
/**
* @Name soft_SPI_Write
* @brief SPI
* @param BaseSPI: [ ]
** dat: [ ]
* @retval
* @author https://blog.csdn.net/Wekic
* @Data 2020-03-29
**/
u8 Soft_SPI_RW(SPI_Type BaseSPI, u