Arduino LED Matrix Clock (5 / 5 stap)

Stap 5: De LED klok schets

/ * Deze schets loopt een klok met vijf LED matrices gebaseerd op MAX72xx-chipset.
Een voorbeeld dat toont schrijven en schuiven in de tekst over de 4 LED matrices wordt weergegeven op

Deze schets worden de LedControlMS.h (van IRL) uit de pagina boven, een modificarion van de LEDControl.h-bibliotheek gebruikt.
Deze sketch maakt gebruik van de Arduino tijd & draad Bibliotheken, en de DS3131RTC (DS3232RCTC Library)
Schets wordt ervan uitgegaan dat de volgende bedrading voor de MAX72xx LED-matrices--
pin 12 is aangesloten op de DataIn
PIN 11 is aangesloten op de CLK
pin 10 is aangesloten op LOAD
Dataout (middelste uitgang pins) is spelpoortadapters aan de DataIn van de volgende LED voor elke matrix behalve de laatste.
Bedrading voor de DS3231RTC
VCC en grond zijn aangesloten op + 5VDC en Gnd, respectievelijk
Klok SDA--> analoge 4
SCL -> analoge 5
*/

#include < DS3232RTC.h > / / DS3232RTC klok bibliotheek die ook DS3231RTC verwerkt
#include < Time.h > //Used voor klok
#include < Wire.h > //Used voor klok
#include "LedControlMS.h" / / Let op dit is geen bibliotheek LEDControl
int h1, h2, m1, m2; Elke LED-matrix verschijnt één nummer: uur 1 & 2, minuut 1 & 2. Deze variabelen houden de interne cijfers
int s1 = 2; LED die af de seconden telt
int hr12; Voor 12 uur keer gebruikt
int noMatrix = 5; Aantal matrices. De bibliotheek richt zich tot 8.
Boolean ben = true; Ter gelegenheid van am of pm. initialiseren als ben
LedControl lc=LedControl(12,11,10,noMatrix); Pin-toewijzingen en aantal matrices (5)

VOID Setup {}
Stel eerst de systeemtijd aan een hardcoded datum en tijd, en wordt vervolgens ingesteld het RTC van de systeemtijd.
De functie setTime() is onderdeel van de bibliotheek van de tijd.
HR Min Sec dd mm jjjj
setTime (18, 18, 30, 25, 11, 2014); Arduino klok handmatig instellen
RTC.set(now()); de RTC instellen van de systeemtijd

Initialiseren van de MAX72XXs (in de energiebesparende modus bij het opstarten--activeringsvraag.
for (int i = 0; ik < noMatrix; i ++) {//For elk van de matrices...
LC.shutdown(i,false);
lc.setIntensity(i,1); Helderheid ingesteld op een lage waarde
lc.clearDisplay(i); Schakel het weergeven
}
delay(100); Wachttijd tussen updates van het display
lc.clearAll();
}

void loop {}
Am of pm Boolean ingesteld (ben is geïnitialiseerd als waar)
Als (uur() > 12)
{ben = false;
hr12 = (uur)-12;
}

/ * Isoleren uren en minuten, één cijfer op elke LED-matrix.
Ik denk dat een uur één cijfer ziet er beter uit met een lege eerste cijfer.
*/
Elk cijfer van het uur plaats in zijn eigen variabele, h1 en h2
Als (hr12 < 10)
{
/*
1ste LED matrix leeg als < 10 uur. (62 is een leeg teken.)
Kon ook invoegen een nul, zoals met de minuten.
*/
H1 = 151;
H2 = hr12; 2e LED geeft één cijfer van uur
}
anders
{
Othewise, enkel gebruik de twee cijfers van het uur over h1 en h2.
H1 = hr12/10; Geheel getal delen door 10 geeft als resultaat het eerste cijfer van het uur.
H2 = hr12% 10; Modulo deling door 10 geeft als resultaat het 2e cijfer.
}

