打印
[ZLG-ARM]

请教关于LPC213x的SPI口的使用

[复制链接]
1459|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mcuatmel|  楼主 | 2007-4-25 08:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用SPI对一器件做读写操作,过程如下:
#define SPI0_CS = (1<<24)
    PINSEL0 = 0x00005500;        // 设置SPI管脚连接
    PINSEL1 = 0x00000000;

    IO1DIR = SPI0_CS;
    IO1SET = SPI0_CS;
    S0PCCR = 0x52;                // 设置SPI时钟分频, 初始化SPI接口
    S0PCR=0x38;//下降沿发送,上升沿接收

void SPI0_WR8(uint8 Addr,uint8 Dta)
{
    IO1CLR=SPI0_CS;
       S0PDR = Addr|0x80;
    while( 0==(S0PSR&0x80) );
       S0PDR = Dta;
    while( 0==(S0PSR&0x80) );
    IO1SET|=SPI0_CS;
}
uint8 SPI0_RD8(uint8 Addr)
{
    uint8 u8temp;
    
    IO1CLR=SPI0_CS;
       S0PDR = Addr;
    while( 0==(S0PSR&0x80) );
    DelayNS(1);
       S0PDR = 0xff;
    while( 0==(S0PSR&0x80) );
    u8temp=S0PDR;
    IO1SET|=SPI0_CS;
    return (u8temp);
}

我先向器件的可读写寄存器中写入数据后再读怎么读不出来?

相关帖子

沙发
zlgARM| | 2007-4-25 22:02 | 只看该作者

mcuatmel

不知道你的器件对CS的时序要求。

请您再看一下。

还要注意,器件返回数据是在什么时候。


使用特权

评论回复
板凳
mcuatmel|  楼主 | 2007-4-26 11:17 | 只看该作者

时序如下

CS:为低有效,这一点和其它常见器件一样
数据传输:MCU这一边在时钟的下降沿发送数据有效,上升沿返回数据有效。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

512

主题

1456

帖子

2

粉丝