打印
[ZLG-ARM]

SPI初始化问题

[复制链接]
1197|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
quhaoccnu|  楼主 | 2008-4-15 21:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


 在《深入浅出ARM7LPC213x》上册的SPI主机实验中初始化接口代码如下:
void  MSPI_Init(void)
{      
    SPCCR = 0x52;                    // 设置SPI时钟分频
     SPCR  = (0 << 3) |     // CPHA = 0, 数据在SCK 的第一个时钟沿采样
             (1 << 4) |     // CPOL = 1, SCK 为低有效
             (1 << 5) | // MSTR = 1, SPI 处于主模式
             (0 << 6) |     // LSBF = 0, SPI 数据传输MSB (位7)在先
             (0 << 7);        // SPIE = 0, SPI 中断被禁止
}

请问SPI时钟分频设置为0x52的依据是什么?
而在《深入浅出ARM7LPC213x》下册的SPI初始化如下:
uint8 SPIInit(uint8 Fdiv)
{
    

    SPI_SPCCR = Fdiv & 0xfe;                    /* 分频值 */
    SPI_SPCR = 0xa0 | SPI_MOD;                  /* 主机、允许中断 */
}
这里的分频值设为0x80 & 0xfe,不同于上册的0x52,且SPCR的设置也不同于上册,ZLG大侠能否解释下?
 
 

相关帖子

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

本版积分规则

1

主题

2

帖子

0

粉丝