LPC1114, ZLG的那个板, 用的是
P0.3 - CS
P0.6 - SCK
P0.8 - MISO
P0.9 - MOSI
用的是TKstudio
SSP那部分驱动过595, 没问题, 但不能驱动SD卡, SD驱动部分是ZLG的SD卡驱动, 在其基础上更改的
代码如下:
void SSP_Init (void)
{
int i;
PRESETCTRL &= (0x1<<0);
for(i=0; i<100; i++);
PRESETCTRL |= 0x01; /* 禁止SPI0复位 */
IOCON_SCKLOC = 0x02; /* P0.6配置为SCK */
SYSAHBCLKCTRL |= (1ul << 11); /* 打开SPI0外设 */
SSP0CLKDIV = 0x01; /* SSP时钟分频 */
SSP0CR0 = (0x07 << 8) | /* SCR 设置SPI时钟分频 */
(0x00 << 7) | /* CPHA 时钟输出相位, */
/* 仅SPI模式有效 */
(0x01 << 6) | /* CPOL 时钟输出极性, */
/* 仅SPI模式有效 */
(0x00 << 4) | /* FRF 帧格式 00=SPI,01=SSI, */
/* 10=Microwire,11=保留 */
(0x07 << 0); /* DSS 数据长度,0000-0010=保留*/
/* 0011=4位,0111=8位,1111=16位 */
SSP0CR1 = (0x00 << 3) | /* SOD 从机输出禁能,1=禁止 */
(0x00 << 2) | /* MS 主从选择,0=主机,1=从机 */
(0x01 << 1) | /* SSE SSP使能 */
(0x00 << 0); /* LBM 回写模式 */
SSP0CPSR = 2; /* PCLK分频值 */
SSP0ICR = 0x03; /* 中断清除寄存器 */
} |