2017-11-16

今天我们学习的是SPI,是把数据用串口传输方式进行交换。它有一个主控制器,一般我们采用微处理器,比如常用的单片机,以及一些其它的外围设置,比如数码管,液晶显示频,SD卡等外围设备。MOSI:是由主机向设备发出数据的。

MISO:是由设备向主机发送数据的。

SCK:是起到一个控制数据传输的校准,根据arduino官方的说法,好像还具备有对数据全能的控制作用。

SS线是用于一根使能线,特别是接多个外围设备的时候,可以通过控制SS线,对不同的外围设备进行通信。

写一个程序关于SPI必须注意的问题有:

1.字节的传输是从最高位(MSB)传输,还是从最低位(LSB)传输呢?这是由SPI.setBitOrder()函数进行设置的。

2.当数据不传输时,时钟线是高还是低?

3.触发方式是上升沿触发还是下降沿触发呢?这个由SPI.setDataMode()函数进行设置

4.SPI运行的速度是多快呢?这个由SPI.setClockDivider()函数进行设置。

5.SPI.begin()作用是初始化SPI总线。

6.SPI.end()作用是结束SPI传输,或者准确地说是禁止SPI总线工作。

7.SPI.transfer(val)作用是传输一个字节,这里要指出来的是val只能是字节。

你可能感兴趣的:(2017-11-16)