/* ΓΕΝΙΚΕΣ ΟΔΗΓΙΕΣ Ο κώδικας δεν είναι πλήρης :) Υπάρχουν κενά τα οποία συμπληρώνετε με κριτήριο το τι θέλετε να κάνει η ΔΙΚΗ ΣΑΣ εφαρμογή. Διαβάζετε τις οδηγίες που υπάρχουν μέσα στον κώδικα, κάνουν καλό :) */ // Ο κώδικας που μας βοηθάει να χρησιμοποιήσουμε στο δικό μας πρόγραμμα // ένα led matrix, βρίσκεται στην βιβλιοθήκη LedControlMS. Γιαυτό και με // την οδηγία #include που βλέπετε πιο κάτω, λέμε ουσιαστικά στο δικό μας // πρόγραμμα που να πάει να βρει τις εντολές για το led matrix. #include "LedControlMS.h" // Σύμφωνα με την βιβλιοθήκη, για να ορίσουμε ένα led matrix μέσα στο πρόγραμμά μας, // πρέπει να χρησιμοποιήσουμε τα ακόλουθα pins int dataPin = 12; int clockPin = 11; int loadPin = 10; int numberOfMatrices = 4; // Πόσα led matrices θα συνδέσουμε στη σειρά. // Αν χρησιμοποιήσετε λιγότερα, θα αλλάξετε τον αριθμό. LedControl lc = LedControl(dataPin, clockPin , loadPin, numberOfMatrices); // Θα χρησιμοποιήσουμε 4 μεταβλητές για να αποθηκεύουμε σε αυτές // το σύμβολο (γράμμα, αριθμός, ή κενό) που θα θέλουμε να εμφανιστεί // σε κάθε led matrix. Για παράδειγμα: char symbol1 = 'A'; char symbol2 = 'B'; char symbol3 = 'C'; char symbol4 = 'D'; void setup() { // Το led matrix είναι σε power-saving mode αρχικά. // Σύμφωνα με την βιβλιοθήκη, πρέπει να δώσουμε τις εξής εντολές // για να το ενεργοποιήσουμε lc.shutdown(0, false); lc.setIntensity(0, 1); lc.clearDisplay(0); // Αυτές οι τρεις εντολές πρέπει να γίνουν για κάθε led matrix // Το 1ο είναι το 0, το 2ο είναι το 1, το 3ο είναι το 2, κοκ lc.shutdown(1, false); lc.setIntensity(1, 1); lc.clearDisplay(1); // ....... // ....... // Έναρξη σειριακής επικοινωνίας με το PC για να μπορούμε να // βλέπουμε τιμές αισθητήρων, αλλά και να δίνουμε τιμές από το πληκτρολόγιο. // Μπορεί και να μην χρειαστεί, αλλά ας το έχουμε ως ρύθμιση. Serial.begin (9600); // Αρχικά, σβήνουμε όλα τα matrices delay(100); lc.clearAll(); } void loop() { // Για να εμφανιστεί ένα σύμβολο σε ένα led matrix, πρέπει να // δώσουμε τον αριθμό του matrix και το σύμβολο. Θυμηθείτε ότι // η αρίθμηση των matrices αρχίζει από 0. lc.displayChar(0, lc.getCharArrayPosition(symbol1)); lc.displayChar(1, lc.getCharArrayPosition(symbol2)); lc.displayChar(2, lc.getCharArrayPosition(symbol3)); lc.displayChar(3, lc.getCharArrayPosition(symbol4)); delay(300); // H διάρκεια εμφάνισης είναι 300 ms. Αυτό προφανώς το αλλάζετε αν θέλετε. lc.clearAll(); delay(25); }