?? master.c
字號:
#include <lpc210x.h>
#define CS 1<<8
#define LED 1<<9
#define uchar unsigned char
uchar wdat[10]={0,1,2,3,4,5,6,7,8,9};
uchar rdat[10];
uchar SpiSendData(uchar data);
/*******************************************************************************
*名稱: MSpiIni()
*功能: 初始化SPI接口,設置為主機
*******************************************************************************/
void SpiIni(void)
{ S0SPCCR=0x52; //設置SPI時鐘分頻 位0必須為0,S0SPCCR必須大于8
S0SPCR =0x20; //設置SPI接口模式,MSTR=1,CPOL=1,CPHA=0,LSBF=0
}
/*******************************************************************************
*名稱: MSendData()
*功能: 向SPI總線發送數據
*******************************************************************************/
uchar SpiSendData(uchar data)
{
IOCLR =CS;
S0SPDR=data;
while((S0SPSR&0x80)==0); //等待SPIF置位,即等待數據發送完畢
IOSET =CS;
return S0SPDR;
}
void delay(unsigned int n)
{while(n--);
}
int main(void)
{ uchar i;
PINSEL0=0x00005500; //設置SPI引腳連接
PINSEL1=0x00000000;
IODIR =(CS|LED);
IOSET =CS;
SpiIni();
delay(10000);
for(i=0;i<10;i++)
rdat[i]=SpiSendData(wdat[i]);
IOSET = LED;
while(1);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -