Arduino Software (Λογισμικό)
Για να προγραμματίσετε τη μονάδα σας θα χρειαστείτε το περιβάλλον προγραμματισμού Arduino IDE. Στο περιβάλλον αυτό γράφετε κώδικα (βασίζεται στη γλώσσα C/C++) τον οποίο μετά μεταγλωττίζετε και μεταφορτώνετε στη μονάδα σας. Το Arduino IDE υπάρχει σε εκδόσεις για Windows, Mac και Linux. Mπορείτε να το κατεβάσετε εντελώς δωρεάν από την επίσημη ιστοσελίδα.
Το περιβάλλον αυτό έχει εξελληνισμένο μενού, καθώς και αρκετά έτοιμα παραδείγματα χρήσης βασικών λειτουργιών (Αρχείο => Παραδείγματα).
Arduino Software Προγραμματισμός
Μετά την εγκατάσταση του Arduino IDE μπορούμε να γράψουμε τα πρώτα μας τμήματα κώδικα. Η λογική του Arduino είναι πολύ απλή . Στην ουσία υπάρχουν δύο βασικές συναρτήσεις, η setup() και η loop() οι οποίες δουλεύουν ως εξής:
- setup() – εδώ βάζουμε όλες τις εντολές που πρέπει να τρέξουν μία φορά. ‘Οταν ενεργοποιείται η μονάδα μας (όταν δηλαδή δίνουμε ρεύμα ή όταν πατηθεί το πλήκτρο reset που υπάρχει). Συνήθως μπαίνουν αρχικοποιήσεις τιμών μεταβλητών και οπωσδήποτε ο χαρακτηρισμός των εισόδων/εξόδων που θα χρησιμοποιήσουμε. Αν δηλαδή ένα συγκεκριμένο Pin θα είναι είσοδος ή εξοδος.
- loop() – εδώ γράφουμε το πρόγραμμά μας. Οι εντολές που υπάρχουν θα τρέξουν κι όταν φτάσει στο τέλος θα ενεργοποιηθεί ξανά η loop(). Συνεχίζοντας από την αρχή της ξανά και ξανά. Αυτό θα συμβαίνει συνεχώς, όσο έχει ρεύμα το Arduino ή μέχρι να πατηθεί το πλήκτρο reset.
Έτσι, η βασική λειτουργία του Arduino είναι ότι τρέχει η συνάρτηση setup() μία φορά στην αρχή. Ακολούθως η loop() ξανά και ξανά μέχρι να το κλείσουμε. Δηλαδή να μην τροφοδοτείται με ρεύμα ή να πατήσουμε το πλήκτρο reset. Στην περίπτωση του Reset ξανατρέχει η συνάρτηση setup() μία φορά και ακολούθως η loop() ξανά και ξανά. Όπως δηλαδή ακριβώς και όταν αρχικά ενεργοποιείται με ρεύμα ο μικροελεγκτής. Στην περίπτωση που έχουμε κάνει αλλαγές στο πρόγραμμά μας και το φορτώσουμε στον μικροελεγκτή (θα δούμε παρακάτω τη διαδικασία αυτή) αρκεί να πατήσουμε το πλήκτρο Reset ώστε να φορτώσει το πρόγραμμά μας από την αρχή με τον τρόπο που περιγράφηκε. Ένα τυπικό πρόγραμμα έχει την παρακάτω δομή:
void setup() { /* οι εντολές εδώ θα τρέξουν μόνο στην ενεργοποίηση ή μετά από Reset */ } void loop() { /* οι εντολές εδώ θα τρέχουν ξανά και ξανά, μέχρι να απενεργοποιηθεί ή να πατηθεί το Reset */ }