Arduino Nano:支持SPI吗?

时间:2013-04-17 09:01:01

标签: arduino spi

可以使用Arduino Nano上的SPI硬件吗?

Nano page上说:

  

SPI:10(SS),11(MOSI),12(MISO),13(SCK)。这些引脚支持SPI   通信,虽然由底层硬件提供,但是   目前尚未包含在Arduino语言中。

然而有SPI library

有人可以解释这个矛盾吗?我想,要么

  • 纳米页面已过期
  • 不支持Nano SPI硬件的SPI库,但其他主板支持
  • 仅在软件中为Nano实现了SPI库

这是什么?

由于

3 个答案:

答案 0 :(得分:3)

正确的答案是“上述的某种组合”:

  • Arduino Nano基于ATmega168 / 328芯片,支持硬件SPI。
  • SPI库仅支持硬件SPI(无论Arduino型号如何)。请注意,您可以毫无问题地咬合(相对)慢速SPI,这将是一个相对简单的软件实现。
  • SPI库的状态应该与Wire library的状态相同:不是核心Arduino服务的一部分(与PWM,ADC和数字GPIO不同),但仍然得到广泛支持。

因此,您的多项选择题中最接近的答案可能是“过时”。 SPI的状态应与I2C的状态相同。

答案 1 :(得分:2)

这应该是评论,但我没有代表。

正如angelatlarge所说,SPI库支持Nano,也适用于任何其他Arduinos。不同的是:

Nano(与所有Arduinos一样)的LED连接到数字引脚13.因为,对于Nano,引脚13也是SPI的SCLK,您可能会遇到高波特率的问题。如果这对您有用,请尝试取下LED。

来自Nano的页面: Source

  

...

     
      
  • SPI:10(SS),11(MOSI),12(MISO),13(SCK)。这些引脚支持SPI通信,虽然由底层硬件提供,但目前尚未包含在Arduino语言中。

  •   
  • LED:13。内置LED连接到数字引脚13.当引脚为高电平值时,LED亮,当引脚为低电平时,它熄灭。

  •   

答案 2 :(得分:1)

Nano的产品页面已过时,但它与其他基于ATmega168 / ATmega328p的Arduinos具有相同的硬件和软件 SPI支持。

Wayback机器中的一些考古学显示,功能相当的Duemilanove产品页面在2010年9月15日至26日期间从硬件但非软件提及改为提及SPI库支持。 Uno问世,其产品页面基于当时的Duemilanvoe状态,所以它一直声称支持。

应该对Nano页面进行相应的更新,但这似乎被忽略了。