Stap 17: Met behulp van SPI
Er komt een SPI-standaardbibliotheek met de Arduino Software.
Voor het gebruik van deze bibliotheek in een Arduino Sketch, voeg gewoon de volgende regel in het begin van de broncode:
#include SPI.h
Zoals we hebben gezien in de Arduino Blink-voorbeeldcode (Blink.ino), een Arduino Sketch moet functie:
De setup-functie zal worden eenmaal, uitgevoerd telkens als uw programma op de Arduino opnieuw wordt gestart opnieuw, wat gebeurt er na het aansluiten aan de macht, en na het uploaden van een nieuwe schets en reset.
Vervolgens loopt de loop-functie herhaaldelijk tot het verbreken van de macht, uploaden of reset.
Als u wilt initialiseren gebruiken zet de SPI-bibliotheek, de glooiende lijn in uw setup-functie, die dan als volgt kan uitzien:
VOID Setup
{
SPI.begin();
}
Om gegevens te verzenden naar de LEDs via SPI, moet u uw gegevens hebt opgehaald in een matrix van Bytes.
En vervolgens kunt u een functie die ik heb met succes gebruikt op het Intel Galileo en de Intel Edison, maar het is niet gedocumenteerd op de officiƫle website van de Arduino.
SPI.transferBuffer (grootte van de bytes, NULL,);
Waar "grootte" is het aantal Bytes te dragen. Dit zou voor 50 LEDs met 3 Bytes voor 24-bits RGB-kleur per LED 150 Bytes.
U vindt de mijn oorspronkelijke code, die mij tweedehands voor toepassing van de SPI interface van de Edison voor de eerste keer, in mijn bewaarplaats GitHub. Ik maakte deze code oorspronkelijk voor de Arduino Nano, Arduino Uno en Arduino Pro Micro. Toen ik het gewijzigd heb te lopen met de snellere Intel Galileo. En dezelfde code draait nu zonder wijziging op de Intel Edison.