Ξεκινώντας....
Απαιτούμενα Υλικά:
- Arduino Board (x1)
Χρήσιμες Πληροφορίες.....
Τι είναι μια Βιβλιοθήκη;
Οι βιβλιοθήκες λογισμικού (Software Libraries) είναι μια μεγάλη συλλογή από διαδικασίες, όπου όλες οι διαδικασίες μεταξύ τους συνδέονται. Για παράδειγμα, εάν θέλετε να διαχειριστείτε μια οθόνη LCD, θα πρέπει να χρησιμοποιήσετε Οι βιβλιοθήκες λογισμικού (Software Libraries) είναι μια μεγάλη συλλογή από διαδικασίες, όπου όλες οι διαδικασίες μεταξύ τους συνδέονται. Για παράδειγμα, εάν θέλετε να διαχειριστείτε μια οθόνη LCD, είναι απαραίτητο να κάνετε χρήση μια τέτοιας βιβλιοθήκης. Η βιβλιοθήκη αυτή σας παρέχει ένα σύνολο από διαδικασίες, οι οποίες έχουν ήδη γραφεί για εσάς ώστε να ελέγξετε την οθόνη, χωρίς να ταλαιπωρηθείτε φτιάχνοντας όλες τις διαδικασίες από την αρχή.
Βιβλιοθήκη Serial
Η βιβλιοθήκη που χρησιμοποιεί το Arduino για να επικοινωνεί, λέγεται Serial. Η βιβλιοθήκη αυτή επιτρέπει στο Arduino να επικοινωνεί αμφίδρομα με άλλες συσκευές. Όλες οι πλακέτες Arduino, έχουν τουλάχιστον μια σειριακή θύρα, γνωστή ως UART ή USART. Η θύρα αυτή επικοινωνεί με τους ψηφιακούς ακροδέκτες 0 (RX) και 1 (TX), όπως και με τον υπολογιστή μέσω της θύρας USB.
Η σειριακή επικοινωνία, εκτός από την επικοινωνία μεταξύ συσκευών μπορεί να συμπεριλάβει και την επικοινωνία με τον ίδιο τον χρήστη, με την χρήση του Serial Monitor. Μέσω της σειριακής οθόνης λοιπόν, ο χρήστης μπορεί να στέλνει εντολές ή δεδομένα προς το Arduino.
Η σειριακή επικοινωνία, εκτός από την επικοινωνία μεταξύ συσκευών μπορεί να συμπεριλάβει και την επικοινωνία με τον ίδιο τον χρήστη, με την χρήση του Serial Monitor. Μέσω της σειριακής οθόνης λοιπόν, ο χρήστης μπορεί να στέλνει εντολές ή δεδομένα προς το Arduino.
Λίγα λόγια για την σειριακή επικοινωνία:
Ο όρος σειριακή επικοινωνία , αφορά τη διαδικασία μεταφοράς δεδομένων κατά ένα bit την φορά, δηλαδή το ένα μετά το άλλο.Η πληροφορία μεταφέρεται μπρος και πίσω μεταξύ του υπολογιστή και της σειριακής συσκευής που χρησιμοποιείται (π.χ. Arduino).
Στην περίπτωση του Arduino, τα πράγματα είναι απλά. Η μεταφορά γίνεται εναλλάσσοντας την τάση ενός ακροδέκτη ανάμεσα σε HIGH / LOW (5v / 0V).
Θυμίζει λίγο τα σήματα Μόρς, όπου χρησιμοποιούνται τελείες και παύλες για την αποστολή μηνυμάτων.
Στην περίπτωση του Arduino, τα πράγματα είναι απλά. Η μεταφορά γίνεται εναλλάσσοντας την τάση ενός ακροδέκτη ανάμεσα σε HIGH / LOW (5v / 0V).
Θυμίζει λίγο τα σήματα Μόρς, όπου χρησιμοποιούνται τελείες και παύλες για την αποστολή μηνυμάτων.
Bits 'n' Bytes:
Και τώρα λίγα λόγια για την μορφή μετάδοσης των σειριακών δεδομένων. Η μορφή μετάδοσης δεδομένων μεταξύ του Arduino και του υπολογιστή είναι δυαδική (Binary). Αυτό σημαίνει πως η πληροφορία δημιουργείται από μια συνεχή ροή 0 και 1. Το μέγεθος αυτών των ροώς είναι ανάλογο του πλήθους των bits που τις απαρτίζουν.
8 bits | --> | 1 Byte | ||||||
1 KB | --> | 1024 Byte | --> | 8192 bits | ||||
1 MB | --> | 1024 KB | --> | 1048576 Bytes | --> | 8388608 bits | ||
1 GB | --> | 1024 MB | --> | 1048576 KB | --> | 1073741824 Bytes | --> | 8589934592 bits |
Κάτι γνωστό:
Η σειριακή επικοινωνία στην ουσία χρησιμοποιείται και κατά την φόρτωση προγραμμάτων στο Arduino. Κατά την αποσφαλμάτωση του προγράμματος, αυτό που συμβαίνει στην πραγματικότητα είναι πως ο μεταγλωττιστής μετατρέπει το πρόγραμμα σε δυαδική μορφή (Binary). Κατά την φόρτωση λοιπόν του προγράμματος στο Arduino, η ροή των bits προωθείται κατά ένα bit την φορά, μέσω του καλωδίου USB, όπου τελικά αποθηκεύονται στην μνήμη του μικροελεγκτή.
Την επόμενη φορά που θα μεταφορτώσετε ένα πρόγραμμα στο Arduino, παρατηρήστε προσεκτικά τα δύο LED της σειριακής επικοινωνίας (TX/RX), που υπάρχουν επάνω στην πλακέτα.
Τα LED αυτά αναβοσβήνουν ασταμάτητα κατά την μετάδοση της πληροφορίας. Το ένα αναβοσβήνει, όταν το Arduino λαμβάνει πληροφορία (RX), ενώ το άλλο κατά την αποστολή της πληροφορίας (TX).
Την επόμενη φορά που θα μεταφορτώσετε ένα πρόγραμμα στο Arduino, παρατηρήστε προσεκτικά τα δύο LED της σειριακής επικοινωνίας (TX/RX), που υπάρχουν επάνω στην πλακέτα.
Τα LED αυτά αναβοσβήνουν ασταμάτητα κατά την μετάδοση της πληροφορίας. Το ένα αναβοσβήνει, όταν το Arduino λαμβάνει πληροφορία (RX), ενώ το άλλο κατά την αποστολή της πληροφορίας (TX).
Πρόγραμμα:
Αρχικά, για να μπορέσετε να ενεργοποιήσετε την σειριακή οθόνη πρέπει πρώτα να εδραιωθεί (Establish) η επικοινωνία και να οριστεί η ταχύτητα με την οποία θα μεταδοθούν τα δεδομένα. Έτσι, μέσα στη setup(), γράφεται την εντολή:
Serial.begin(9600); όπου 9600 η ταχύτητα μετάδοσης δεδομένων σε bps. Έπειτα, μέσα στην loop() με την εντολή Serial.println(); εκτυπώνουμε το μήνυμα "Hello Serial Monitor." . Το μήνυμα αυτό θα εκτυπώνεται συνεχώς,με διαφορά 1 δευτερολέπτου, για όσο το board τροφοδοτείται ή μέχρι να πατηθεί το κουμπί reset. Η εντολή Serial.println() εκτυπώνει τα δεδομένα , αλλάζοντας γραμμή κάθε φορά που ολοκληρώνεται ένα κύκλος εκτέλεσης της loop. Αντίθετα, με την εντολή Serial. print() τα δεδομένα εκτυπώνονται σειριακά. |
|
Λειτουργία: