跳转至内容

Alcor6L/eLua/spi

来自Wikibooks,开放世界中的开放书籍

此模块包含用于访问eLua CPU的SPI接口的函数。

eLua中仅实现了主SPI模式。

spi.setup

[编辑 | 编辑源代码]

设置SPI接口

clock = spi.setup( id, type, clock, cpol, cpha, databits )
  • id - SPI接口的ID。
  • type - SPI接口类型,可以是spi.MASTER或spi.SLAVE。注意:目前仅支持主SPI模式。
  • clock - SPI接口的时钟。
  • cpol - 时钟极性(0或1)。
  • cpha - 时钟相位(0或1)。
  • databits - SPI数据字的长度。

返回值

  • clock - SPI接口上设置的实际时钟。根据硬件的不同,这可能与clock参数的值不同。

选择SPI接口的SS线(从属选择)。这仅适用于具有专用SS引脚的SPI接口。

spi.sson( id )
  • id - SPI接口的ID。

返回值:无。

spi.ssoff

[编辑 | 编辑源代码]

取消选择SPI接口的SS线(从属选择)。这仅适用于具有专用SS引脚的SPI接口。

spi.ssoff( id )

参数

  • id - SPI接口的ID。

返回值:无。

spi.write

[编辑 | 编辑源代码]

向SPI接口写入一个或多个字符串/数字。

spi.write( id, data1, [data2], ..., [datan] )
  • id - SPI接口的ID。
  • data1 - 要发送的第一个字符串/数字。
  • data2(可选) - 要发送的第二个字符串/数字。
  • datan(可选) - 要发送的第n个字符串/数字。

返回值:无。

spi.readwrite

[编辑 | 编辑源代码]

向SPI接口写入一个或多个字符串/数字,并返回从同一接口读取的数据。

data = spi.readwrite( id, data1, [data2], ..., [datan] )
  • id - SPI接口的ID。
  • data1 - 要发送的第一个字符串/数字。
  • data2(可选) - 要发送的第二个字符串/数字。
  • datan(可选) - 要发送的第n个字符串/数字。

返回值

  • data - 包含从SPI接口读取的所有数据的数组。
华夏公益教科书