打印
[LPC]

NXP LPC1768宝马开发板第13章SPI (SD卡刷图)

[复制链接]
2262|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
第十三章  宝马1768—— SPI_(SD卡刷图)

开发环境:集成开发环境μVision4 IDE版本4.60.0.0
主机系统:Microsoft Windows XP
开发平台:旺宝NXP LPC1768开发板


13.1 SPI配置
13.2 硬件描述
13.3 程序说明
13.4 实验现象

1SPI的配置:
    LPC1768有一个串行外设SPI接口,可以工作在主机或者从机模式下。下面看一下LPC1768SPI寄存器描述,一共7个寄存器分别是:SPI控制寄存器S0SPCR,状态寄存器S0SPSR,数据寄存器S0SPDR,时钟计数器寄存器S0SPCCR,测试控制寄存器SPTCR,测试状态寄存器SPTSR,和中断寄存器S0SPINT.其中两个寄存器只有在测试中使用,正常使用时,不会用到这两个寄存器,测试控制寄存器SPTCR,测试状态寄存器SPTSR
第一个控制寄存器S0SPCR
BIT10保留
BIT2,传输数据位时能,为0:每次传输8bit,位1时有后面的11:8位决定,根据具体情况这个地方我们用8bit就行了及这位设置为0.
BIT3,时钟相位控制,为0:数据在SCK第一个时钟采集,为1:数据在SCK第二个时钟采集,这里我们用0在第一个时钟沿采集。
BIT4,时钟极性控制,为0:上升沿有效,位1:下降沿有效,这里要下降沿有效设置为1
BIT5,主从机模式控制,设置成主模式,既设置成1
BIT6,数据移动控制,设置成高位在前,既设置为0.
BIT7,中断时能,不时能设为0.
BIT118不用理会。
有上面分析,得出我们的设置S0SPCR = 0x30;
第二个状态寄存器S0SPSR,我们感兴趣就只有第七位,是否发送完成
BIT20保留
BIT3,从机中止。此位为1表示发生了从机中止,读取该寄存器时,改为自动清零。
BIT4,模式错误。该位为1时,表示发生了模式错误。
BIT5,读溢出,该位为1时,表示发生了读溢出。当读该寄存器时,该位清零。
BIT6,写冲突。该位为1时,表示发生了写冲突。如果要清零此位,先读取该寄存器,再写SPI 控制寄存器。
BIT7SPI传输完成标志。该位为1时,表示一次SPI数据传输完成。在主机模式下,该位在传输的最后一个周期置位。在从机模式下,该位在DXK的最后一个数据采样边沿置位。如果要清零该位,首先读取该寄存器,然后再访问SPI数据寄存器。
此寄存器,我们只关心BIT7,用于检测是否发送完成。
第三个数据存储器S0SPDR
存放要发送的数据。数据为BIT7:0低八位。
第四个时钟计数器寄存器S0SPCCR
此寄存器对主机时钟进行分频。
在主机模式下,该寄存器必须大于等于8的偶数倍。
在从机模式下,主机提供的SPI时钟速率不能大于SPI外设时钟的1/8
第五个寄存器、第六个寄存器用不到,此处不讲。
第七个中断寄存器S0SPINT
BIT0:中断标志位。
以上为SPI的介绍,SD卡刷图片需要SPI驱动SD卡,再加入FAT文件系统,就可以读写SD卡了。关于LCD屏的显示,请参考LCD的章节。
2、硬件描述:
3、程序说明:  
SPI数据收发
主函数
4、实验现象:
    此程序为读取SD卡中的图片,2Gsd卡格式成fat32,把MUSIC文件夹直接拷贝到卡中,然后将卡插到开发板的SD卡槽中(文件夹照片要求,.BMP格式就可以)。
    下载程序后,可以看到图片解码后显示在3.2lcd上。

相关帖子

沙发
非著名中医| | 2015-12-7 22:02 | 只看该作者

使用特权

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

本版积分规则

个人签名:专业生产销售STM32开发板,仿真器,http://openmcu.taobao.com/

71

主题

283

帖子

11

粉丝