Minuten worden weergegeven door m1 en m2
Als (minute() < 10)
{
M1 = 0; Eerste minuut LED d1splays nul
m2=Minute(); 2e cijfer van minuten
}
anders
{
M1 = minuut () / 10;
m2=Minute() % 10;
}

/*
Weergegeven hoeveel uren en minuten met behulp van de functie displayChar. Deze maakt gebruik van twee integer argumenten:
de LED matrix nummer (0-7) en het teken moet worden weergegeven. Getallen worden gewoon weergegeven
door het passeren van het nummer zelf als de 2e argument: dat wil zeggen, lc.displayChar(0,h1)
*/
lc.displayChar(0,h1); Uren 1 cijfer op meest linkse (#0) leidde.
lc.displayChar(1,h2); Uur 2 cijfer tot en met LED #1
lc.displayChar(3,m1); Minuten 1 cijfer tot en met LED #3. (Herinneren dat #2 wordt gebruikt om te markeren de seconden.)
lc.displayChar(4,m2); Minuten 1 cijfer tot en met #4

/ * Deze routine bepaalt welke single leidde tot licht te tellen uit de seconden.
De middelste LED telt af de seconden door het verlichten van een enkele LED tegelijk
over elk van de 8 rijen. Rekenen 8 LEDs in de oneven rijen, en 7 op even rijen.
Dus, twee rijen tellen 15 seconden.
*/
voor (int r = 7; r > -1; r--) {//For elke 8 rijen, vanaf de bovenkant (#7)...
voor (int c = 0; c < 8; c ++) {//For elk van de 8 leds in een rij (0 op links)...

/*
Stip op de huidige kolom en rij te verlichten. Deze lijken te worden uitgewisseld op mijn hardware.
Ik geruild daarom de argumenten van de functie setLed() hieronder.
Goed, het wordt aangesproken als setLed (int onder leiding #, boolean, int rij, int col).
Variabele s1 bevat het nummer van de LED (geteld vanaf 0) van de LED-matrix hiervoor gebruikt.
*/

Als (r %2 == 0 & & c 7 ==) //Even rij en col 7
{}
anders
lc.setLed(s1,c,r,true); Aan de orde komen LED inschakelen voor 3/4 sec
delay(750);
lc.setLed(s1,c,r,false); Zwenking vandoor voor 1/4 sec
delay(250);
}
}
}
}

Gerelateerde Artikelen

Arduino LED Matrix Kit

Arduino LED Matrix Kit

Arduino LED Matrix Kit is ontwikkeld zodat u met een 8 x 8 LED Matrix, een geïntegreerde schakeling MAX7219 en een Arduino werken kunt. In het project, zal u trekken, met behulp van een eenvoudige en korte code, een blij gezicht. You´ll tekent vervol
Arduino 32 X 16 LED Matrix Clock

Arduino 32 X 16 LED Matrix Clock

Vond ik een erg leuk speeltje van de zaak.Ik zat te denken proberen te maken een heel mooie klok met het speelgoed van de zaak.Helaas kan erg leuk speelgoed van de zaak niet worden gevonden slechts één.Mislukking is niet toegestaan * _ *Stap 1: Mater
Arduino LED Matrix

Arduino LED Matrix

In deze korte tutorial leert u hoe maak je een Arduino-aangedreven LED-matrix. In tegenstelling tot verschillende andere ontwerpen gebruikt deze een een "metgezel"-computer in kennis te stellen van de Arduino die LEDs moeten worden gevoed.Ik heb
ATTiny2313 multi-mode LED Matrix Clock

ATTiny2313 multi-mode LED Matrix Clock

Dit is een mutli-modus klok project gebaseerd op attiny2313. het maakt gebruik van een 8 x 8 led matrix als vertoning. met de beperkte resolutie toont deze klok 12 uur tijd in 6 verschillende modi.het circuit wordt gebruikgemaakt van rij en kolom mul
Stem ingang Arduino Bi-color LED Matrix scrollen tekstweergave (Bluetooth + Android)

Stem ingang Arduino Bi-color LED Matrix scrollen tekstweergave (Bluetooth + Android)

Tijdens het browsen interessante projecten op Instructables, stuitte we op de indrukwekkende stem geactiveerd Arduino (Bluetooth + Android) instructable. Je kan check it out opOnlangs, hebben zetten we een instructable te bouwen een 7 Bi-color 8 x 8
V-USB ATtiny85 Project Raad van bestuur en een 8 x 8 rode LED Matrix Display

V-USB ATtiny85 Project Raad van bestuur en een 8 x 8 rode LED Matrix Display

Dit korte project zal een 8 x 8 Matrix van rode Led display met de V-USB ATtiny85 Project bord gemaakt in mijn eerste Instructable gebruiken. Het doel van deze oefening wordt een ATtiny85 bepalen van een 8 x 8 Led Matrix beeldscherm, en probeer te vi
Arduino binaire klok met LED Matrix

Arduino binaire klok met LED Matrix

Deze site heeft vele mooie berichten beschrijven bouw van binaire klokken. Ik ben vreselijk wankel, echter, en moeite hebben met eventuele solderen. Ik wilde daarom maken mij uit een 8 x 8 MAX7219-gecontroleerde LED-matrix.Stap 1: Lezen van de BCD bi
Arduino gebaseerd Bi-color LED Matrix Audio Spectrum Visualizer

Arduino gebaseerd Bi-color LED Matrix Audio Spectrum Visualizer

Nadat we met de Bi-color LED Matrix Driver Module kit kwamen, we hebben ons gebogen rond voor interessante projecten te werken.Bent u wellicht geïnteresseerd in een aantal van de projecten die we hebben opgemaakt op instructables met behulp van deze
Arduino gebaseerd Bi-color LED Matrix Game of Life

Arduino gebaseerd Bi-color LED Matrix Game of Life

Conway's Game of Life is geen conventionele spel. Het is de bekendste tweedimensionale cellulaire automaat gemaakt door de Britse wiskundige John Horton Conway in 1970.Het wordt gespeeld op een tweedimensionaal raster van cellen. Een cel kan worden d
Arduino gebaseerde Bi-color LED Matrix Tetris Game

Arduino gebaseerde Bi-color LED Matrix Tetris Game

Een van de elektronica DIY kit jolliFactory kwam omhoog met is de Bi-color LED Matrix Driver Module Kit. Deze module is ontworpen om kunnen keten-zodat u kan serieschakeling de modules samen aan het aantal modules moet u past bij uw project.De volgen
9 * 9 LED-matrix met Arduino

9 * 9 LED-matrix met Arduino

ooit wilde een groter scherm?Deze weergave is gebaseerd op een 9 * 9 groene LED Matrix. Het display is gedreven net met een Arduino board (Duemilanove in mijn geval).Waarom gebruiken we een matrix en we niet verlicht van de LED's afzonderlijk?Basic:E
LED Matrix met Arduino

LED Matrix met Arduino

Hola, ik ben Javier MakespaceMadrid. Vorige week organiseerden we een meetup om te spelen met LED matrices en Arduinos. Dit was deel van "La noche de la electrónica con Jameco"Dit instructable is gebaseerd op de workshop. Het maakt gebruik van e
Real-time BitCoin Price monitor met LED-Matrix, Arduino en 1Sheeld

Real-time BitCoin Price monitor met LED-Matrix, Arduino en 1Sheeld

Kortom, deze projecten illustreren hoe de prijs van BitCoin in USD in realtime bijwerken en weergeven van de prijs op een grote LED-matrix die we hebben gehackt om te laten communiceren met Arduino in plaats van de PC.Wij hebben ondervonden sommige p