Η οργάνωση σύνθετων δεδομένων σε ομάδες με σκοπό την απλοποίηση του χειρισμού τους, αποτελούν τις λεγόμενες δομές δεδομένων. Μια σχετικά απλή δομή δεδομένων είναι ο πίνακας. Η δημιουργία πίνακα διευκολύνει την ταυτόχρονη παρουσία στην μνήμη του υπολογιστικού συστήματος μεγάλου πλήθους δεδομένων που συνδέονται μεταξύ τους με κάποια λογική σχέση. Πίνακας είναι ένα σύνολο μεταβλητών του […]
12. Η έννοια του δείκτη
Ένα βασικό γνώρισμα της γλώσσας C είναι η χρήση δεικτών. Οι δείκτες είναι μεταβλητές που περιέχουν την διεύθυνση μιας άλλης μεταβλητής. Έχουμε δει μέχρι στιγμής ότι οι μεταβλητές που ορίζουμε περιέχουν τιμές που εκφράζουν δεδομένα κάποιου συγκεκριμένου τύπου π.χ. ακεραίου, χαρακτήρα κ.τ.λ. Οι δείκτες διαφέρουν από τις κοινές μεταβλητές στο γεγονός ότι οι τιμές των […]
13. Η έννοια της δομής
Μια δομή είναι ένας τύπος δεδομένων, οριζόμενος από το χρήστη, που ομαδοποιεί μεταβλητές διαφόρων τύπων υπό ένα ενιαίο όνομα. Χρησιμοποιείται όταν θέλουμε να αποθηκεύσουμε σχετικές πληροφορίες μαζί. Μια δομή ορίζεται με μια πρόταση struct. Για παράδειγμα, για να αναπαραστήσουμε έναν φοιτητή, θα μπορούσαμε να δημιουργήσουμε μια δομή που περιλαμβάνει σαν μέλη το όνομα, τον αριθμό […]
1. Αναλογικά και ψηφιακά ηλεκτρονικά
Τα ηλεκτρονικά κυκλώματα χωρίζονται σε δυο κατηγορίες, τα αναλογικά και ψηφιακά κυκλώματα. Στα αναλογικά κυκλώματα μια τάση παίρνει συνεχείς τιμές σε συνάρτηση του χρόνου, ενώ στα ψηφιακά κυκλώματα μια τάση παίρνει μια από τις διακριτές τιμές HIGH και LOW. Ανάλογα το σύστημα που έχουμε π.χ. σε ένα 8bit μικροελεγκτή η τάση HIGH μπορεί να είναι […]
2. Δυαδικοί κώδικες
Τα ψηφιακά συστήματα χρησιμοποιούν σήματα (τάσεις ή ρεύματα) που έχουν δυο διακριτές τιμές και ηλεκτρονικά κυκλώματα που έχουν δυο σταθερές καταστάσεις, που τις παριστάνουμε με 0 και 1. Ένας δυαδικός αριθμός με n ψηφία, μπορεί να αναπαρασταθεί από n δυαδικά υποκυκλώματα, όπου το καθένα από αυτά μπορεί να δίνει σήμα εξόδου ισοδύναμο με το 0 […]
3. Αριθμητικά συστήματα
Μια τιμή μιας αριθμητικής ποσότητας μπορεί να γραφεί σαν ένας αριθμός σε ένα αριθμητικό σύστημα ορισμένο σε συγκεκριμένη βάση. Έτσι έχουμε τα ακόλουθα αριθμητικά συστήματα: α) Το δυαδικό σύστημα με βάση το δύοβ) Το δεκαδικό σύστημα με βάση το δέκαα) Το δεκαεξαδικό σύστημα με βάση το δεκαέξι. Κάθε αριθμητικό σύστημα χρησιμοποιεί τόσα ψηφία όσα και […]
4. Πρόσθεση και αφαίρεση δυαδικών αριθμών
Μη προσημασμένοι αριθμοί Μη προσημασμένοι αριθμοί, είναι εκείνοι οι αριθμοί, στους οποίους δεν έχουμε ορίσει πρόσημο. Η δυαδική πρόσθεση μη προσημασμένων αριθμών, γίνεται με τον ίδιο τρόπο με την δεκαδική πρόσθεση, με τη διαφορά ότι το κάθε ψηφίο μπορεί να είναι 0 ή 1. Η πρόσθεση δυο αριθμών ενός bit ενέχει τέσσερις δυνατούς συνδυασμούς, όπως […]
5. Η άλγεβρα Boole
Η άλγεβρα Boole, σαν μαθηματικό σύστημα, ορίζεται πάνω σε ένα σύνολο δυο στοιχείων B={0, 1} στο οποίο έχουμε ορίσει κανόνες για δυο δυαδικούς τελεστές + και ‧ ακριβώς όπως φαίνεται στους παρακάτω πίνακες. Αυτοί οι κανόνες για τους τελεστές + και ‧ είναι οι ίδιοι με τις λογικές πράξεις AND (KAI) και OR (‘Η) αντίστοιχα, […]
6. Συναρτήσεις Boole
Μια δυαδική μεταβλητή μπορεί να πάρει την τιμή 0 ή 1. Μια συνάρτηση Boole μπορεί να γραφεί σαν μια αλγεβρική έκφραση που σχηματίζεται από δυαδικές μεταβλητές, τους δυο δυαδικούς τελεστές OR και AND τον τελεστή ΝΟΤ και παρενθέσεις. Για μια δεδομένη τιμή των μεταβλητών, η συνάρτηση μπορεί να είναι είτε 0 είτε 1. Κάθε συνάρτηση […]
7. Ολοκληρωμένα κυκλώματα
Τα ψηφιακά κυκλώματα κατασκευάζονται με ολοκληρωμένα κυκλώματα. Ένα ολοκληρωμένο κύκλωμα (συντομογραφία IC) αποτελείται από μια φέτα ημιαγωγού (chip) πάνω στην οποία υπάρχουν ηλεκτρονικά στοιχεία για τις ψηφιακές πύλες. Σε ένα σύνθετο ψηφιακό IC, οι διάφορες πύλες συνδέονται μέσα στο chip για να σχηματίσουν το απαιτούμενο κύκλωμα. Το chip τοποθετείται σε ένα κεραμικό ή πλαστικό περίβλημα […]
8. Λογικές πύλες AND, OR και NOT
Οι λογικές πύλες είναι ψηφιακά ηλεκτρονικά κυκλώματα, τα οποία έχουν μια έξοδο καθώς και από δυο ή περισσότερες εισόδους. Η έξοδος μιας πύλης γίνεται LOW ή HIGH ανάλογα τις τιμές LOW ή HIGH που μπορούν να έχουν οι είσοδοι της. Η λογική πύλη AND η οποία περιγράφεται από την έκφραση Boole Υ = Α‧Β δίνει […]
9. Λογικές πύλες NAND, NOR, XOR και NXOR
Σε αυτό το άρθρο θα μελετήσουμε τις υπόλοιπες λογικές πύλες που χρησιμοποιούνται στα ψηφιακά λογικά κυκλώματα. Πρώτα θα δούμε τις NAND και NOR και στη συνέχεια τις XOR και NXOR. Η πύλη NAND με δυο εισόδους x και y δίνει την έξοδο Υ = (x ‧ y)’ = x’ + y’ Δηλαδή η έξοδος έχει […]
10. Πύλες Schmitt Trigger και Open Collector
Λογικές πύλες τύπου Schmitt Trigger Σε αυτό το άρθρο θα μάθουμε τι είναι το Schmitt Trigger και πως λειτουργεί. Το Schmitt Trigger είναι ένας τύπος κυκλωμάτων στις εισόδους των ψηφιακών πυλών εκείνων που υποστηρίζουν την δυνατότητα Schmitt Trigger. Αυτοί οι τύποι λογικών πυλών λειτουργούν με τέτοιο τρόπο ώστε να παρέχουν υστέρηση στο σήμα εισόδου ή […]
11. Απλοποίηση με χάρτες Karnaugh
Η μέθοδος απλοποίησης λογικών συναρτήσεων με χρήση χαρτών Karnaugh είναι μια γραφική μέθοδος που βασίζεται σε μια διαφορετική αναπαράσταση των Πινάκων Αληθείας των λογικών συναρτήσεων και χρησιμοποιείται με ευκολία για απλοποίηση λογικών συναρτήσεων δυο, τριών και τεσσάρων μεταβλητών. Ελαχιστόρος μιας λογικής συνάρτησης Boole n μεταβλητών, ονομάζεται κάθε γινόμενο όλων των μεταβλητών της συνάρτησης, όπου κάθε […]
Προγραμματίζοντας τον AVR με το Microchip Studio
Μπορείτε να αναπτύσσετε κώδικα και να προγραμματίζετε τους μικροελεγκτές AVR μέσα από το περιβάλλον ανάπτυξης IDE που μπορείτε να το βρείτε με το όνομα Microchip Studio. Εγκατάσταση του Microchip Studio Για να εγκαταστήσετε το IDE για τους μικροελεγκτές AVR πληκτρολογήστε στο πεδίο αναζήτησης της σελίδας Google τις λέξεις “Microchip Studio avr” και στις επιλογές που […]
12. Πολυπλέκτες
Ο πολυπλέκτης (multiplexer –MUX) είναι ένα συνδυαστικό κύκλωμα που επιλέγει δυαδική πληροφορία μιας από πολλές γραμμές εισόδου και την κατευθύνει σε μια μοναδική γραμμή εξόδου. Η επιλογή μιας συγκεκριμένης γραμμής εισόδου ελέγχεται μέσω γραμμών επιλογής. Για κάθε συνδυασμό τιμών στις γραμμές επιλογής επιλέγεται μια και μοναδική γραμμή εισόδου. Το πλήθος των γραμμών εισόδου που μπορούν […]
13. Κωδικοποιητές
Ο κωδικοποιητής (Encoder) από m σε n, που γράφουμε mXn, είναι ένα συνδιαστικό κύκλωμα, με m γραμμές εισόδου και n γραμμές εξόδου (m≤2n) που έχει σαν λειτουργία, να παρέχει στην έξοδο ένα n-bit κωδικό, εκείνο που αντιστοιχεί στην ενεργοποιημένη είσοδο του κυκλώματος. Θα πρέπει να σημειωθεί ότι μόνο μια είσοδος επιτρέπεται να είναι ενεργοποιημένη στο […]
14. Αποπολυπλέκτες και αποκωδικοποιητές
Τα συνδυαστικά κυκλώματα που υλοποιούν τους αποπολυπλέκτες και τους αποκωδικοποιητές περιγράφονται μαζί σε αυτό το άρθρο, για το λόγο ότι τα ολοκληρωμένα κυκλώματα που τα υλοποιούν μπορούν να λειτουργήσουν στην ίδια μονάδα είτε σε λειτουργία αποπολυπλέκτη είτε σε λειτουργία αποκωδικοποιητή ανάλογα πως θα διασυνδεθεί. Αποπολυπλέκτες Ο αποπολυπλέκτης demux 1×2n είναι ένα συνδυαστικό κύκλωμα το οποίο […]
15. Ακολουθιακά κυκλώματα
Όλες οι ηλεκτρονικές ψηφιακές συσκευές, όπως τα κινητά τηλέφωνα, οι δέκτες πλοήγησης, οι ψηφιακές φωτογραφικές μηχανές, οι προσωπικοί υπολογιστές, έχουν την δυνατότητα να στέλνουν, να λαμβάνουν, να αποθηκεύουν, να ανακτούν και να επεξεργάζονται πληροφορία, που τους παρουσιάζεται σε δυαδική μορφή. Αυτά τα ψηφιακά συστήματα, βασίζονται σε ηλεκτρονικές δομές, που έχουν τη δυνατότητα να αποθηκεύουν πληροφορία, […]
17. Μανδαλωτές ως στοιχεία μνήμης
Ένα στοιχείο μνήμης είναι ένα ψηφιακό κύκλωμα που βρίσκεται σε συγκεκριμένη κατάσταση στο λογικό 0 ή 1, η οποία διατηρείται μέχρι να αλλάξει ένα σήμα εισόδου του. Οι βασικές διαφορές μεταξύ των διαφόρων τύπων στοιχείων μνήμης, αφορούν τον αριθμό εισόδων που διαθέτουν αυτά και τον τρόπο με τον οποίο οι είσοδοι των στοιχείων μνήμης επηρεάζουν […]