Πίνακας περιεχομένων:

Πίνακας Ανάπτυξης Atmega16/32 Με LCD: 8 Βήματα
Πίνακας Ανάπτυξης Atmega16/32 Με LCD: 8 Βήματα

Βίντεο: Πίνακας Ανάπτυξης Atmega16/32 Με LCD: 8 Βήματα

Βίντεο: Πίνακας Ανάπτυξης Atmega16/32 Με LCD: 8 Βήματα
Βίντεο: Πίνακας τιμών Ανάπτυξη εφαρμογών 2024, Νοέμβριος
Anonim
Πίνακας Ανάπτυξης Atmega16/32 Με LCD
Πίνακας Ανάπτυξης Atmega16/32 Με LCD
Πίνακας Ανάπτυξης Atmega16/32 Με LCD
Πίνακας Ανάπτυξης Atmega16/32 Με LCD
Πίνακας Ανάπτυξης Atmega16/32 Με LCD
Πίνακας Ανάπτυξης Atmega16/32 Με LCD

Αυτό το διδακτικό δείχνει, πώς να φτιάξετε τον δικό σας πίνακα ανάπτυξης για τους επεξεργαστές Atmega16 ή Atmega32. Το Διαδίκτυο είναι γεμάτο από οικιακούς πίνακες ανάπτυξης, αλλά νομίζω ότι υπάρχει χώρος για έναν άλλο. Αυτός ο πίνακας ήταν πολύ χρήσιμος στα έργα μου και πραγματικά το σχεδίασα και το έκανα για να εξυπηρετήσει ένα από τα έργα μου. Τι προσφέρει;- ISP-connector.- Ρυθμιζόμενη τάση αναφοράς για AREF με κοπτικό.- 8 led που συνδέουν το PORTA με αφαιρούμενους βραχυκυκλωτήρες, έτσι μπορείτε να χρησιμοποιήσετε leds και με άλλες θύρες. (εξαρτήματα για κύρια πλακέτα)- 1x επεξεργαστής Atmega16 ή Atmega32- 1x κρύσταλλο (είναι επιλογή σας πόσα Mhz θα είναι)- 2x πυκνωτές 27 pF για κρύσταλλο- 1x 7805 ρυθμιστής τάσης- πυκνωτής 1x 47uF 16V- πυκνωτής 3x 100nF- 1x DC-jack 2, 1mm ή 2, 5mm (ό, τι θέλετε να χρησιμοποιήσετε)- 1x 1K ποτενσιόμετρο- 8x led (οποιοδήποτε χρώμα)- 8x 330 Ohm αντιστάσεις- πολλές ράβδοι ακίδων Μέρη για μονάδα rs232- Max232 IC- 4x 0, 1uF πυκνωτές - 2x led (πράσινο και κόκκινο)- 2x 330 Ohm αντιστάσεις- Spike bar- D9-connector

Βήμα 1: Οι πίνακες κυκλωμάτων

Οι πίνακες κυκλωμάτων
Οι πίνακες κυκλωμάτων
Οι πίνακες κυκλωμάτων
Οι πίνακες κυκλωμάτων

Υπάρχουν κυκλώματα και από τους δύο πίνακες και το αρχείο pdf περιέχει αρχεία εκτύπωσης από αυτούς τους πίνακες. Μπορείτε να χαράξετε τις σανίδες σας από αυτές τις εικόνες. Το αρχείο zip περιέχει όλα τα αρχεία Eagle από αυτούς τους πίνακες. Μη διστάσετε να τα τροποποιήσετε όπως θέλετε.

Βήμα 2: Χαλκογραφία ή άλεση

Χάραξη ή Άλεση
Χάραξη ή Άλεση
Χάραξη ή Άλεση
Χάραξη ή Άλεση

Υπάρχουν δύο τρόποι για να φτιάξετε αυτές τις σανίδες, χάραξη ή άλεση. Δεν είμαι χημικός, οπότε χρησιμοποίησα την τελευταία επιλογή. Έφτιαξα το μύλο μου από αυτούς τους σπουδαίους οδηγούς, οπότε αν κάποιος έχει επίσης nc-mill και θέλει να το χρησιμοποιήσει για να φτιάξει αυτούς τους πίνακες, απλώς ενημερώστε με και θα στείλω τους κωδικούς G.

Βήμα 3: Συγκόλληση

Συγκόλληση
Συγκόλληση
Συγκόλληση
Συγκόλληση

Η παρακάτω εικόνα θα δείχνει το όνομα του εξαρτήματος και πού πρέπει να βρίσκεται στο πλοίο.

Βήμα 4: Δοκιμή

Δοκιμές
Δοκιμές

Πριν μπορέσουμε να δοκιμάσουμε τον πίνακα ανάπτυξης, θα χρειαστούμε καλώδιο προγραμματιστή AVR. Εδώ μπορείτε να μάθετε καλά για το καλώδιο προγραμματισμού. Χρειαζόμαστε μόνο 6 καλώδια. SCK, MISO, MOSI, RST, Ground και +5V και γι 'αυτό το βύσμα μου έχει μόνο 6 ακίδες. ΣΗΜΑΝΤΙΚΟ! Τα σήματα SCK, MISO, MOSI και RST χρειάζονται αντιστάσεις 390 Ohm που συνήθως συγκολλούνται στο σκάφος, αλλά ήθελα να εξοικονομήσω λίγο χώρο από την πλακέτα και γι 'αυτό οι αντιστάσεις βρίσκονται μέσα στο καλώδιο. Χωρίς αυτές τις αντιστάσεις ο προγραμματισμός δεν θα λειτουργήσει. Πρέπει επίσης να κάνουμε ένα καλώδιο μεταξύ της μονάδας rs232 και της κύριας πλακέτας. Υπάρχουν επίσης δύο "καλώδια δοκιμής" στην εικόνα και αυτά είναι πραγματικά χρήσιμα όταν πρόκειται να δοκιμάσουμε τον πίνακα μας.

Βήμα 5: Προγραμματισμός και απλό πρόγραμμα δοκιμών

Προγραμματισμός και απλό πρόγραμμα δοκιμών
Προγραμματισμός και απλό πρόγραμμα δοκιμών

Στη συνέχεια θα χρειαστούμε κάποια "δοκιμαστικά" προγράμματα για να δοκιμάσουμε τον πίνακα μας. ΣΠΟΥΔΑΙΟΣ! Πρέπει να απενεργοποιήσουμε το JTAG από το PORTC, αν δεν το κάνουμε αυτό, η μονάδα lcd δεν θα λειτουργήσει, επομένως είναι απαραίτητη. Σε λειτουργικό Linux μπορούμε να το κάνουμε με την εντολή avrdude: avrdude -p m16 -c stk200 -U lfuse: w: 0xe4: m -U hfuse: w: 0xd9: m Αυτή η εντολή απενεργοποιεί το JTAG και ρυθμίζει και χρησιμοποιεί τον εσωτερικό ταλαντωτή 8Mhz. Ο πίνακας μας έχει εξωτερικό κρύσταλλο, αλλά οι άνθρωποι χρησιμοποιούν διαφορετικό μέγεθος κρυστάλλων, οπότε αυτή η εντολή είναι ασφαλής για όλους. Αν θέλετε να χρησιμοποιήσετε τον εξωτερικό σας κρύσταλλο εδώ είναι ο ιστότοπος για τον υπολογισμό των σωστών ασφαλειών. ΕΙΣΑΓΩΓΗ! Να είστε προσεκτικοί με τον προγραμματισμό ασφαλειών. Εάν ορίσετε λανθασμένες τιμές ασφάλειας, ο επεξεργαστής σας θα είναι εκτός λειτουργίας. Υπάρχει τρόπος ανάκτησης με εξωτερικό παλμό, αλλά ας ελπίσουμε ότι δεν χρειάζεται να το κάνετε αυτό =) Απλό πρόγραμμα δοκιμών: #include (avr/io.h) int main (void) {DDRA = 0xff; // ορίστε τη θύρα ως έξοδοDDRB = 0xff, DDRC = 0xff, DDRD = 0xff, PORTA = 0x00, // απενεργοποιήστε όλα τα pull-upsPORTB = 0x00; PORTC = 0x00; PORTD = 0x00;} isρθε η ώρα να ενεργοποιήσετε τον πίνακα και να στείλετε αυτό το μικρό δοκιμαστικό πρόγραμμα στον επεξεργαστή με το winavr ή ό, τι θέλετε να χρησιμοποιήσετε. Τώρα μπορούμε να το δοκιμάσουμε τα λιμάνια μας λειτουργούν σωστά. Βάλτε το ένα άκρο από το σύρμα στο ένα από τα pinhead led και αγγίξτε με το άλλο άκρο κάθε θύρα ακίδα βήμα προς βήμα. Το led πρέπει να λάμπει κάθε φορά. Εάν δεν λάμπει, τότε κάτι δεν πάει καλά με τη συγκόλληση. Θυμηθείτε επίσης ότι κάθε led λειτουργεί.

Βήμα 6: Δοκιμή σειριακής θύρας

Δοκιμή σειριακής θύρας
Δοκιμή σειριακής θύρας
Δοκιμή σειριακής θύρας
Δοκιμή σειριακής θύρας

Εάν όλα λειτούργησαν τέλεια, είναι καιρός να δοκιμάσουμε τη μονάδα rs232. Υπάρχει ένα μικρό πρόγραμμα που ελέγχει ότι λειτουργεί το TX και το RX μας. Χρήση σε Linux: Δημιουργήστε αρχείο που ονομάζεται Makefile και αντιγράψτε το παρακάτω κείμενο στο αρχείο. Ο κώδικας Makefile υποθέτει ότι χρησιμοποιείτε το Atmega16 και το καλώδιο προγραμματισμού σας είναι stk200 Θυμηθείτε να ορίσετε σωστά δικαιώματα η σειριακή σας θύρα/dev/ttyS0CC =/usr/bin/avr -gccCFLAGS = -g -Os -Wall -mcall -prologues -mmcu = atmega16 -std = gnu99OBJ2HEX =/usr/bin/avr -objcopy AVRDUDE =/usr/bin /avrdude: $ (TARGET). hex $ (AVRDUDE) -p m16 -P /dev /parport0 -c stk200 -u -U flash: w: test.hex %.obj: %.o $ (CC) $ (CFLAGS) $ <-o $@%.hex: %.obj $ (OBJ2HEX) -R.eeprom -O ihex $ <$@clean: rm -f *.hex *.obj *.oΛήψη atteched αρχείου serial.c και βάλτε στον ίδιο φάκελο όπου είναι το Makefile. Ενεργοποιήστε τον πίνακα ανάπτυξης και τοποθετήστε το καλώδιο μεταξύ της μονάδας rs232 και της κύριας πλακέτας. Τα led της μονάδας πρέπει να ανάβουν τώρα. Τοποθετήστε το καλώδιο δοκιμής μεταξύ του πείρου PA0 και μερικών ακίδων led. Χρησιμοποιήστε το τερματικό σας και μεταβείτε στο φάκελο όπου βρίσκεται το test.c και το Makefile. Συνδέστε τον προγραμματιστή ISP στον πίνακα. Τώρα ήρθε η ώρα να στείλουμε τον κωδικό μας στον επεξεργαστή και αυτό συμβαίνει με την εντολή τερματικού: κάντε λήψη λογισμικού που ονομάζεται GTKterm (Serial Port Terminal). Fedora: yum install gtktermUbuntu: sudo apt-get install gtkterm Ξεκινήστε το GTKterm και μορφοποιήστε το χρησιμοποιώντας ταχύτητα 9600Kbs, 8 bit δεδομένων, 1 bit διακοπής, καμία ισοτιμία, καμία υπερχείλιση. Εάν όλα λειτουργούν, θα πρέπει να γράψει "λειτουργεί!" στην οθόνη GTKterm όταν πατάτε το κουμπί "z" και όταν πατάτε το κουμπί "x" το led στο σκάφος πρέπει να ανάβει και όταν πατάτε το "c" θα πρέπει να απενεργοποιηθεί.

Βήμα 7: Δοκιμή μονάδας LCD

Δοκιμή μονάδας LCD
Δοκιμή μονάδας LCD
Δοκιμή μονάδας LCD
Δοκιμή μονάδας LCD

Τώρα ήρθε η ώρα να δοκιμάσουμε την μονάδα LCD μας. Επισυνάπτω ένα εξαιρετικό λογισμικό για τον έλεγχο της οθόνης LCD. Κατέβασα τον κώδικα από το Scienceprog.com και τον τροποποίησα ελάχιστα. Προγραμματίστε τον επεξεργαστή με αυτόν τον κωδικό και συνδέστε την μονάδα LCD σας στο σκάφος. Συνδέσεις ακροδεκτών LCD-module: 1 = VSS (Ground) 2 = VDD (5V) 3 = VO (Ground) 4 = RS5 = R/W6 = E11 = PC412 = PC513 = PC614 = PC7Η μονάδα μου lcd περιέχει 2 συνδέσμους (δείτε την εικόνα), επειδή το κείμενο ανεβαίνει προς τα κάτω αν βάλετε τη μονάδα όπως θα έπρεπε. Καθρέφτηκα και κόλλησα νέο σύνδεσμο στην άλλη πλευρά. Τώρα λειτουργεί και με τους δύο τρόπους.

Βήμα 8: Ορισμένα βίντεο

Επιταχυνσιόμετρα Dimmer

Συνιστάται: