Μικροεπεξεργαστές, Αρχές και Εφαρμογές
Π. ΠΑΠΑΖΟΓΛΟΥ (2015)



Π. ΠΑΠΑΖΟΓΛΟΥ (2015), Ανάπτυξη εφαρμογών με το Arduino, Εκδόσεις ΤΖΙΟΛΑ,
Θεσσαλονίκη, ISBN 978-960-418-508-5, σελίδες: 824, (+διαφάνειες, Λυσάρι)

Download

Γενικά

  Το βιβλίο Μικροεπεξεργαστές – Αρχές και Εφαρμογές των εκδόσεων ΤΖΙΟΛΑ, πραγματεύεται την αρχιτεκτονική και τον προγραμματισμό των μικροεπεξεργαστών. Πρόκειται για το πιο πλήρες βιβλίο στην ελληνική βιβλιογραφία. 

  Η αρχιτεκτονική και ο προγραμματισμός των μικροεπεξεργαστών αποτελεί αναμφίβολα ένα από τα σημαντικότερα αντικείμενα για τους μηχανικούς που στις περισσότερες περιπτώσεις εντάσσεται στο ευρύτερο αντικείμενο της αρχιτεκτονικής υπολογιστών. Στα περισσότερα βιβλία, η λειτουργία του μικροεπεξεργαστή μονοπωλεί το ενδιαφέρον μιας και αποτελεί και την καρδιά του συστήματος. Επιπλέον, παρουσιάζει ιδιαίτερο ενδιαφέρον σε επίπεδο προγραμματισμού αφού η αξιοποίηση των δυνατοτήτων του μικροεπεξεργαστή είναι ένα σημαντικό ζητούμενο.

  Αρκετά ήταν τα κίνητρα για τη συγγραφή αυτού του βιβλίου. Μεταξύ άλλων, η ανάδειξη ενός βιβλίου γραμμένου σε απλή γλώσσα, με εκπαιδευτικό χαρακτήρα και δομή για αποδοτικότερη μελέτη. Πρόκειται για μια δουλειά για την οποία αφιερώθηκαν πάνω από χίλιες ώρες εργασίας, αφού ο στόχος δεν ήταν απλά η συλλογή και η συρραφή του απαιτούμενου υλικού. Καταβλήθηκε μεγάλη προσπάθεια ώστε η δομή του βιβλίου να διευκολύνει τη μελέτη του αναγνώστη και να του δίνει εργαλεία πρακτικής εξάσκησης όπως οι εργαστηριακές ασκήσεις.

  Το βιβλίο ξεκινά με την παρουσίαση των θεωρητικών γνώσεων που όμως είναι εμπλουτισμένες με ενδιαφέρουσες ασκήσεις. Για να διατηρηθεί αμείωτο το ενδιαφέρον του αναγνώστη, προστέθηκαν ορισμένα αντιπροσωπευτικά πειράματα που δίνουν κατευθύνσεις και ερεθίσματα για τον τρόπο υλοποίησης κυκλωμάτων στην πράξη. Έτσι, ο αναγνώστης μελετά και ορισμένα χαρακτηριστικά της υλοποίησης που τον βοηθούν να σχηματίσει μια πιο ολοκληρωμένη εικόνα για το αντικείμενο. Στη συνέχεια, και αφού έχουν παρουσιαστεί βασικά χαρακτηριστικά και εφαρμογές του υλικού των μικροεπεξεργαστών, προχωράμε στον προγραμματισμό. Ο προγραμματισμός αφορά τόσο στους μικροεπεξεργαστές τύπου RISC (MIPS), όσο και στους τύπου CISC (INTEL). Όλες οι εφαρμογές παρουσιάζονται και αναλύονται τόσο σε επίπεδο διαγράμματος ροής (αλγοριθμικά) όσο και σε επίπεδο κώδικα. Αυτό τον τρόπο ανάλυσης και παρουσίασης τέτοιου πλήθους εφαρμογών, δύσκολα θα τους βρείτε στην Ελληνική ή ξένη βιβλιογραφία. Επιπλέον, ο προγραμματισμός ανά τύπο μικροεπεξεργαστή, πλαισιώνεται από εργαστηριακές ασκήσεις υποστηρίζοντας έτσι πλήρως αντίστοιχα μαθήματα. Ένα ακόμα ιδιαίτερο στοιχείο του βιβλίου είναι η ύπαρξη ενός ειδικού κεφαλαίου στο οποίο παρουσιάζεται η ανάπτυξη ενός πρωτότυπου προσομοιωτή στον οποίο ο αναγνώστης μπορεί να περιγράψει τον δικό του μικροεπεξεργαστή με τις αντίστοιχες εντολές σε συμβολική γλώσσα στα πλαίσια μιας εργασίας μαθήματος ή της διπλωματικής του κάνοντας κάποιες σημαντικές επεκτάσεις. Ένα τέτοιο κεφάλαιο δεν θα συναντήσετε πουθενά, τουλάχιστον στη σημερινή βιβλιογραφία.  Και η ύλη του βιβλίου δεν τελειώνει εδώ. Οι πολυδιαφημισμένοι μικροελεγκτές παρουσιάζονται με απλά λόγια δίνοντας μια εικόνα τόσο για τις διαφορές με τους μικροεπεξεργαστές όσο και για το ξεκίνημα της αξιοποίησής τους. Και για όσους θέλουν να μελετήσουν κάτι πιο πρωτοποριακό αλλά και σημαντικό στη σχεδίαση των σύγχρονων μικροεπεξεργαστών, έχει συμπεριληφθεί ειδικό εισαγωγικό κεφάλαιο για τον προγραμματισμό με τη γλώσσα VHDL.

  Από κάθε άποψη, πρόκειται για ένα απλογραμμένο εκπαιδευτικό βιβλίο που καλύπτει τις βασικές και τις προχωρημένες πτυχές του αντικειμένου των μικροεπεξεργαστών, ενώ ταυτόχρονα υποστηρίζει έως και τρία διαφορετικά μαθήματα με τις αντίστοιχες εργαστηριακές ασκήσεις.
