📄 spi.c
字号:
//-----------------------------------------------------------------------------
// spi.c
//-----------------------------------------------------------------------------
//
//-----------------------------------------------------------------------------
// Includes
//-----------------------------------------------------------------------------
#include <reg52.h>
#include <intrins.h>
#include "cpu/cpu.h"
#include "misc/general.h"
//-----------------------------------------------------------------------------
// Function Prototypes
//-----------------------------------------------------------------------------
void spi_Write_Byte ( char dat );
char spi_Read_Byte ( void );
//------------------------------------------------------------------------------------
// spi Write Byte Routine
//------------------------------------------------------------------------------------
void spi_Write_Byte ( char dat )
{
char nBit = 8;
do {
spi_CLK = LOW;
if ( MSB & dat )
spi_SI = HIGH;
else
spi_SI = LOW;
spi_CLK = HIGH;
dat <<= 1;
} while ( --nBit );
spi_SI = LOW;
}
//------------------------------------------------------------------------------------
// spi Read Byte Routine
//------------------------------------------------------------------------------------
char spi_Read_Byte ( void )
{
char nBit = 8;
char dat = 0;
do {
spi_CLK = HIGH;
spi_CLK = LOW;
dat <<= 1;
if ( spi_SO ) dat |= LSB;
} while ( --nBit );
return dat;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -