Arduino tutorial Arduino Tutorial bundel.: Arduino experimenten Kit:. (ARDX) (7 / 13 stap)

Stap 7:.: 8 meer Leds:. (74HC595 Shift Register) - CIRC05



Wat We doen:
Tijd om te beginnen te spelen met chips. Of geintegreerde schakelingen (ICs) als ze willen om te worden aangeroepen. De externe verpakking van een chip kunnen zeer misleidende bijvoorbeeld de chip op de Arduino board (een micro-controller) en degene die we zullen gebruiken in dit circuit (een shift register) erg lijken, maar zijn in feite iets anders, bijvoorbeeld de prijs van de Atmega-chip op het bord van de arduino is een paar dollar, terwijl de 74hc595 een paar dozijn cent is. Het is een goede inleidende chip, en zodra je comfortabel spelen rond met het en het gegevensblad (beschikbaar online http://tinyurl.com/pr42xe ) de wereld van chips uw oester zullen. Het shift register (ook wel een seriële naar parallelle converter genoemd), krijgt u een extra 8 uitgangen (om LEDs en dergelijke) met behulp van slechts drie pinnen van de arduino. Ze kunnen ook worden gekoppeld samen om u een bijna onbeperkt aantal uitgangen met behulp van de dezelfde vier pinnen. Gebruik het je klok in de gegevens en vervolgens klink vergrendelen (klink het). Om dit te doen instellen u de pin van de gegevens ofwel hoog of laag, de klok, pulse vervolgens de gegevens pincode opnieuw instellen en de klok herhalen totdat u hebben verschoven uit 8 gegevensbits pulse. Vervolgens registreert u puls de klink en de 8 bits worden overgedragen aan de verschuiving pinnen. Het klinkt ingewikkeld maar het is echt eenvoudig zodra je de knie.
(voor een meer diepgaande blik op hoe een verschuiving werken registreren gaat u naar: http://tinyurl.com/56uvv7 )

(u kunt ook de fiche breadboard lay-out van de onderkant van deze stap)

De delen:

  • CIRC-05 Breadboard blad
  • 2 pin Header (x40
  • Shift Register (74HC595) (x 1)
  • 560 ohm weerstand (groen-blauw-bruin) (x8)
  • 5mm Red LED (x8)
  • Draad

Het Circuit en alles inpluggen In:
Een kleine Video van alles wordt aangesloten

The Code: - http://tinyurl.com/cv4fjt

 /* --------------------------------------------------------- * | Arduino Experimentation Kit Example Code | * | CIRC-05 .: 8 More LEDs :. (74HC595 Shift Register) | * --------------------------------------------------------- * * We have already controlled 8 LEDs however this does it in a slightly * different manner. Rather than using 8 pins we will use just three * and an additional chip. * * For more information on this circuit http://tinyurl.com/111111/ * *///Pin Definitions//The 74HC595 using a protocol called SPI (for more details http://www.arduino.cc/en/Tutorial/ShiftOut)//Which has three pinsint data = 2; int clock = 3;int latch = 4;//Used for single LED manipulationint ledState = 0;const int ON = HIGH;const int OFF = LOW; /* * setup() - this function runs once when you turn your Arduino on * We set the three control pins to outputs */void setup(){ pinMode(data, OUTPUT); pinMode(clock, OUTPUT); pinMode(latch, OUTPUT); }/* * loop() - this function will start after setup finishes and then repeat * we set which LEDs we want on then call a routine which sends the states to the 74HC595 */void loop() // run over and over again{ int delayTime = 100; //the number of milliseconds to delay between LED updates for(int i = 0; i < 256; i++){ updateLEDs(i); delay(delayTime); }}/* * updateLEDs() - sends the LED states set in ledStates to the 74HC595 * sequence */void updateLEDs(int value){ digitalWrite(latch, LOW); //Pulls the chips latch low shiftOut(data, clock, MSBFIRST, value); //Shifts out the 8 bits to the shift register digitalWrite(latch, HIGH); //Pulls the latch high displaying the data}/* * updateLEDsLong() - sends the LED states set in ledStates to the 74HC595 * sequence. Same as updateLEDs except the shifting out is done in software * so you can see what is happening. */ void updateLEDsLong(int value){ digitalWrite(latch, LOW); //Pulls the chips latch low for(int i = 0; i < 8; i++){ //Will repeat 8 times (once for each bit) int bit = value & B10000000; //We use a "bitmask" to select only the eighth //bit in our number (the one we are addressing this time through value = value << 1; //we move our number up one bit value so next time bit 7 will be //bit 8 and we will do our math on it if(bit == 128){digitalWrite(data, HIGH);} //if bit 8 is set then set our data pin high else{digitalWrite(data, LOW);} //if bit 8 is unset then set the data pin low digitalWrite(clock, HIGH); //the next three lines pulse the clock pin delay(1); digitalWrite(clock, LOW); } digitalWrite(latch, HIGH); //pulls the latch high shifting our data into being displayed}//These are used in the bitwise math that we use to change individual LEDs//For more details http://en.wikipedia.org/wiki/Bitwise_operationint bits[] = {B00000001, B00000010, B00000100, B00001000, B00010000, B00100000, B01000000, B10000000};int masks[] = {B11111110, B11111101, B11111011, B11110111, B11101111, B11011111, B10111111, B01111111};/* * changeLED(int led, int state) - changes an individual LED * LEDs are 0 to 7 and state is either 0 - OFF or 1 - ON */ void changeLED(int led, int state){ ledState = ledState & masks[led]; //clears ledState of the bit we are addressing if(state == ON){ledState = ledState | bits[led];} //if the bit is on we will add it to ledState updateLEDs(ledState); //send the new LED state to the shift register } 

En upload zal hierdoor de lichten om het licht van een na de andere en vervolgens uit op een vergelijkbare manier. Controleer de code en wikipedia om te zien hoe het werkt, of schiet ons een e-mail als je vragen hebt.

Meer animaties:
Nu krijgen de dingen meer interessant. Als je terug naar de code van CIRC02 kijkt (8 LED Fun) u zien we veranderen de LEDs met digitalWrite (led, staat), dit is hetzelfde formaat als de routine schreven we changeLED (led, staat). U kunt de animaties die je schreef voor CIRC02 door de code in deze schets te kopiëren en wijzigen van alle de digitalWrite () van aan (de changeLED). krachtige? Zeer. (u moet ook een paar andere dingen veranderen maar volg de compile-fouten en het werkt zelf)

Gerelateerde Artikelen

Arduino experimenten (Superformaat Instructable)

Arduino experimenten (Superformaat Instructable)

Massa's, zo niet alle Arduino experimenten gedaan op mijn manier, die wordt iedereen carry van uit naar de volgende persoon verschillende experimenten hebben als zodanig dit instructable zal een heleboel video's, en foto's evenals gedetailleerde besc
Hoe de "harnas voor Arduino/Seeeduino kit" te monteren door zaad Studio

Hoe de "harnas voor Arduino/Seeeduino kit" te monteren door zaad Studio

deze instructables is op hoe de "harnas voor Arduino/Seeeduino kit" door zaad Studio te monteren.Het harnas is een frame ontworpen om te houden van een Arduino en een 9 V batterij pack.Wat die u nodig hebt:"Benutten voor Arduino/Seeeduino k
Drukknop knipperend licht

Drukknop knipperend licht

dit instructable wordt uitgelegd hoe u een LED licht knipperen in- en uitschakelen voor tien seconden door op te drukken.  Het licht kan ook worden uitgeschakeld door een afzonderlijke uit-knop in te drukken.In dit voorbeeld is vergelijkbaar met het
Onderzoekers gids voor Arduino als uitgevoerd op OIT

Onderzoekers gids voor Arduino als uitgevoerd op OIT

middelenAdafruit ARDX - v1.3 experimenten Kit voor ArduinoOnderzoekers gids voor Arduino (PDF)Brood bord lay-outs (PDF)Arduino tutorial Arduino Tutorial bundel (Instructable)Deze Arduino Tutorial is gonna be zeer vergelijkbaar met de Arduino Tutorial
Arduino Chiptune Song

Arduino Chiptune Song

deze tutorial is om je te leren over transistoren, flyback dioden en basisfuncties van de Arduino. Dit Instructable is gebaseerd off van een circuit uit de Arduino experimenten Kit.Dit is een goede tutorial voor iedereen beginnen met Arduino. Deze on
Klimplant Catcher

Klimplant Catcher

Ooit wonder als iemand buiten uw huis "peering" door het raam in de deuropening staat? Nou, voor mijn instructable, ik zal het creëren van een Creeper Catcher. Dit instructable laat u weten wanneer iemand op uw front stap staat. Niet meer kruipe
Kabouter Trap!

Kabouter Trap!

17 maart komt rond eenmaal per jaar en een kabouter overvulling is altijd op mijn familie te doen lijst. We zijn het ontwerpen van een project dat zal lokken in een stiekeme kleine groene gold digger en trap ze in hun onuitblusbaar lust voor goud. We
Aan de slag van Arduino Kit (Absolute Beginner)

Aan de slag van Arduino Kit (Absolute Beginner)

Hallo is kerels, de Arduino Starter Kit geleverd door ElecFreaks (focus op Open hardware 4 jaar) een groot materiaal om gebruikers in het leren van stapsgewijze gunstig. Voor deze kit, er is geen noodzaak voor het solderen, steek gebruik, de aanleg v
Fiets - aangedreven arduino waterzuiveringsinstallatie (met UVC licht)

Fiets - aangedreven arduino waterzuiveringsinstallatie (met UVC licht)

Dit instructable toont hoe de macht van een UV-C waterzuivering met een fiets en arduino controle. Een dynamo aan de achterzijde van de fiets laadt een batterij (die wij hebben in eerste instantie al betalen voor dit project), die loopt van de arduin
Arduino all-in-One Getting Started Guide

Arduino all-in-One Getting Started Guide

een alles-in-één tutorial aan de slag met de Arduino open-source elektronica prototyping platform. Deze handleiding is bedoeld voor de beginner, maar moet ook worden nuttig voor u als u al met elektronica prutsen maar wilt aan de slag met de Arduino.
Paperduino 2.0 met Circuit Scribe - papier Arduino

Paperduino 2.0 met Circuit Scribe - papier Arduino

wat als het maken van een Arduino of bedrading van een Arduino net zo eenvoudig was als het afdrukken van een uit? In deze tutorial afgedrukt we onze eigen Pro Mini Arduino board met behulp van een penplotter en het Electroninks Circuit Scribe (een r
Arduino bot Android afstandsbediening

Arduino bot Android afstandsbediening

Hallo daar,In dit instructable wil de verbinding tussen de Arduino en Android verkennen. Beide zijn open, gemakkelijk-aan-programma omgeving (Nou ja, Android niet zo eenvoudig, maar heel), en de interactie tussen hen interessante human-to-device inte
Arduino SDcard eenvoudige Wav speler 2

Arduino SDcard eenvoudige Wav speler 2

Eerder introduceerden we "Arduino eenvoudige Wav speler", die eigenlijk niet de naam "wav player" verdient omdat het niet flexibel is helemaal voor de beperking van Arduino flash. Deze tutorial en set van kits, vormt een aanvulling op
BlueDuino de Android gecontroleerd Arduino Robot

BlueDuino de Android gecontroleerd Arduino Robot

Om te beginnen dit is mijn eerste instructable, en mijn eerste tutorial algemene. Met dit gezegd wijzen in de commentaren wat u in dit bericht niet begreep.Een paar weken geleden kreeg ik nieuwsgierig over hoe Bluetooth controleren op arduino werkt,