📄 spi.c
字号:
/*------------------------------------------------------
FILE NAME : spi.c
DESCRIPTION : lpc2132 spi driver
VERSION : 0.0.0 (C)aureole
AUTHOR : Aureole
CREATE DATE : 4.1.2006
MODIFY DATE : ---
LOGS :-\
1. First create for hardware test. 4.1.2006
--------------------------------------------------------*/
//-------------Include Files----------------------------//
#include "..\include\spi.h"
#include "..\include\config.h"
#include "..\include\common.h"
//-------------Function area--------------------------//
/*---------------------------------------------------------------
NAME : initialize_master_spi
ENTRY TYPE: void
RETURN TYPE: void
PURPOSE : ---
VERSION : 0.1
DESCRIPTION:
CREATE DATE: 4.1.2006
LOGS : 1.first create;
-----------------------------------------------------------------*/
void initialize_master_spi(void)
{
PINSEL0|=0x00005500; //Set PIN Connect SPI Function;
S0SPCCR=0X8; //Set SPI Clock;SPCCR bit0 MUST BE SET 0,AND SPCCR MUST >=8;
S0SPCR=(0<<3)| // CPHA = 0, 数据在SCK 的第一个时钟沿采样
(0<<4)| // CPOL = 1, SCK 为低有效,CPOL = 0, SCK 为高有效
(1<<5)| // MSTR = 1, SPI 处于主模式
(0<<6)| // LSBF = 0, SPI 数据传输MSB (位7)在先
(0<<7); // SPIE = 0, SPI 中断被禁止
}
/*---------------------------------------------------------------
NAME : send_data_to_spi
ENTRY TYPE: unsigned char
RETURN TYPE: unsigned char
PURPOSE : ---
VERSION : 0.1
DESCRIPTION:
CREATE DATE: 4.1.2006
LOGS : 1.first create;
-----------------------------------------------------------------*/
unsigned char send_data_to_spi(unsigned char dat)
{
S0SPDR=dat;
while(!(S0SPSR&0x80)); // 等待SPIF置位,即等待数据发送完;
return(S0SPDR);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -