Met behulp van een Arduino te beheersen of te testen een SPI elektronisch apparaat (4 / 7 stap)

Stap 4:


Nu is het tijd voor de software.  U moet de Arduino IDE (Integrated Development Environment) downloaden van www.arduino.cc.  Deze ontwikkeling tool kunt u code schrijven die kan worden geüpload naar de Arduino board en vervolgens uitgevoerd.

Voeg de volgende code in de Arduino IDE.  Opmerking de opmerkingen in de code die u vertellen wat elk onderdeel van de code doet.

/*
******************************************************
* SPI test (het besturen van een digitale Potentiometer in dit geval)
*
* Deze module maakt gebruik van de bibliotheek van de Arduino SPI (komt gebundeld met
* de Arduino IDE) om de communicatie tussen een
* Arduino programma en een SPI ingeschakeld perifere chip.
*
* De routine leest in 8-bits waarden, wordt de waarde opgeslagen
* in de variabele "pot", en vervolgens stuurt "pot" uit via de SPI.
*                                                            *
* De SPI-bibliotheek gebruikt pin 13 van de Arduino Uno voor klok.
* Seriële data wordt verzonden op pin 11.
*
* Deze routine gebruikt pin 10 als de chip selecteren voor de
* SPI apparaat te programmeren.
*
* Pennen 2-9 worden gebruikt om te lezen in de waarden van de 8 bits voor de byte
* om te worden verzonden via SPI
******************************************************
*/
#include < SPI.h > / / Links vooraf SPI bibliotheek geschreven in de code
VOID Setup
{
pinMode (2, ingang);                     2-9 pinnen als ingangen instellen
pinMode (3, INPUT);
pinMode (4, INPUT);
pinMode (5, INPUT);
pinMode (6, INPUT);
pinMode (7, INPUT);
pinMode (8, INPUT);
pinMode (9, INPUT);
pinMode (10, OUTPUT);                Instellen van de SPI pinnen te worden uitgangen
pinMode (11, OUTPUT);
pinMode (13, OUTPUT);
digitalWrite (2, HIGH);                   Arduino pull-up weerstanden actieve instellen
digitalWrite (3, hoge);                   Hiermee stelt u een interne naar de chip
digitalWrite (4, HIGH);                   pull-up weerstand op zodat een onsamenhangende pin
digitalWrite (5, hoge);                   betrouwbaar is op logica 1
digitalWrite (6, hoge);
digitalWrite (7, hoge);
digitalWrite (8, hoge);
digitalWrite (9, hoge);
digitalWrite (10, hoge);
digitalWrite (11, hoge);
digitalWrite (13, hoge);
SPI.begin();                                                           Initialiseren van de SPI parameters
SPI.setBitOrder(MSBFIRST);                             MSB eerst worden verzonden
SPI.setDataMode(SPI_MODE3);                      Instellen voor klok stijgende rand
SPI.setClockDivider(SPI_CLOCK_DIV64);    Klok instellen divider (optioneel)
Zie Arduino site of Wikipedia voor meer informatie over deze instellingen
}
void loop
{
int val = 0;                                       "val" is een test-variabele die is gebruikt bij het lezen van de pinnen
int j = 0;                                           "j" is een variabele die is gebruikt in gegevens leesbewerking
byte pot = B00000000;                Alle bits in de bytes "pot" nul
voor (int i = 0; ik < 8; i ++) / / Loop om te lezen van elk van de 8 input pinnen
{
j = i + 2;                                       2 om te tellen zodat deze overeenkomen met input pinnen lus toevoegen
Val = digitalRead(j);                   Lees juiste pin
if(Val == High)
{
bitSet(pot, i);                             Set passende bit op 1 gebaseerd op lus graaf ik
} / / Anders laten 0
}
}
digitalWrite(10,LOW);                Drop SPI chip-Selecteer op 0 (Arduino pin 10)
SPI.transfer(pot);                        Zet SPI van variabele pot
digitalWrite(10,HIGH);               Chip-Selecteer op 1 verhogen
delay(10000);                             Vertraging lus 10 seconden (Kies uw tijd-frame)
} / / Gegevens zal worden gelezen en opgestuurd na elke 10 seconden op basis van deze

Gerelateerde Artikelen

Een robotarm met behulp van de Arduino te beheersen, 1Sheeld en een Android Smart Phone

Een robotarm met behulp van de Arduino te beheersen, 1Sheeld en een Android Smart Phone

In dit artikel we u hoe tonen te gebruiken smart 1Sheeld en uw Android telefoon sensoren (oriëntatie & nabijheid sensoren) naar besturingselement een Robotsystemen arm draadloos.Kort over 1Sheeld:http://1sheeld.com/Stap 1: Onze Tools 1 - robotarm (fo
Stroboscoop (zoetrope) met behulp van de Arduino en een gebroken Xbox 360 DVD-station

Stroboscoop (zoetrope) met behulp van de Arduino en een gebroken Xbox 360 DVD-station

Stroboscoop (AKA zoetrope) is een apparaat waarmee een illusie van een bewegende beeld door weergegeven: een snelle erfopvolging frames "" voor een fractie van een seconde als gevolg van de persistence of vision (POV) effect gestopt. Het is een
Draadloos bedienen een Robot met behulp van de Arduino en RF Modules!

Draadloos bedienen een Robot met behulp van de Arduino en RF Modules!

