- Ξεκινήστε με την Απαίτηση Έργου
- Κοιτάξτε τις Επιλεγμένες παραμέτρους
- Τάση λειτουργίας
- Συνδετήρες στόχου
- Προηγμένες διεπαφές
- Περιβάλλον ανάπτυξης
- Τιμή και διαθεσιμότητα
- Αλλα χαρακτηριστικά
- συμπέρασμα
Όταν πρόκειται για την επιλογή μικροελεγκτή, είναι πραγματικά μια σύγχυση, καθώς υπάρχουν διάφοροι μικροελεγκτές διαθέσιμοι στην αγορά με τις ίδιες προδιαγραφές. Έτσι κάθε παράμετρος καθίσταται σημαντική όταν πρόκειται για την επιλογή ενός μικροελεγκτή. Εδώ συγκρίνουμε δύο πιο συχνά χρησιμοποιούμενους Μικροελεγκτές PIC Microcontroller και AVR Microcontroller. Εδώ συγκρίνονται σε διάφορα επίπεδα τα οποία θα είναι χρήσιμα στην επιλογή μικροελεγκτή για το έργο σας.
Ξεκινήστε με την Απαίτηση Έργου
Συγκεντρώστε όλες τις πληροφορίες σχετικά με το έργο σας που πρέπει να ξεκινήσετε πριν ξεκινήσετε να επιλέγετε οποιοδήποτε μικροελεγκτή Είναι πολύ σημαντικό οι πληροφορίες να συλλέγονται όσο το δυνατόν περισσότερο, καθώς αυτό θα διαδραματίσει σημαντικό ρόλο στην επιλογή του σωστού μικροελεγκτή.
- Συγκεντρώστε πληροφορίες για το έργο, όπως το μέγεθος του έργου
- Αριθμός περιφερειακών και αισθητήρων που χρησιμοποιήθηκαν
- Απαίτηση ισχύος
- Προϋπολογισμός Έργου
- Απαίτηση διεπαφών (όπως USB, SPI, I2C, UART κ.λπ.),
- Δημιουργήστε ένα βασικό διάγραμμα μπλοκ υλικού,)
- Καταγράψτε πόσα GPIO χρειάζονται
- Αναλογικές σε ψηφιακές εισόδους (ADCs)
- PWMs
- Επιλέξτε τη σωστή αρχιτεκτονική που απαιτείται δηλαδή (8-bit, 16-bit, 32-bit)
- Αναγνωρίστε τις απαιτήσεις μνήμης του έργου (RAM, Flash κ.λπ.)
Κοιτάξτε τις Επιλεγμένες παραμέτρους
Όταν συγκεντρώνονται όλες οι πληροφορίες, τότε είναι η κατάλληλη στιγμή να επιλέξετε τον μικροελεγκτή. Σε αυτό το άρθρο οι δύο ανταγωνιστικές μάρκες μικροελεγκτή PIC και AVR θα συγκριθούν με ποικιλία παραμέτρων. Ανάλογα με την ανάγκη του έργου για σύγκριση των δύο, δείτε τις ακόλουθες παραμέτρους όπως,
- Συχνότητα: Ταχύτητα με την οποία θα λειτουργεί ο μικροελεγκτής
- Αριθμός ακίδων I / O: Απαιτούμενες θύρες και ακίδες
- RAM: Όλες οι μεταβλητές και οι πίνακες δηλώθηκαν (DATA) στα περισσότερα MCU
- Flash Memory: Οποιοσδήποτε κώδικας γράφετε πηγαίνει εδώ μετά την κατάρτιση
- Advanced Interfaces: Προηγμένες διεπαφές όπως USB, CAN και Ethernet.
- Τάση λειτουργίας: Τάση λειτουργίας MCU όπως 5V, 3.3V ή Χαμηλή τάση.
- Συνδετήρες στόχου: Οι σύνδεσμοι για ευκολία σχεδιασμού και μεγέθους κυκλώματος
Οι περισσότερες από τις παραμέτρους είναι παρόμοιες τόσο στο PIC όσο και στο AVR, αλλά υπάρχουν ορισμένες παράμετροι που σίγουρα διαφέρουν σε σύγκριση.
Τάση λειτουργίας
Με περισσότερα προϊόντα που λειτουργούν με μπαταρία, τα PIC και AVR κατάφεραν να βελτιωθούν για τις λειτουργίες χαμηλής τάσης. Τα AVR είναι πιο γνωστά για τη λειτουργία χαμηλής τάσης από τις παλαιότερες σειρές PIC, όπως PIC16F και PIC18F, επειδή αυτές οι σειρές PIC χρησιμοποίησαν μέθοδο διαγραφής τσιπ που χρειάζεται τουλάχιστον 4,5V για να λειτουργήσει και κάτω από 4,5V οι προγραμματιστές PIC πρέπει να χρησιμοποιούν αλγόριθμο διαγραφής σειρών που δεν μπορεί να διαγράψει κλειδωμένη συσκευή. Ωστόσο, αυτό δεν συμβαίνει στο AVR.
Το AVR έχει βελτιώσει και λανσάρει τις τελευταίες παραλλαγές P (pico-power) όπως το ATmega328P που είναι εξαιρετικά χαμηλής ισχύος. Επίσης, το τρέχον ATtiny1634 έχει βελτιωθεί και έρχεται με τρόπους αδράνειας για να μειώσει την κατανάλωση ενέργειας όταν χρησιμοποιείται brownout που είναι πολύ χρήσιμο σε συσκευές με μπαταρία.
Το συμπέρασμα είναι ότι το AVR επικεντρώθηκε προηγουμένως σε χαμηλή τάση, αλλά το PIC έχει πλέον μετατραπεί για τη λειτουργία χαμηλής τάσης και έχει ξεκινήσει ορισμένα προϊόντα που βασίζονται στο picPower.
Συνδετήρες στόχου
Οι σύνδεσμοι προορισμού είναι πολύ σημαντικοί όσον αφορά το σχεδιασμό και την ανάπτυξη. Το AVR έχει ορίσει διεπαφές ISP 6 και 10 κατευθύνσεων, κάτι που το καθιστά εύκολο στη χρήση, ενώ το PIC δεν το έχει, οπότε οι προγραμματιστές PIC έρχονται με καλώδια πτήσης ή υποδοχές RJ11 που είναι δύσκολο να τοποθετηθούν στο κύκλωμα.
Συμπέρασμα είναι ότι το AVR το έχει κάνει απλό όσον αφορά τη σχεδίαση και την ανάπτυξη κυκλώματος με τους συνδέσμους-στόχους, ενώ το PIC πρέπει ακόμη να το διορθώσει.
Προηγμένες διεπαφές
Όσον αφορά τις προηγμένες διεπαφές, τότε το PIC είναι σίγουρα η επιλογή καθώς έχει ενεργήσει με προηγμένες δυνατότητες όπως USB, CAN και Ethernet, κάτι που δεν συμβαίνει στο AVR. Ωστόσο, μπορεί κανείς να χρησιμοποιήσει εξωτερικά τσιπ, όπως FTDI USB σε σειριακά τσιπ, μικροεπεξεργαστές Ethernet ή τσιπ Philips CAN.
Συμπέρασμα είναι ότι το PIC έχει σίγουρα τις προηγμένες διεπαφές από το AVR.
Περιβάλλον ανάπτυξης
Εκτός από αυτό, υπάρχουν σημαντικά χαρακτηριστικά που κάνουν τόσο τον μικροελεγκτή διαφορετικό μεταξύ τους. Η ευκολία του περιβάλλοντος ανάπτυξης είναι πολύ σημαντική. Ακολουθούν μερικές σημαντικές παράμετροι που θα εξηγήσουν την ευκολία του περιβάλλοντος ανάπτυξης:
- Ανάπτυξη IDE
- C Μεταγλωττιστές
- Συγκροτητές
Ανάπτυξη IDE:
Τόσο το PIC όσο και το AVR έρχονται με τα δικά τους IDE ανάπτυξης . Η ανάπτυξη PIC γίνεται στο MPLAB X, το οποίο είναι γνωστό ότι είναι το σταθερό και απλό IDE σε σύγκριση με το Atmel Studio7 του AVR, το οποίο είναι μεγάλου μεγέθους 750MB και είναι λίγο αδιάφορο με περισσότερες δυνατότητες πρόσθετων που το καθιστούν δύσκολο και περίπλοκο για τους νέους ηλεκτρονικούς χομπίστες.
Το PIC μπορεί να προγραμματιστεί μέσω των εργαλείων μικροτσίπ PICkit3 και MPLAB Χ . Το AVR προγραμματίζεται χρησιμοποιώντας εργαλεία όπως το JTAGICE και το AtmelStudio7. Ωστόσο, οι χρήστες μεταβαίνουν στις παλαιότερες εκδόσεις του AVR Studio, όπως το 4.18 με το service pack3, καθώς τρέχει πολύ πιο γρήγορα και έχει βασικές δυνατότητες ανάπτυξης.
Το συμπέρασμα είναι ότι το PIC MPLAB X είναι λίγο πιο γρήγορο και φιλικό προς το χρήστη από το AtmelStudio7.
Συγγραφείς C:
Τόσο το PIC όσο και το AVR έρχονται με XC8 και WINAVR C Compilers αντίστοιχα. Το PIC εξαγόρασε την Hi-tech και κυκλοφόρησε το δικό του μεταγλωττιστή XC8. Αυτό είναι πλήρως ενσωματωμένο στο MPLAB X και λειτουργεί καλά. Ωστόσο, το WINAVR είναι ANSI C βασισμένο σε μεταγλωττιστή GCC που διευκολύνει τη μεταφορά κώδικα και τη χρήση τυπικών βιβλιοθηκών. Η δωρεάν περιορισμένη έκδοση 4KB του IAR C Compiler δίνει μια γεύση επαγγελματικών μεταγλωττιστών που κοστίζει πολύ. Δεδομένου ότι το AVR έχει σχεδιαστεί για C στην αρχή, η έξοδος κώδικα είναι μικρή και γρήγορη.
Το PIC έχει πολλές δυνατότητες που το κάνουν καλά σε σύγκριση με το AVR, αλλά ο κώδικάς του γίνεται μεγαλύτερος λόγω της δομής του PIC. Η πληρωμένη έκδοση είναι διαθέσιμη με περισσότερη βελτιστοποίηση, ωστόσο η δωρεάν έκδοση δεν είναι καλά βελτιστοποιημένη.
Το συμπέρασμα είναι ότι το WINAVR είναι καλό και γρήγορο όσον αφορά τους μεταγλωττιστές από το PIC XC8.
Συναρμολογητές:
Με τρεις καταχωρητές δεικτών 16 bit που απλοποιούν τις λειτουργίες διευθύνσεων και λέξεων, η γλώσσα συναρμολόγησης AVR είναι πολύ εύκολη με πολλές οδηγίες και τη δυνατότητα χρήσης και των 32 καταχωρητών ως συσσωρευτής. Ενώ ο συναρμολογητής PIC δεν είναι τόσο καλός με όλα όσα αναγκάζονται να λειτουργούν μέσω του συσσωρευτή, αναγκάζει να χρησιμοποιούν συνεχώς την εναλλαγή τράπεζας για πρόσβαση σε όλους τους Μητρώους Ειδικών Λειτουργιών. Παρόλο που το MPLAB περιλαμβάνει μακροεντολές για την απλοποίηση της εναλλαγής τραπεζών, αλλά είναι κουραστική και χρονοβόρα.
Επίσης, η έλλειψη οδηγιών διακλάδωσης, απλά παραλείψτε και GOTO, που αναγκάζει σε περίπλοκες δομές και λίγο συγκεχυμένο κώδικα. Η σειρά PIC έχει κάποιες σειρές μικροελεγκτών πολύ πιο γρήγορα αλλά περιορίζεται και πάλι σε έναν συσσωρευτή.
Συμπέρασμα είναι ότι, αν και μερικοί από τους μικροελεγκτές PIC είναι γρηγορότεροι, αλλά το AVR είναι καλύτερο να δουλέψουμε όσον αφορά τους συναρμολογητές.
Τιμή και διαθεσιμότητα
Μιλώντας από την άποψη της τιμής, τότε τόσο το PIC όσο και το AVR είναι πολύ παρόμοια. Και τα δύο διατίθενται σε σχεδόν ίδια τιμή. Όσον αφορά τη διαθεσιμότητα, τότε το PIC κατάφερε να παραδώσει τα προϊόντα σε καθορισμένο χρόνο σε σύγκριση με το AVR, καθώς η Microchip είχε πάντα πολιτική σύντομων χρόνων παράδοσης. Η Atmel είχε κάποιες δύσκολες στιγμές, καθώς το ευρύ φάσμα προϊόντων τους σημαίνει ότι τα AVR αποτελούν μικρό μέρος της επιχείρησής τους, οπότε άλλες αγορές μπορούν να έχουν προτεραιότητα έναντι των AVR για παραγωγική ικανότητα. Επομένως, συνιστάται η χρήση PIC όσον αφορά τα προγράμματα παράδοσης, ενώ το AVR μπορεί να είναι κρίσιμο για την παραγωγή. Τα εξαρτήματα μικροτσίπ τείνουν να είναι πιο εύκολα διαθέσιμα ειδικά σε μικρές ποσότητες.
Αλλα χαρακτηριστικά
Τόσο το PIC όσο και το AVR διατίθενται σε διάφορα πακέτα. Το PIC κυκλοφορεί περισσότερες εκδόσεις από το AVR. Αυτή η έκδοση μπορεί να έχει πλεονεκτήματα και μειονεκτήματα ανάλογα με τις εφαρμογές όπως περισσότερες εκδόσεις δημιουργούν σύγχυση στην επιλογή του κατάλληλου μοντέλου, αλλά ταυτόχρονα παρέχει καλύτερη ευελιξία. Η τελευταία έκδοση τόσο του PIC όσο και του AVR είναι πολύ χαμηλής ισχύος και λειτουργούν σε ποικιλία εύρους τάσης. Τα ρολόγια και οι χρονοδιακόπτες PIC είναι πιο ακριβείς, αλλά από την άποψη της ταχύτητας, τα PIC και AVR είναι πολύ ίδια.
Το Atmel Studio 7 έχει προσθέσει αρχεία ELF παραγωγής, τα οποία περιλαμβάνουν δεδομένα EEPROM, Flash και fuse σε ένα αρχείο. Ενώ το AVR έχει ενσωματώσει δεδομένα ασφάλειας στη μορφή αρχείου hex, έτσι ώστε η ασφάλεια μπορεί να οριστεί σε κώδικα. Αυτό επιτρέπει τη μεταφορά του έργου στην παραγωγή ευκολότερα για PIC.
συμπέρασμα
Τα PIC και AVR είναι και οι δύο εξαιρετικές συσκευές χαμηλού κόστους που δεν χρησιμοποιούνται μόνο σε βιομηχανίες, αλλά και μια δημοφιλής επιλογή μεταξύ μαθητών και χόμπι. Και τα δύο χρησιμοποιούνται ευρέως και έχουν καλά δίκτυα (φόρουμ, παραδείγματα κώδικα) με ενεργή διαδικτυακή παρουσία. Και οι δύο έχουν καλή προσέγγιση και υποστήριξη στην κοινότητα και και οι δύο διατίθενται σε μεγάλα μεγέθη και συντελεστές μορφής με βασικά ανεξάρτητα περιφερειακά. Η Microchip έχει αναλάβει το Atmel και τώρα φροντίζει τόσο το AVR όσο και το PIC. Στο τέλος, είναι καλά κατανοητό ότι η εκμάθηση του μικροελεγκτή είναι σαν να μαθαίνετε γλώσσες προγραμματισμού, καθώς η εκμάθηση άλλου θα είναι πολύ πιο εύκολη μόλις μάθετε.
Είναι άσχετο να πούμε ότι όποιος κερδίζει, αλλά σχεδόν σε όλους τους κλάδους της μηχανικής, δεν υπάρχει λέξη όπως το «καλύτερο», ενώ η φράση «Το πιο κατάλληλο για εφαρμογή» είναι κατάλληλη. Όλα εξαρτώνται από τις απαιτήσεις ενός συγκεκριμένου προϊόντος, τη μέθοδο ανάπτυξης και τη διαδικασία κατασκευής. Έτσι, ανάλογα με το έργο, μπορεί κανείς να επιλέξει έναν κατάλληλο μικροελεγκτή εκτός PIC και AVR.