Επιπλέον, υπάρχει ειδικό κεφάλαιο χρήσης λογισμικού για την ανάπτυξη των εφαρμογών του βιβλίου.
Τέλος, το DVD περιέχει των κώδικα όλων των εφαρμογών και ασκήσεων, καθώς και πρόσθετο βοηθητικό υλικό, όπως βίντεο, κλπ.


Περιεχόμενα

ΜΕΡΟΣ Ι: ΟΡΓΑΝΩΣΗ ΚΑΙ ΛΕΙΤΟΥΡΓΙΑ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΩΝ
Κεφάλαιο1: Εισαγωγή
Κεφάλαιο2: Αριθμητικά συστήματα και μετατροπές
Κεφάλαιο3: Αριθμητική μικροεπεξεργαστή
Κεφάλαιο4: Βασικά ψηφιακά κυκλώματα
Κεφάλαιο5: Εσωτερική οργάνωση του μικροεπεξεργαστή
Κεφάλαιο6: Βασικά ψηφιακά κυκλώματα μικροεπεξεργαστή
Κεφάλαιο7: Συμβολική γλώσσα (Assembly) και εκτέλεση προγράμματος
Κεφάλαιο8: Μνήμη
Κεφάλαιο9: Επικοινωνία μικροεπεξεργαστή με εξωτερικές συσκευές
 
ΜΕΡΟΣ ΙΙ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΩΝ
Κεφάλαιο10: Εισαγωγή στον προγραμματισμό του μικροεπεξεργαστή MIPS 32bit
Κεφάλαιο11: Ανάπτυξη βασικών εφαρμογών MIPS Assembly
Κεφάλαιο 12: Διαχείριση πινάκων στην MIPS Assembly
Κεφάλαιο 13: Εργαστηριακές ασκήσεις MIPS Assembly
Κεφάλαιο 14: Εισαγωγή στον προγραμματισμό Intel Assembly 16bit
Κεφάλαιο 15: Ανάπτυξη βασικών εφαρμογών Intel Assembly 16bit
Κεφάλαιο 16: Προγραμματισμός Intel Assembly WIN32/FPU
Κεφάλαιο 17: Εργαστηριακές ασκήσεις Intel Assembly
 
ΜΕΡΟΣ ΙΙΙ: ΠΡΟΣΟΜΟΙΩΤΗΣ ASSEMBLY
Κεφάλαιο 18: Σχεδίαση και ανάπτυξη προσομοιωτή
Κεφάλαιο 19: Ανάπτυξη προγραμμάτων στον προσομοιωτή
 
ΜΕΡΟΣ IV: ΜΙΚΡΟΕΛΕΓΚΤΕΣ
Κεφάλαιο 20: Γενικά χαρακτηριστικά μικροελεγκτών
Κεφάλαιο 21: Ο μικροελεγκτής AVR ATmega328
Κεφάλαιο 22: Ο μικροελεγκτής PIC16F84A
 
ΜΕΡΟΣ V: ΠΡΟΗΓΜΕΝΗ ΣΧΕΔΙΑΣΗ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ
Κεφάλαιο 23: Επαναπρογραμματιζόμενες ψηφιακές διατάξεις και η γλώσσα VHDL
Κεφάλαιο 24: Εργαστηριακές ασκήσεις VHDL
 
ΒΙΒΛΙΟΓΡΑΦΙΑ
ΠΑΡΑΡΤΗΜΑΤΑ
Α: Λογισμικό προγραμματισμού μικροεπεξεργαστών
Β: Λογισμικό προγραμματισμού μικροελεγκτών
Γ: Λογισμικό επαναπρογραμματιζόμενων ψηφιακών διατάξεων
Δ: Κώδικας προσομοιωτή Assembly
Ε: Εντολές και συναρτήσεις MIPS Assembly
ΣΤ: Βασικές εντολές Intel Assembly
Ζ: Υποδείξεις για τις εργαστηριακές ασκήσεις MIPS Assembly
Η: Κώδικας ASCII 7bit






(C) Παναγιώτης Μ. Παπάζογλου