/*Bewerken van 05/05/2016Hey jongens, ik druk bezig geweest met college en kon niet antwoorden naar commments. De meeste van jullie wilde de code en schema's gedaan een beetje beter dus ik heb het schema op Eagle 7.2.0 gemaakt en geüpload alles op Gi
Met behulp van een 4-cijferige, 7 segment display, met arduino

Met behulp van een 4-cijferige, 7 segment display, met arduino

In deze tutorial zal ik je laten zien hoe met een 7 segment display met 4 digits met behulp van arduino. Aantal fundamentele dingen die ik zou willen wijzen, is dat dit neemt bijna alle van de digitale pennen op de arduino uno, leonardo, de planken m
Seriële Servo Controller w/Arduino - controle tot 12 Servos tegelijk met behulp van de Arduino en een USB-verbinding

Seriële Servo Controller w/Arduino - controle tot 12 Servos tegelijk met behulp van de Arduino en een USB-verbinding

ik ga u laten zien hoe je Arduino gebruik maximaal 12 servo's tegelijk met minimale jitter control.  Met behulp van een eenvoudige seriële interface kunt u de positie van maximaal 12 servo kanalen.  Maximaal 10 momentopname posities kan worden opgesl
ESP8266 ESP-12E NodeMCU met behulp van de Arduino IDE - een Tutorial programmering

ESP8266 ESP-12E NodeMCU met behulp van de Arduino IDE - een Tutorial programmering

NodeMCU Dev Board is gebaseerd op grote schaal onderzocht esp8266 systeem op Spaander van Expressif. Het gecombineerde functies van WIFI accesspoint en station + microcontroller en gebruikt eenvoudige LUA gebaseerde programmeertaal. ESP8266 NodeMCU a
Met behulp van een temperatuursensor de snelheid van een motor met behulp van arduino

Met behulp van een temperatuursensor de snelheid van een motor met behulp van arduino

Deze toepassing is eenvoudig slechts met behulp van de temperatuursensor LM35 met een arduino-kit om te controleren van een fan en wijzigen van de snelheid met betrekking tot de temperatuur gelezen door de micro-controller die in dit geval de arduino
Met behulp van een Dot Matrix LED met een Arduino en Shift Register

Met behulp van een Dot Matrix LED met een Arduino en Shift Register

de Siemens DLO7135 Dot matrix LED is een verbazingwekkend stukje opto-elektronica. Het is gefactureerd als een 5 x 7 Dot Matrix intelligente Display (r) met geheugen/Decoder/Driver. Samen met dat het geheugen, het heeft een 96-ASCII karakterdisplay s
Androino! Controle van een Arduino vanaf uw Android-apparaat met behulp van een goedkope bluetooth-module.

Androino! Controle van een Arduino vanaf uw Android-apparaat met behulp van een goedkope bluetooth-module.

Dit instructable toont je hoe om te lezen van sensor-waardes van een Arduino met uw Androïde apparaat met behulp van een seriële goedkoop bluetooth-apparaat dat u voor onder $10 op dealextreme of ebay bestellen kunt.In het volgende voorbeeld gebruikt
Met behulp van een ACS712 en Arduino actuator grenzen

Met behulp van een ACS712 en Arduino actuator grenzen

Ik ben bezig met een project dat maakt gebruik van een kracht van 400 pond, 30-inch gooien actuator die heeft ingebouwde, niet-verplaatsbare eindschakelaars maar niet feedback geven positionering. Allermeest naar de (betaalbare) grote actuators vond
RFIDuino - met behulp van een Arduino & RFID-lezer te maken van een puzzel GeoCache

RFIDuino - met behulp van een Arduino & RFID-lezer te maken van een puzzel GeoCache

ik geniet van zowel Geocaching en elektronica en heb een paar van elektronische puzzel caches met behulp van een Arduino.Mijn nieuwste creatie (met de hulp van een collega cacher voor de code) is met behulp van een Arduino en RFID lezer te maken van
Hoe maak je een enkele LED knipperen met behulp van een Arduino Uno Board

Hoe maak je een enkele LED knipperen met behulp van een Arduino Uno Board

Vandaag, we zullen worden ter illustratie van hoe maak je een enkele LED knipperen met behulp van een Arduino Uno-board. Door elke stap te volgen, zal je dit doel bereiken.U zal het volgende nodig:Een Arduino BoardBrood bordUSB-connectorkabelEEN LED3
Puzzlebox baan: Een infrarood helikopter besturen met behulp van een Arduino

Puzzlebox baan: Een infrarood helikopter besturen met behulp van een Arduino

In dit Instructable zullen we uitleggen hoe de infrarood signalen worden gebruikt door een afstandsbediening om een speeltje of apparaat, dan laten zien hoe een eenvoudige schakeling kan worden toegevoegd aan een Arduino aan dezelfde bedienen via gra
Maak een Web aangesloten Robot (voor ongeveer $500) (met behulp van een Arduino en Netbook)

Maak een Web aangesloten Robot (voor ongeveer $500) (met behulp van een Arduino en Netbook)

dit Instructable zal u tonen hoe te bouwen van uw eigen Web aangesloten Robot (met behulp van een Arduino micro-controller en de Asus eee pc).Waarom zou u een Web aangesloten Robot willen? Om mee te spelen natuurlijk. Rijd uw robot van hele kamer of