SPI接口驱动:读操作完全分析

  SPI协议中的SCK是用来同步数据传输的时钟信号,由Master驱动,Slave接收。当使用SPI接口时,时钟可编程为高有效或低有效,否则,时钟总是低有效。SCK的状态只能在数据传输过程中变,在其他时间里,SPI接口使其保持无效状态或不驱动它(使其处于高阻态)
  SPI设备间的数据传输之所以又被称为数据交换,是因为SPI协议规定一个SPI设备在通信过程中不能仅仅充当一个“发送者”或“接收者”,在每个SCK周期内,SPI设备都会发送并接收一个bit大小的数据,相当于该设备有一个bit大小的数据被交换了。如下例中的驱动:
这里写图片描述
  该例中LPC1788MCU是Master,GT21L16S2W字库芯片是Slave,GT21L16S2W的快速读取时序如下:

这里写图片描述
代码分析:
30-33行:在选通GT21L16S2W芯片之前先将LPC1788中的SSP控制器的Rx FIFO清空,将这段代码注 释掉也运行正常,但最好清空一下Rx FIFO防止意外

34行: 将LPC1788的P2[22]引脚置为低电平来选通GT21L16S2W芯片。GT21L16S2W芯片的片选是由 P2[22]引脚配置为GPIO输出高电平或低电平来控制的,所以LPC1788与GT21L16S2W进行通讯 时必须置低P2[22]引脚。

35-42行:LPC1788向GT21L16S2W发送一个字节的快速读命令,然后发送三个字节的地址

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值