⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 spi.c

📁 MCP2515.rar
💻 C
字号:
/*
sbit a0=ACC^0;			//定义ACC的位,利用ACC操作速度最快
sbit a1=ACC^1;
sbit a2=ACC^2;
sbit a3=ACC^3;
sbit a4=ACC^4;
sbit a5=ACC^5;
sbit a6=ACC^6;
sbit a7=ACC^7;

void SpiSend(unsigned char Buf)
{
	ACC=Buf;
	SPI_SCK=0;SPI_DO=a7;SPI_SCK=1;
	SPI_SCK=0;SPI_DO=a6;SPI_SCK=1;
	SPI_SCK=0;SPI_DO=a5;SPI_SCK=1;
	SPI_SCK=0;SPI_DO=a4;SPI_SCK=1;
	SPI_SCK=0;SPI_DO=a3;SPI_SCK=1;
	SPI_SCK=0;SPI_DO=a2;SPI_SCK=1;
	SPI_SCK=0;SPI_DO=a1;SPI_SCK=1;
	SPI_SCK=0;SPI_DO=a0;SPI_SCK=1;
	SPI_DO=1;
}

unsigned char SpiReceive(void)
{
	SPI_SCK=0;SPI_SCK=1;a7=SPI_DO;
	SPI_SCK=0;SPI_SCK=1;a6=SPI_DO;
	SPI_SCK=0;SPI_SCK=1;a5=SPI_DO;
	SPI_SCK=0;SPI_SCK=1;a4=SPI_DO;
	SPI_SCK=0;SPI_SCK=1;a3=SPI_DO;
	SPI_SCK=0;SPI_SCK=1;a2=SPI_DO;
	SPI_SCK=0;SPI_SCK=1;a1=SPI_DO;
	SPI_SCK=0;SPI_SCK=1;a0=SPI_DO;
	return(ACC);
}
*/

void SpiSend(unsigned char Buf)
{ 
	unsigned char i;
	i=8;
	do
	{
		SPI_SCK=0;													
		SPI_DO=0;
		if(Buf&0x80) SPI_DO=1;							//先送出高位
		Buf<<=1;														//左移一位
		SPI_SCK=1;
	}
	while(--i);
	SPI_DO=1;
}
unsigned char SpiReceive(void)
{
	unsigned char i,Buf;
	for(i=0;i<8;i++)
	{
		SPI_SCK=0;
		Buf<<=1;														//左移一位
		SPI_SCK=1;
		Buf&=0xfe;													//第一位清0												
		if(SPI_DI) Buf|=0x01;								//置1
	}
	return(Buf);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -