Για να διευκολυνθούμε στην ανάπτυξη έργων με την πλατφόρμα Arduino, δημιουργήσαμε μια αναπτυξιακή πλακέτα βασισμένη σε ένα συγκεκριμένο μέλος της οικογένειας Arduino, στο Arduino Nano, όπως την παρουσιάζουμε στη συνέχεια.
Καρδιά της πλακέτας είναι το module Arduino Nano όπου πάνω του υπάρχει ένας μικροελεγκτής AVR και συγκεκριμένα ο ATmega328Ρ που μαζί με τα απαραίτητα εξαρτήματα αποτελούν ένα αυτόνομο modulo διαστάσεων 4,2cm X 1,6cm
Το σχηματικό διάγραμμα της αναπτυξιακής πλακέτας είναι όπως ακολουθεί. Βλέπουμε ότι περιέχει μη κρίσιμα εξαρτήματα που μπορούμε εύκολα να βρούμε όπως στο ebay
Πάνω στην αναπτυξιακή πλακέτα διαστάσεων 19cm X 16cm που παρουσιάζουμε υπάρχει υποδοχή για το Arduino Nano καθώς επίσης και θέση για να φιλοξενήσει ένα αλφαριθμητικό LCD display για την απεικόνιση των δεδομένων.
Η τροφοδοσία γίνεται με ένα τροφοδοτικό πρίζας με έξοδο 9 volts που τροφοδοτεί το Arduino και μέσω ενός switching σταθεροποιητή, πάνω στην πλακέτα, έχουμε τάση 5 volts για την τροφοδοσία των περιφερειακών μονάδων. Επίσης υπάρχει και ο σταθεροποιητής LM1117 με έξοδο 3,3 volt για πληρότητα τάσης.
Η συναρμολόγηση του pcb γίνεται εύκολα, και η διάταξη των εξαρτημάτων γίνεται όπως στην ακόλουθη εικόνα:
Για την απεικόνιση των δεδομένων χρησιμοποιούμε ένα LCD display, το οποίο μπορεί να είναι μεγέθους 16Χ2, 16Χ4 ή 20Χ4 χαρακτήρων και για να μπορέσει να λειτουργήσει σωστά με το Arduino θα πρέπει να είναι βασισμένο στο ΗD44780 chip.
To LCD display μπορεί να οδηγηθεί από τον μικροελεγκτή παράλληλα ή σειριακά μέσω του πρωτοκόλλου Ι2C. Στην κορυφή της πλακέτας υπάρχει μια διπλή πινοσειρά, στη οποία στην μία οριζόντια σειρά «κουμπώνει» το LCD κάθε φορά. Η κάτω σειρά συνδέει το LCD παράλληλα με το Arduino Nano, ενώ η πάνω σειρά συνδέει το Nano σειριακά με το display με οδηγό το chip PCF8574N κάνοντας χρήση το πρωτόκολλο I2C.
Λειτουργία παράλληλης σύνδεσης του display με το Arduino
Όταν το LCD display κουμπώσει στην κάτω σειρά της διπλής πινοσειράς λειτουργεί παράλληλα δεσμεύοντας τα πινς
RS = 7, E = 6, DB4 = 5, DB5 = 4, DB6 = 3 και DB7 = 2.
Τα υπόλοιπα 8 πινς είναι διαθέσιμα για την επικοινωνία του Arduino με τον έξω κόσμο.
0/RXD, 1/TXD, 8, 9, 10/SS, 11/MOSI, 12/MISO, 13/SCK
Λειτουργία σειριακής σύνδεσης του display με το Arduino
Όταν το LCD οδηγείται σειριακά μέσω του πρωτοκόλλου I2C αφού το κουμπώσουμε στην πάνω σειρά της πινοσειράς, είναι διαθέσιμα άλλα τα πινς εισόδου – εξόδου του Arduino, δηλαδή τα:
0/RXD, 1/TXD, 2, 3, 4, 5, 6, 7, 8, 9, 10/SS, 11/MOSI, 12/MISO, 13/SCK
Επίσης και για τους δυο τρόπους σύνδεσης διαθέτει SPI επικοινωνία που στην περίπτωση που ενεργοποιηθεί γίνονται χρήση τα ακόλουθα πινς:
10/SS, 11/MOSI, 12/MISO, 13/SCK
Επίσης διαθέτει οκτώ εισόδους αναλογικού σήματος που οδηγούν ισάριθμους μετατροπείς από αναλογικού σε ψηφιακού σήματος.
Σημείωση: οι δυο βραχυκυκλωτήρες στην πάνω πλευρά της πλακέτας συνδέουν τις εξόδους SDA και SCL του Arduino Nano με τα αντίστοιχα πινς του chip PCF8574N
Ο τρόπος προγραμματισμού του LCD στη πλατφόρμα Arduino περιγράφεται στα άρθρα:
Arduino > Διασύνδεση του I2C LCD με το Arduino
Arduino > Λειτουργία του LCD module χαρακτήρων
Τα εξαρτήματα που χρησιμοποιούνται στην πλακέτα είναι:
Αντιστάσεις:
R1 = 1,5
R2 = 220
R3, R4, R5, R6 = 470
R11 = 820
R12, R13, R14 = 10K
TR1, TR2 = 10K trimmer
Πυκνωτές:
C1 = 33nF
C2, C3, C4 = 1000μF / 16V
C5, C6, C7, C8 = 10μF
Δίοδοι:
D1 = 1N5817
D2, D3, D4, D5, D6 = LED RED
Αυτεπαγωγή:
L1 = 100μΗ
Ολοκληρωμένα:
IC1 = PCF8574N
IC2 = LM1117_3.3
IC3 = LT1076-5
Διάφορα:
SW1 = slide switch SPDT
SW2 = Dip switch – 3P
J1 = DC connector