Συλλογή & Επεξεργασία Δεδομένων. Προγραμματίζοντας τον Arduino Μέρος Ι: Μεταβλητές, Εντολές Εισόδου & Εξόδου. Ολοκληρωμένο Περιβάλλον Ανάπτυξης (IDE)

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "Συλλογή & Επεξεργασία Δεδομένων. Προγραμματίζοντας τον Arduino Μέρος Ι: Μεταβλητές, Εντολές Εισόδου & Εξόδου. Ολοκληρωμένο Περιβάλλον Ανάπτυξης (IDE)"

Transcript

1 Βασικές Έννοιες Συλλογή & Επεξεργασία Δεδομένων Προγραμματίζοντας τον Arduino Μέρος Ι: Μεταβλητές, Εντολές Εισόδου & Εξόδου. Πρόγραμμα Ολοκληρωμένο Περιβάλλον Ανάπτυξης (IDE) Πηγαίος Κώδικας (source code) Αντικείμενο Πρόγραμμα (object code) Έννοια της Μεταβλητής Εντολές Εισόδου (analogread) Εντολές Εξόδου (digitalwrite, AnalogWrite) 1

2 I.1 ΣΚΟΠΟΣ Ένα σύστημα μέτρησης που χρησιμοποιεί αισθητήρες, για να μετράει διάφορες μεταβλητές στο φυσικό περιβάλλον, όπως θερμοκρασία, θέση στο χώρο, επιτάχυνση, και άλλες ακόμα μεταβλητές, απαραίτητα περιλαμβάνει έναν μικροελεγκτή. Συνδέουμε τους αισθητήρες στις αναλογικές θύρες του μικροελεγκτή, ώστε μέσα από αυτές, να διαβάζουμε τις μετρήσεις, από τους αισθητήρες (Εικόνα 1). Όμως, μέσα από τις αναλογικές και ψηφιακές θύρες του μικροελεγκτή, όχι μόνον μπορούμε να παίρνουμε δεδομένα από αισθητήρες, αλλά και να δημιουργούμε τάσεις που ξεκινούν ή σταματούν κινητήρες και ρυθμίζουν τη φορά και η ταχύτητα περιστροφής τους. Η λειτουργία του μικροελεγκτή, σ ένα σύστημα μέτρησης, να παίρνει δηλαδή τις μετρήσεις, από τους αισθητήρες του συστήματος, να τις αναλύει και να ρυθμίζει τη λειτουργία εξωτερικών συσκευών, όπως για παράδειγμα, κινητήρων και καμερών, δεν είναι δομημένη / ενσωματωμένη στα κυκλώματα του μικροελεγκτή, από τη κατασκευή του, αλλά προσδιορίζεται από ένα πρόγραμμα που εκτελείται από τον μικροεπεξεργαστή του μικροελεγκτή (Εικόνα 1) και καθορίζει κάθε λειτουργία του μιλροελεγκτή, στο σύστημα μέτρησης. Έτσι, κάθε σύστημα μέτρησης με αισθητήρες, αποτελείται από ένα αναλογικό κύκλωμα που περιλαμβάνει τους αισθητήρες και άλλες αναλογικές συσκευές, όπως κινητήρες και κάμερες και το ψηφιακό κύκλωμα που είναι ο μικροελεγκτής. Η λειτουργία του ψηφιακού κυκλώματος, δηλαδή του μικροελεγκτή στο σύστημα, καθορίζεται ολοκληρωτικά, από ένα πρόγραμμα που εκτελείται στη μονάδα επεξεργασίας του μικροελεγκτή, δηλαδή στο μικροεπεξεργαστή (Εικόνα 1). Επειδή το πρόγραμμα σ ένα συστήματος μέτρησης, είναι αυτό που ρυθμίζει όλη τη λειτουργία του συστήματος μέτρησης και χωρίς αυτό, το κύκλωμα από μόνο του, δεν θα είχε καμία λειτουργία, σ αυτή την ενότητα, εξετάζουμε τη μορφή του προγράμματος, σ ένα σύστημα μέτρησης. Ποιες δηλαδή είναι οι βασικές εντολές ενός προγράμματος που γράφουμε, για ένα σύστημα μέτρησης, αλλά που μπορεί να γράψουμε και για άλλες εφαρμογές. Ποια είναι η μορφή και η λειτουργία στο πρόγραμμα, αυτών των βασικών εντολών. I.2 Εισαγωγή Οι Γλώσσες Προγραμματισμού του Arduino Ο Arduino προγραμματίζεται στη C. Η βασική γλώσσα προγραμματισμού του Arduino, είναι η C. Αλλά μπορούμε να προγραμματίζουμε τον Arduino σε πολλές άλλες γλώσσες προγραμματισμού, κυρίως, στο LabVIEW, στη Simulink, τη Matlab και τη Processing. Το LabVIEW και η Simulink είναι πιο εξελιγμένες γλώσσες βασίζονται στον γραφικό προγραμματισμό, από τις άλλες. Σ αυτή την ενότητα, θα δούμε τις βασικές εντολές της C που χρησιμοποιούμε, για τον Arduino. Πριν όμως, προχωρήσουμε να δούμε τις εντολές μίας γλώσσας προγραμματισμού, χρειάζεται να καταλάβουμε την έννοια / την ιδέα της γλώσσας προγραμματισμού και του προγράμματος που γράφουμε σε μία γλώσσα προγραμματισμού, για μία ε 2

3 Εικόνα 1: Μέσα από τις αναλογικές και ψηφιακές θύρες του μικροελεγκτή, όχι μόνον μπορούμε να παίρνουμε δεδομένα από αισθητήρες (TMP 36), αλλά και να δημιουργούμε τάσεις που ρυθμίζουν τη λειτουργία συσκευών, όπως κινητήρες. Όλες αυτές οι λειτουργίες καθορίζονται από ένα πρόγραμμα. 3

4 φαρμογή. Τι είναι λοιπόν μία γλώσσα προγραμματισμού και τι είναι ένα πρόγραμμα που γράφουμε, σ αυτή? I.3 Τι Είναι μία Γλώσσα Προγραμματισμού? Μία φυσική γλώσσα, όπως τα Ελληνικά, τα Λατινικά και τα Αγγλικά, αποτελούνται από ένα αλφάβητο. Συνδυάζοντας τα γράμματα αυτής της αλφαβήτου, τα Α, Ο, Κ, Υ, και τα άλλα γράμματα, δημιουργούμε συλλαβές και λέξεις, για να ονομάζουμε έννοιες και αντικείμενα. Συνδυάζοντας λέξεις, δημιουργούμε ακόμα συνθετότερες γλωσσικές οντότητες, τις προτάσεις, για να περιγράφουμε ιδέες, γεγονότα και καταστάσεις. Μία γλώσσα προγραμματισμού, όπως κάθε φυσική γλώσσα, αποτελείται από ένα αλφάβητο που για όλες τις γλώσσες κειμένου τη C, C++, Java είναι το Λατινικό αλφάβητο. Θα δούμε πως στις πιο εξελιγμένες γλώσσες προγραμματισμού, στο LabVIEW και τη Simulink, η βασική μονάδα δεν είναι τα γράμματα ενός αλφάβητου, αλλά το μπλοκ, δηλαδή, η συνάρτηση. Όμως, στη C που προς το παρών, χρησιμοποιούμε, για να προγραμματίζουμε τον Arduino, η βασική δομική μονάδα, είναι τα γράμματα του Λατινικού αλφάβητου. Όπως στις φυσικές γλώσσες, έτσι και σε μία γλώσσα προγραμματισμού, συνδυάζουμε τα γράμματα του αλφαβήτου της, για να δημιουργούμε λέξεις και προτάσεις, σ αυτή τη γλώσσα. Όμως σε αντίθεση με τις λέξεις και τις προτάσεις μίας φυσικής γλώσσας που περιγράφουν γεγονότα, ιδέες και έννοιες, για την επικοινωνία με άλλους, οι προτάσεις σε μία γλώσσα προγραμματισμού, χρησιμεύουν για την επικοινωνία με τον υπολογιστή και αποκλειστικά, προσδιορίζουν στον υπολογιστή, λειτουργίες που πρέπει να εκτελέσει. Για παράδειγμα, μία πολύ συνηθισμένη πρόταση σε μία γλώσσα προγραμματισμού, μπορεί να προσδιορίζει στον υπολογιστή ή πιο συγκεκριμένα, στο μικροεπεξεργαστή ενός υπολογιστή ή μικροελεγκτή, να διαβάσει δεδομένα, από τη οθόνη του υπολογιστή ή από έναν αισθητήρα ή κάμερα. Άλλες προτάσεις, προσδιορίζουν στο μικροεπεξεργαστή πως θα αναλύσει αυτά τα δεδομένα, δηλαδή τι υπολογισμούς πρέπει να κάνει, σ αυτά τα δεδομένα. Επειδή κάθε πρόταση σε μία γλώσσα προγραμματισμού ορίζει μία συγκεκριμένη λειτουργία, στο μικροεπεξεργαστή, οι προτάσεις μίας γλώσσας προγραμματισμού ο- νομάζονται εντολές. Σε αντιδιαστολή με τις προτάσεις μίας φυσικής γλώσσας που περιγράφουν ένα άπειρο πλήθος εννοιών και ιδεών, οι εντολές, δηλαδή οι προτάσεις μίας γλώσσας προγραμματισμού, έχουν πολύ πιο περιορισμένη μορφή και σκοπό, προσδιορίζοντας βασικές λειτουργίες στο μικροεπεξεργαστή, από ένα περιορισμένο σύνολο δυνατών λειτουργιών. Επειδή οι βασικές λειτουργίες ενός μικροεπεξεργαστή δεν είναι άπειρες, αλλά περιορίζονται σ ένα σύνολο δυνατών λειτουργιών, έτσι και οι εντολές μίας γλώσσας 4

5 προγραμματισμού που προσδιορίζουν αυτές τις λειτουργίες, στον μικροεπεξεργαστή, είναι περιορισμένες στη μορφή και στο πλήθος τους. Κάθε γλώσσα προγραμματισμού δηλαδή, έχει ένα μικρό αριθμό εντολών πέντε ή έξι βασικές εντολές που χωρίζονται σε τρείς γενικές κατηγορίες: Εντολές Εισόδου Δεδομένων Εντολές Επεξεργασίας Δεδομένων Εντολές Εξόδου Κάθε κατηγορία περιλαμβάνει λίγες εντολές που καθεμία χρησιμεύει, για να προσδιορίζει στον μικροεπεξεργαστή, μία αντίστοιχη λειτουργία, στη συγκεκριμένη κατηγορία είσοδο, επεξεργασία ή έξοδο. Επιγραμματικά Μία γλώσσα προγραμματισμού είναι ένα σύνολο από λίγες προτάσεις, περίπου, πέντε ή έξι προτάσεις που ονομάζονται εντολές, γιατί καθεμία από αυτές προσδιορίζει στο μικροεπεξεργαστή, να εκτελέσει μία βασική λειτουργία, για παράδειγμα να διαβάσει ένα ή περισσότερα δεδομένα ή / και να εκτελέσει μία απλή αριθμητική ή λογική πράξη, σ αυτά τα δεδομένα. I.4 Η Έννοια του Προγράμματος: Τι Είναι ένα Πρόγραμμα? Η ιδέα του προγράμματος ανήκει τόσο στον Alan Turing, όσο και στον Von Neumann. Είναι μία από τις πολλές μεγάλες ιδέες στην επινόηση και εξέλιξη των υπολογιστών, από τον υπολογιστή των Αντικυθήρων και τη Διαφορική μηχανή του Babbage, μέχρι τους πολυπύρηνους επεξεργαστές της σημερινής εποχής και τους κβαντικούς υπολογιστές και το Βιομηχανικό Διαδίκτυο, του μέλλοντος. O Von Neumann ήταν Ούγγρος στη καταγωγή και ένας χαρισματικός μαθηματικός που σε ηλικία 23 χρόνων, έγινε ο νεότερος επίκουρος καθηγητής, στο Πανεπιστήμιο του Βερολίνου, το Το 1930 μετανάστευσε στην Αμερική, έγινε καθηγητής στο Princeton, στο τμήμα που δίδασκαν ο Einstein και ο Gödel. Συμμετείχε στο διάσημο Manhattan Project, στο πρόγραμμα δηλαδή, για την ανακάλυψη της ατομικής βόμβας και μετά το τέλος του πολέμου, συνεργάστηκε στη σχεδίαση και κατασκευή του πρώτου προγραμματιζόμενου ηλεκτρονικού υπολογιστή, του EDVAC, στο τμήμα Ηλεκτρολόγων Μηχανικών (Moore School of Electrical Engineering), στο Πανεπιστήμιο της Πεννσυλβάνιας. Ο Von Neumann, για να κρατήσει τη σχεδίαση εκείνου του υπολογιστή σχετικά απλή, έθεσε τον εξής περιορισμό: τα ηλεκτρονικά κυκλώματα εκείνου του υπολογιστή, 5

6 του EDVAC, θα μπορούσαν να εκτελούν μόνον τις βασικές πράξεις της αριθμητικής πρόσθεση, αφαίρεση, πολλαπλασιασμό και διαίρεσης και λογικές συγκρίσεις, για ισότητα ή ανισότητα. Όμως, ο υπολογιστής θα έπρεπε να μπορεί να εκτελεί όχι μόνον αυτές τις βασικές πράξεις που ήταν ενσωματωμένες στα κυκλώματα του, αλλά πολύ σύνθετους υπολογισμούς. Η επιδίωξη για εκείνο τον υπολογιστή ήταν να μπορεί να λύνει αριθμητικά, τις Μερικές Διαφορικές Εξισώσεις της Ατομικής Φυσικής που δεν μπορούσαν να λυθούν, αναλυτικά. Γι αυτό, ο Von Neumann χρησιμοποίησε την ιδέα του προγράμματος που νωρίτερα, είχε επινοήσει ο Turing. Αφού τα κυκλώματα του EDVAC δεν μπορούσαν τίποτα περισσότερο από απλές αλγεβρικές πράξεις και λογικές συγκρίσεις, ο Von Neumann πρόσθεσε σ εκείνο τον υπολογιστή, μνήμη, τη δυνατότητα δηλαδή να αποθηκεύει δεδομένα και τη Μονάδα Επεξεργασίας (Central Processing Unit). Στη μνήμη του υπολογιστή, θα αποθηκεύονταν μία λίστα με εντολές, στoν υπολογιστή, πιο συγκεκριμένα στην Αριθμητική και Λογική Μονάδα (ALU) του υπολογιστή (Εικόνα 2). Καθεμία από αυτές τις εντολές, θα προσδιόριζε στην Αριθμητική και Λογική Μονάδα (ALU), στα Αριθμητικά δηλαδή κυκλώματα του υπολογιστή, μία απλή αριθμητική πράξη. Η Μονάδα Ε- πεξεργασίας (CPU) θα διάβαζε από τη μνήμη, τη λίστα με τις εντολές και θα τις εκτελούσε τη μία μετά την άλλη, στη σειρά που ήταν γραμμένες. Η ιδέα ήταν πως αν και καθεμία από αυτές τις εντολές, ήταν / προσδιόριζε μία απλή αλγεβρική πράξη, αν η Μονάδα Επεξεργασίας (CPU) τις εκτελούσε όλες, τη μία μετά την άλλη, τότε θα είχε καταφέρει να εκτελέσει ένα πολύ σύνθετο υπολογισμό. Καθεμία από τις εντολές στη λίστα, ήταν πολύ απλή, όμως όλες μαζί αποτελούσαν / δημιουργούσαν ένα πολύ σύνθετο υπολογισμό. Αυτή η λίστα με εντολές που η Μονάδα Επεξεργασίας (CPU) του EDVAC, θα εκτελούσε τη μία μετά την άλλη, ονομάστηκε πρόγραμμα. Η κατασκευή του EDVAC που ήταν ο πρώτος προγραμματιζόμενος ηλεκτρο- Εικόνα 2: Σχηματική παράσταση της αρχιτεκτονικής Von Neumann, για τον EDVAC, το πρώτο προγραμματιζόμενο υπολογιστή που όμως, χρησιμοποιείται μέχρι σήμερα, στους σύγχρονους υπολογιστές. 6

7 νικός υπολογιστής, ολοκληρώθηκε το Από εκείνη την εποχή, μέχρι σήμερα, οι υπολογιστές είναι χιλιάδες φορές ταχύτεροι, μικρότεροι και καταναλώνουν χιλιάδες φορές λιγότερη ενέργεια, από τον EDVAC που χρειάζονταν να καταναλώνει 150 kw, για τη λειτουργία του! Η μορφή του προγράμματος έχει εξελιχθεί και αυτή, από την πολύ συμβολική μαθηματική μορφή των προγραμμάτων, για τον EDVAC, στη πολύ πιο κατανοητή μορφή των προγραμμάτων, στις σύγχρονες γλώσσες προγραμματισμού (C, C++, Java, Matlab, LabVIEW). Όμως, ακόμα και σήμερα, οι υπολογιστές διατηρούν τις αρχές και τη δομή της αρχιτεκτονικής Von Neumann. Αν και τα ολοκληρωμένα έχουν αντικαταστήσει τις λυχνίες κενού και τα τρανζίστορ των πρώτων υπολογιστών, οι σημερινοί υπολογιστές, τόσο οι υπερυπολογιστές με τους χιλιάδες παράλληλους επεξεργαστές, όσο και τα απλά laptops και tablets, όπως ο EDVAC, αποτελούνται από την Αριθμητική και Λογική Μονάδα (ALU), τη Μονάδα Επεξεργασίας (CPU) και τη Μνήμη (RAM και ROM) και η λειτουργία τους καθορίζεται από ένα πρόγραμμα μία λίστα εντολών που αποθηκεύεται στη μνήμη και που οι εντολές του μεταφέρονται από τη μνήμη στη Μονάδα Επεξεργασίας (CPU) και εκτελούνται, η μία μετά την άλλη, ο- ρίζοντας και οδηγώντας τη Μονάδα Επεξεργασίας (CPU) να εκτελεί ένα σύνθετο υπολογισμό. Επιγραμματικά Ένα πρόγραμμα είναι ένας συνδυασμός εντολών που προσδιορίζουν αριθμητικές και λογικές λειτουργίες στο μικροεπεξεργαστή που υπάρχει στον Arduino ή σ έναν υπολογιστή. Αυτές οι εντολές θα πρέπει να είναι κατανοητές, τόσο σ εμάς που τις γράφουμε, όσο και στο μικροεπεξεργαστή που θα πρέπει να τις εκτελέσει. I.5 Η Έννοια του Ολοκληρωμένου Περιβάλλοντος Ανάπτυξης (IDE) Για να γράφουμε προγράμματα, για έναν υπολογιστή ή μικροελεγκτή, όπως ο Arduino, χρησιμοποιούμε ένα περιβάλλον που ονομάζεται Ολοκληρωμένο Περιβάλλον Ανάπτυξης (Integrated Development Environment). Ανάμεσα σε άλλες λειτουργίες, το Ολοκληρωμένο Περιβάλλον Ανάπτυξης λειτουργεί σαν συντάκτης, επιτρέποντας μας, να γράφουμε τις εντολές ενός προγράμματος, όπως ανάλογα, το Word μας επιτρέπει να γράφουμε και να μορφοποιούμε κείμενο, σε μία φυσική γλώσσα. Κάθε γλώσσα έχει το δικό της ξεχωριστό Περιβάλλον Ανάπτυξης που πρέπει να χρησιμοποιούμε, για να γράφουμε προγράμματα, σ αυτή τη γλώσσα. Για παράδειγμα, για να γράφουμε προγράμματα για τον Arduino, χρειάζεται να χρησιμοποιούμε το ειδικό Περιβάλλον Ανάπτυξης, για τη γλώσσα του Arduino που είναι η C. 7

8 Εικόνα 3: Από το Περιβάλλον Ανάπτυξης, στη πλακέτα. Αφού γράψουμε ένα πρόγραμμα στο Περιβάλλον Ανάπτυξης Προγράμματος (IDE) του Arduino, πρώτα, μεταγλωττίζουμε αυτό το πρόγραμμα και μετά φορτώνουμε αυτό το πρόγραμμα στη Flash Memory, στο μικροπεξεργαστή του Arduino. To πρόγραμμα που αποθηκεύεται στη Flash Memory, εκτελείται στη μονάδα επεξεργασίας (CPU) του μικροεπεξεργαστή στον Arduino και κατά την εκτέλεση του στη CPU, διαβάζει δεδομένα ή δημιουργεί τάσεις στις αναλογικές και ψηφιακές θύρες του Arduino. 8

9 Επειδή οι εντολές μίας γλώσσας προγραμματισμού εξυπηρετούν την επικοινωνία με τον μικροεπεξεργαστή, θα πρέπει να είναι κατανοητές τόσο σ εμάς, όσο και στον μικροεπεξεργαστή. Ο προγραμματισμός, γράφει ο Langbridge είναι «η τέχνη να γράφουμε κάτι που να είναι εύκολα κατανοητό, σ εμάς, αλλά ταυτόχρονα, να μπορεί να μετατρέπεται σε μία μορφή που να είναι κατανοητή, από το μικροεπεξεργαστή. Γιατί σε αντίθεση με την άποψη που επικρατεί, οι μικροεπεξεργαστές δεν είναι καθόλου έξυπνοι και χρειάζεται να τους υποδεικνύουμε τι πρέπει να κάνουν, με ακριβείς εντολές» [Langbridge, ]. Γι αυτό και οι εντολές στις σύγχρονες γλώσσες προγραμματισμού, όπως είναι οι C, C++, Java, Matlab και LabVIEW, μοιάζουν / είναι στη μορφή των προτάσεων της Αγγλικής γλώσσας. Όμως μετά, το πρόγραμμα που γράφουμε σ αυτή τη γλώσσα προγραμματισμού, χρειάζεται να μεταγλωττιστεί, να μετατραπεί δηλαδή σε εντολές Assembly που ο μικροεπεξεργαστής στον Arduino ή σ έναν υπολογιστή, μπορεί να αναγνωρίζει και α- πευθείας, να εκτελεί. Αυτή η λειτουργία, η μεταγλώττιση δηλαδή ενός προγράμματος από μία γλώσσα υψηλού επιπέδου, όπως C σε εντολές Assembly που ο μικροεπεξεργαστής μπορεί να αναγνωρίζει, γίνεται αυτόματα, από το Περιβάλλον Ανάπτυξης (Εικόνα 3), πατώντας την εντολή Compile, στη γραμμή εντολών. Το πρόγραμμα που αρχικά, γράφουμε σε μία γλώσσα υψηλού επιπέδου (C, C++, Java, Matlab ή LabVIEW) ονομάζεται πηγαίο πρόγραμμα (source code). Το μεταγλωττισμένο πρόγραμμα στην Assembly που μπορεί να αναγνωρίζει και να εκτελεί ο μικροεπεξεργαστής, ονομάζεται αντικείμενο πρόγραμμα (object code) (Εικόνα 3). Αφού μεταγλωττίσουμε ένα πρόγραμμα, τότε το επόμενο βήμα είναι να το φορτώσουμε το αντικείμενο πρόγραμμα (object code) αυτού του προγράμματος, στο μικροεπεξεργαστή στην μνήμη ROM του μικροεπεξεργαστή και να ξεκινήσουμε την εκτέλεσή του. I.6 Σύγχρονη Μορφή του Προγραμματισμού Ο προγραμματισμός που θα εξετάσουμε στο μάθημα, είναι η πιο σύγχρονη μορφή προγραμματισμού, όπου το πρόγραμμα έχει φυσική λειτουργία. Δεν περιορίζεται δηλαδή, να διαβάζει δεδομένα από την οθόνη του υπολογιστή ή από ένα αρχείο, στο σκληρό δίσκο, αλλά η λειτουργία του επεκτείνεται σε συσκευές έξω από τον υπολογιστή, διαβάζοντας δεδομένα από αισθητήρες, μικρόφωνο ή κάμερα και ρυθμίζοντας τη λειτουργία εξωτερικών συσκευών, όπως κάμερες και κινητήρες. Αυτή είναι η μορφή του προγραμματισμού που χρησιμοποιούμε, για να δημιουργούμε / να προγραμματίζουμε σχεδόν κάθε σύγχρονο σύστημα: αυτοματισμούς, συστήματα μετρήσεων, ενσωματωμένα συστήματα, συστήματα ελέγχου και ρομποτικά συστήματα. 9

10 Ακόμα, αυτός ο προγραμματισμός είναι η βάση, για τη νέα μεγάλη ιδέα των υπολογιστών που είναι το Βιομηχανικό Διαδίκτυο, ένα παγκόσμιο δίκτυο, όπου δεν θα συνδέονται μόνον υπολογιστές, αλλά κάθε συσκευή, αναλογική ή ψηφιακή, όπως κάμερες, ηλεκτρικές συσκευές, φωτιστικά, βιομηχανικοί κινητήρες, αυτοκίνητα, ρομποτικά συστήματα και μέσα από αυτό δίκτυο, θα έχουμε πρόσβαση και θα μπορούμε να λειτουργούμε και να ελέγχουμε τη λειτουργία αυτών των συσκευών. Στις παρακάτω ενότητες, είναι μία περιγραφή των βασικών εντολών της C για τον Arduino, ξεκινώντας από τη βασική έννοια της μεταβλητής και προχωρώντας, στη μορφή ενός προγράμματος, για τον Arduino και τις εντολές εισόδου και εξόδου των προγραμμάτων, για τον Arduino. I.7 Η Έννοια της Μεταβλητής Η βασική μονάδα ενός προγράμματος, είναι η εντολή. Κάθε πρόγραμμα αποτελείται / είναι ένας συνδυασμός εντολών και κάθε εντολή προσδιορίζει μία λειτουργία, στο μικροεπεξεργαστή. Κατά κανόνα, αυτή η λειτουργία αφορά / χρησιμοποιεί δεδομένα. Για παράδειγμα, συνήθως, μία εντολή εισόδου ορίζει στο μικροεπεξεργαστή να διαβάσει τη μέτρηση από έναν αισθητήρα, ενώ οι εντολές επεξεργασίας ορίζουν στο μικροεπεξεργαστή, να εκτελέσει διάφορες αριθμητικές πράξεις ή λογικές συγκρίσεις σε δεδομένα. Σχεδόν πάντα, τα δεδομένα είναι το αντικείμενο που επάνω του εκτελείται, η λειτουργία κάθε εντολής. Στη βάση της αρχιτεκτονικής Von Neumann που εξακολουθεί να αποτελεί την αρχιτεκτονική των σύγχρονων υπολογιστών και του Arduino (Εικόνα 4), κάθε δεδομένο που πρόκειται να χρησιμοποιηθεί, σ έναν υπολογισμό, από ένα πρόγραμμα, αποθηκεύεται στη μνήμη RAM του υπολογιστή ή του μικροελεγκτή. Έτσι, όταν ο μικροεπεξεργαστής διαβάζει τη μέτρηση από έναν αισθητήρα ή την εικόνα από μία κάμερα, εκτελώντας μία αντίστοιχη εντολή, αυτόματα, αποθηκεύει αυτή το δεδομένο μέτρηση ή εικόνα στη μνήμη RAM του μικροελεγκτή. Όταν αυτή η πληροφορία μέτρηση, εικόνα, ήχος ή ότι άλλο χρειάζεται να χρησιμοποιηθεί σ ένα υπολογισμό, ο μικροεπεξεργαστής τη προσπελαύνει στη μνήμη και από εκεί, τη μεταφέρει στην Αριθμητική και Λογική Μονάδα (ALU), για να χρησιμοποιηθεί στο συγκεκριμένο υπολογισμό. Το αποτέλεσμα του υπολογισμού αποθηκεύεται και αυτό, στη μνήμη. Έτσι, κάθε εντολή ενός προγράμματος, κυρίως, κάθε εντολή επεξεργασίας δεδομένων σ ένα πρόγραμμα, περιλαμβάνει ένα κύκλο: πρόσβαση σε δεδομένα στη μνήμη RAM του μικροελεγκτή μεταφορά αυτών των δεδομένων στην Αριθμητική και Λογική Μονάδα (ALU) εκτέλεση του υπολογισμού αποθήκευση του αποτελέσματος στη μνήμη RAM. Σ αυτό το κύκλο εκτέλεσης, είναι η χρησιμότητα των μεταβλητών, καθώς η αποθήκευση ενός δεδομένου στη μνήμη, αλλά και η πρόσβαση σ αυτό, προκειμένου να χρησιμοποιηθεί σ ένα υπολογισμό, γίνεται μέσα από μία μεταβλητή. 10

11 Εικόνα 4: Αν μπορούσαμε να δούμε στο εσωτερικό του μικροεπεξεργαστή (ATmega 328), στον Arduino, θα βλέπαμε πως αυτός ο μικροεπεξεργαστής, έχει την αρχιτεκτονική von Neumann, αποτελείται δηλαδή από τη Μονάδα Ελέγχου (CU), την Αριθμητική και Λογική Μονάδα (ALU), τη Flash Memory, όπου αποθηκεύεται το πρόγραμμα που φορτώνουμε στον Arduino και τη μνήμη RAM, όπου αποθηκεύονται τα δεδομένα του προγράμματος. 11

12 Εικόνα 5: Οι πρώτες εντολές σ ένα πρόγραμμα, για τον Arduino, είναι οι δηλώσεις των σταθερών και των μεταβλητών που θα χρησιμοποιήσουμε, στο πρόγραμμα. Η μεταβλητή είναι ένα όνομα που χρησιμοποιούμε, για να ονομάζουμε μία θέση στη μνήμη RAM του μικροελεγκτή. Χρησιμοποιούμε το όνομα μίας μεταβλητής, για να αποθηκεύουμε ένα δεδομένο, σε μία θέση μνήμης. Χρησιμοποιούμε πάλι το όνομα της μεταβλητής, για να προσπελαύνουμε το δεδομένο ή πληροφορία, σ αυτή τη θέση μνήμης και να το μεταφέρουμε στην Αριθμητική και Λογική Μονάδα (ALU), για να χρησιμοποιηθεί, σ έναν υπολογισμό. Η μεταβλητή είναι το μέσο, μέσα από το οποίο αποθηκεύουμε ένα δεδομένο, σε μία θέση μνήμης και μετά, να προσπελαύνουμε αυτό το δεδομένο, για να το χρησιμοποιούμε, σε υπολογισμούς. Οι πρώτες εντολές που γράφουμε ή που συναντάμε, σ ένα πρόγραμμα, είναι οι δηλώσεις των μεταβλητών που θα χρησιμοποιήσουμε, σ αυτό το πρόγραμμα (Εικόνα 5). Όταν δηλώνουμε μία μεταβλητή, τότε ο μικροεπεξεργαστής εκχωρεί / δεσμεύει χώρο τη μνήμη του υπολογιστή, γι αυτή τη μεταβλητή. Ο χώρος που δεσμεύεται στη μνήμη του υπολογιστή, για μία μεταβλητή, εξαρτάται από το τύπο αυτής της μεταβλητής, αν δηλαδή στη θέση / χώρο μνήμης αυτής της μεταβλητής, θα αποθηκεύουμε ακέραιες, πραγματικές, χαρακτήρες ή λογικές (True ή False) τιμές. Κάθε μεταβλητή που χρησιμοποιούμε / ορίζουμε σε προγράμματα που γράφουμε, για τον Arduino, μπορεί να έχει έναν, από τους παρακάτω τέσσερεις τύπους: 12

13 Εικόνα 6: Η λειτουργία της analogread(). Η συνάρτηση analogread(temp) διαβάζει τη τάση, έστω 0.74 V που δημιουργείται στη θύρα TEMP = 0, του Arduino, από τον αισθητήρα θερμοκρασίας και επιστρέφει στη loop(), μία τιμή που είναι ανάλογη αυτής της τάσης που για τάση 0.74 V, είναι η τιμή 151. Έτσι, όταν η εντολή val = analogread(temp); εκτελείται από το μικροεπεξεργαστή, η τιμή 151 που επιστρέφει η analogread(), αποθηκεύεται στη θέση μνήμης της μεταβλητής val, στη μνήμη RAM του Arduino. 13

14 int (ακέραια μεταβλητή) float (πραγματική μεταβλητή) char (χαρακτήρας) boolean (λογική μεταβλητή) Αν για παράδειγμα, δηλώσουμε τη μεταβλητή val ως ακέραια (Εικόνα 5): int val; τότε ο μικροεπεξεργαστής δεσμεύει δύο bytes στη μνήμη του μικροελεγκτή, για τη μεταβλητή val, ώστε σ αυτά τα bytes, να αποθηκεύουμε ακέραιες τιμές. Αφού δηλώσουμε μία μεταβλητή να έχει ένα συγκεκριμένο τύπο, τότε αυτή η μεταβλητή δεν μπορεί, παρά να παίρνει τιμές αυτού του τύπου. Αν για παράδειγμα, δηλώσουμε μία μεταβλητή ως ακέραια, όπως τη μεταβλητή val, τότε στο πρόγραμμα, η μεταβλητή val θα μπορεί να παίρνει μόνον ακέραιες τιμές, δηλαδή θα μπορούμε να χρησιμοποιούμε τη θέση μνήμης της μεταβλητής val, για να αποθηκεύουμε μόνον ακέραιες τιμές. Λίγο παρακάτω, στο πρόγραμμα της Εικόνας 5, η εντολή: val = analogread(temp); αποθηκεύει στη μεταβλητή val, δηλαδή, στο χώρο μνήμης που έχει εκχωρηθεί στη μεταβλητή val, τη τιμή που επιστρέφει η analogread(temp), αφού διαβάσει τη μέτρηση από τον αισθητήρα θερμοκρασίας (Εικόνα 6). Η επόμενη εντολή, V = (float) val / 204.6; προσπελαύνει τη τιμή στη θέση μνήμης της μεταβλητής val, όπου προηγούμενα, έ- χουμε αποθηκεύσει τη τελευταία μέτρηση από τον αισθητήρα θερμοκρασίας και διαιρεί αυτή τη τιμή δια 204.6, για να υπολογίσει τη πραγματική τάση που δημιουργεί ο αισθητήρας, στη θύρα TEMP = A0 του Arduino. Μετά, αποθηκεύει αυτή τη τιμή τάσης, στη μεταβλητή V, δηλαδή στο χώρο στη μνήμη που έχει εκχωρηθεί στη μεταβλητή V (Εικόνα 7). Η επόμενη εντολή, Temp = 100 * (V 0.5); χρησιμοποιεί τη χαρακτηριστική καμπύλη του αισθητήρα θερμοκρασίας, για να μετατρέψει τη τάση που δημιουργεί ο αισθητήρας στην A0 του Arduino, στην αντίστοιχη τιμή θερμοκρασίας. Παίρνουμε τη τάση που δημιουργεί ο αισθητήρας, από τη μεταβλητή V, όπου προηγούμενα, την έχουμε αποθηκεύσει και χρησιμοποιούμε την εξίσωση της χαρακτηριστικής καμπύλης του αισθητήρα, για να μετατρέψουμε αυτή τη τάση, στην αντίστοιχη τιμή θερμοκρασίας. Μετά, αποθηκεύουμε αυτή τη τιμή, στη μεταβλητή Temp (Εικόνα 7). Έτσι, η μεταβλητή Temp έχει τη πραγματική μέτρηση θερμοκρασίας, από τον αισθητήρα. Έχοντας αποθηκεύσει τη πραγματική τιμή θερμοκρασίας, στη μεταβλητή 14

15 Εικόνα 7: Η λειτουργία των μεταβλητών σ ένα πρόγραμμα. Οι μετρήσεις από αισθητήρες, αλλά και τα ενδιάμεσα αποτελέσματα υπολογισμών από ένα πρόγραμμα, αποθηκεύονται σε μεταβλητές του προγράμματος, πιο σωστά στις θέσεις μνήμης μεταβλητών του προγράμματος. Μέσα από αυτές τις μεταβλητές, μπορεί μετά, τα δεδομένα να προσπελαύνονται και να χρησιμοποιούνται σε επόμενους υπολογισμούς του προγράμματος. 15

16 Temp, μπορούμε, μέσα από τη μεταβλητή, να χρησιμοποιήσουμε αυτή τη τιμή θερμοκρασίας, στο πρόγραμμα, για να λειτουργήσουμε μία εξωτερική συσκευή, για παράδειγμα, να ανάψουμε μία LED ή να λειτουργήσουμε το κινητήρα ενός κλιματιστικού, ανάλογα με τη τιμή θερμοκρασίας. I.8 Η Γενική Μορφή ενός Προγράμματος, για τον Arduino Κάθε πρόγραμμα στον Arduino αποτελείται από δύο τουλάχιστον συναρτήσεις. Η πρώτη, η συνάρτηση setup (), περιλαμβάνει ορισμούς. Σ αυτή δηλαδή τη συνάρτηση, ορίζουμε τη ταχύτητα αποστολής δεδομένων, σε bits/sec, ανάμεσα στο Arduino και τον υπολογιστή. Ακόμα, ορίζουμε αν μία θύρα του Arduino θα λειτουργεί σαν θύρα εισόδου, γιατί σ αυτή, θα έχουμε συνδέσει έναν αισθητήρα ή αντίθετα, αν αυτή η θύρα θα λειτουργεί σαν θύρα εξόδου, δημιουργώντας τάση 5 V, σ ένα κύκλωμα, για να ανάψει μία LED ή να ξεκινήσει έναν κινητήρα. Η δεύτερη συνάρτηση που πάντα υπάρχει πάντα σ ένα πρόγραμμα, για τον Arduino, είναι η loop () (Εικόνα 8). Αυτή η συνάρτηση δημιουργεί μία ατέρμονη επανάληψη που χωρίς τέλος, εκτελεί τις εντολές στο εσωτερικό της, δηλαδή τις εντολές, ανάμεσα στις αγκύλες που ορίζουν που αρχίζει και που τελειώνει ο κώδικας οι εντολές μίας συνάρτησης. Γενικά, η λέξη void πριν από το όνομα μίας συνάρτησης, σημαίνει πως αυτή η συνάρτηση δεν επιστρέφει καμία τιμή, στο πρόγραμμα που τις καλεί. Όμως, οι συναρτήσεις setup () και loop (), σ ένα πρόγραμμα για τον Arduino, δεν καλούνται / δεν χρησιμοποιούνται, από κανένα άλλο πρόγραμμα. Αντίθετα, αυτές οι συναρτήσεις και οι εντολές που περιέχουν, αποτελούν το πρόγραμμα που γράφουμε, για τον Arduino και που μπορεί να περιέχει και να καλεί άλλες συναρτήσεις, για να εκτελούν επιμέρους λειτουργίες, της δικής του λειτουργίας. Έτσι, η λέξη void πριν από τη setup(), αλλά και πριν τη loop() σημαίνει πως τόσο η μία, όσο και η άλλη, δεν καλούνται από κάποιο άλλο πρόγραμμα και δεν επιστρέφουν καμία τιμή, σε κανένα άλλο πρόγραμμα. Απλά, αυτές οι συναρτήσεις, αυτόματα, εκτελούνται η μία μετά την άλλη, αμέσως μόλις φορτώσουμε ένα πρόγραμμα που τις περιέχει, στον Arduino. I.9 H Συνάρτηση analogread(): Διαβάζοντας τη Μέτρηση από έναν Αισθητήρα Η πρώτη εντολή στη loop(), στο πρόγραμμα της Εικόνας 8, είναι η εντολή: val = analogread(temp); Χρησιμοποιούμε την analogread(), σχεδόν, σε κάθε πρόγραμμα που γράφουμε, για τον Arduino, για να διαβάζουμε τη μέτρηση, από έναν ή περισσότερους αισθητήρες, σε μεταβλητές του προγράμματος. H analogread(), στο πρόγραμμα της Εικόνας 8, διαβάζει στη μεταβλητή val, τη μέτρηση από τον αισθητήρα θερμοκρασίας. Η analogread() είναι μία εσωτερικά 16

17 Εικόνα 8: Κάθε πρόγραμμα, για τον Arduino, αποτελείται από τις δηλώσεις των μεταβλητών, στην αρχή του προγράμματος και δύο τουλάχιστον συναρτήσεις, τη setup() και τη loop(). ορισμένη συνάρτηση, δηλαδή μία συνάρτηση που ήδη, έχει γραφεί από άλλους και περιέχεται στη βιβλιοθήκη / στο κατάλογο συναρτήσεων, για τον Arduino και που μπορούμε να χρησιμοποιούμε, χωρίς να χρειάζεται να τις έχουμε γράψουμε, εμείς. Η analogread(), στο πρόγραμμα της Εικόνας 8, διαβάζει τη μέτρηση από τον αισθητήρα θερμοκρασίας, στη μεταβλητή val. Μετά, στο πρόγραμμα, χρησιμοποιούμε τη τιμή της μεταβλητής val, για να ανάψουμε ή να σβήσουμε μία LED, ανάλογα με τη τιμή αυτής της μεταβλητής. Η analogread() δείχνει τα δύο βασικά χαρακτηριστικά των συναρτήσεων: την έννοια της παραμέτρου και την έννοια της τιμής που επιστρέφει μία συνάρτηση. 17

18 I.9.1 Η έννοια της Παραμέτρου μίας Συνάρτησης Όταν καλούμε, δηλαδή, όταν χρησιμοποιούμε την analogread() σ ένα πρόγραμμα, για να διαβάσουμε την μέτρηση από έναν αισθητήρα, χρειάζεται να προσδιορίσουμε σε ποια από τις αναλογικές θύρες του Arduino, έχουμε συνδέσει αυτό τον αισθητήρα. Οι περισσότεροι αισθητήρες είναι αναλογικές συσκευές και γι αυτό, συνήθως, συνδέουμε κάθε αισθητήρα, σε μία αναλογική θύρα του Arduino. Έτσι, όταν σ ένα πρόγραμμα, καλούμε τη συνάρτηση analogread(), για να διαβάσουμε τη μέτρηση από έναν αισθητήρα, δίπλα από το όνομα της συνάρτησης, χρειάζεται να χρησιμοποιήσουμε μία μεταβλητή ή μία σταθερά που προσδιορίζει τη θύρα του Arduino που έχουμε συνδέσει αυτό τον αισθητήρα. Για παράδειγμα, στο πρόγραμμα της Εικόνας 8, δίπλα από το όνομα της analogread(), χρησιμοποιούμε τη σταθερά TEMP στη οποία, προηγούμενα, έχουμε δώσει τη τιμή 0 για να προσδιορίσουμε πως η analogread() θα πρέπει να διαβάσει την τιμή του αισθητήρα θερμοκρασίας, από την αναλογική θύρα 0 του Arduino. I.9.2 Η Επιστροφή μίας Τιμής από μία Συνάρτηση Αφού η συνάρτηση analogread(), διαβάσει τη τιμή του ποτενσιόμετρου, ή γενικότερα, τη μέτρηση ενός αισθητήρα, από μία αναλογική θύρα του Arduino, επιστρέφει αυτή τη τιμή, στο πρόγραμμα. Το πρόγραμμα καλεί / χρησιμοποιεί τη συνάρτηση analogread(), μεταβιβάζοντας σ αυτή, μία πληροφορία τη θύρα που έχουμε συνδέσει ένα αισθητήρα. H analogread() χρησιμοποιεί αυτή τη πληροφορία, για να διαβάσει τη τάση που δημιουργείται στη συγκεκριμένη θύρα, από τον αισθητήρα και ε- πιστρέφει μεταβιβάζει πίσω στο πρόγραμμα αυτή τη τάση. Για να χρησιμοποιήσουμε τη μέτρηση από έναν αισθητήρα που διαβάζει και επιστρέφει στο πρόγραμμα, η analogread(), εκχωρούμε αυτή τη τιμή σε μία μεταβλητή. Αυτή είναι η έννοια του συμβόλου της ισότητας, ανάμεσα στη μεταβλητή val και τη συνάρτηση analogread(): val = analogread(temp); Δηλαδή, το σύμβολο ίσον ( = ), ανάμεσα στην analogread() και τη μεταβλητή val, δεν εκφράζει την ισότητα, ανάμεσα στις παραστάσεις στα αριστερά και στα δεξιά αυτού του συμβόλου, αλλά λειτουργεί ώστε η τιμή / η μέτρηση που διαβάζει η analogread(), από μία αναλογική θύρα του Arduino, να αποθηκεύεται στη μεταβλητή val (Εικόνα 6). Μετά, από αυτή την εκχώρηση, η μεταβλητή val θα έχει σαν τιμή, τη τιμή που επιστρέφει η analogread(), στο πρόγραμμα. Ο σκοπός τηε αποθήκευσης αυτής της τιμής στη μεταβλητή val, είναι ώστε μετά, να χρησιμοποιήσουμε αυτή τη τιμή, για να ανάψουμε τη LED ή να περιστρέψουνε ή όχι, ένα κινητήρα. Η analogread(), είναι η συνάρτηση που ίσως περισσότερο από κάθε άλλη, θα χρησιμοποιούμε στα προγράμματα, για τον Arduino, για να διαβάζουμε δεδομένα από αισθητήρες και άλλα όργανα μέτρησης. Αν και η συνάρτηση είναι εσωτερικά ορισμένη και δεν έχουμε γράψει ή δει το κώδικα αυτής της συνάρτησης, από τη λειτουργία 18

19 της, μπορούμε να δούμε τα βασικότερα χαρακτηριστικά των συναρτήσεων, στο προγραμματισμό. Δηλαδή, 1. Μία συνάρτηση έχει ένα όνομα και χρησιμοποιείται από ένα πρόγραμμα, για να εκτελεί μία επιμέρους λειτουργία αυτού του προγράμματος. Για παράδειγμα, η analogread() χρησιμοποιείται από ένα πρόγραμμα, για τον Arduino, για να διαβάζει τη μέτρηση, από έναν ή και περισσότερους αισθητήρες. 2. Ένα πρόγραμμα καλεί / χρησιμοποιεί μία συνάρτηση, προσδιορίζοντας το όνομα αυτής της συνάρτησης και δίπλα στο όνομα της συνάρτησης, μία ή περισσότερες παραμέτρους που προσδιορίζουν απαραίτητα δεδομένα ή πληροφορίες στη συνάρτηση, για τη λειτουργία της και 3. Κάθε συνάρτηση μπορεί να επιστρέφει στο πρόγραμμα που τη καλεί μία τιμή, σαν αποτέλεσμα της λειτουργίας της. Για παράδειγμα, η analogread(), αφού διαβάσει τη μέτρηση ενός αισθητήρα, από μία θύρα του Arduino, επιστρέφει στο πρόγραμμα που τη καλεί, μία τιμή που είναι ανάλογη αυτής της μέτρησης. I.9.3 Το πεδίο Τιμών της analogread() Έτσι, η analogread() διαβάζει τη μέτρηση από έναν αισθητήρα και μέσα από την εντολή εκχώρησης, αποθηκεύει αυτή τη τιμή σε μία μεταβλητή. Αυτή είναι η λειτουργία της analogread(). Χρειάζεται όμως, μία διευκρίνηση σχετικά με το πεδίο ο- ρισμού και το πεδίο τιμών της analogread(). H analogread() διαβάζει τη μέτρηση από ένα αισθητήρα που έχουμε συνδέσει σε μία αναλογική θύρα του Arduino. Κάθε αισθητήρας μετράει μία μεταβλητή και συνήθως, παριστάνει αυτή τη τιμή αυτής της μεταβλητής, κάθε χρονική στιγμή, μέσα από μία τάση που δημιουργεί στον ακροδέκτη εξόδου του, αυτό τον ακροδέκτη που συνδέουμε, σε μία αναλογική θύρα του Arduino. Έτσι, η μέτρηση που παίρνουμε από έναν αισθητήρα που έχουμε συνδέει σε μία αναλογική θύρα του Arduino, είναι στη μορφή μίας τάσης Οι περισσότεροι αισθητήρες παριστάνουν τη τιμή της μεταβλητής που μετρούν, δημιουργώντας μία τάση, από 0 5 V. Η analogread() διαβάζει αυτή τη τιμή τάσης που δημιουργεί ένας αισθητήρας, διαβάζει δηλαδή, μία τιμή 0 5 V. Αλλά, αυτόματα, η analogread() μετατρέπει αυτή τη τιμή τάσης, σε μία τιμή στο πεδίο τιμών , αντιστοιχίζοντας τάση 0 V, στη τιμή 0 και τάση 5 V, στη τιμή Έτσι, ενώ οι τιμές που διαβάζει η analogread(), είναι από 0 5 V, οι τιμές που επιστρέφει στο πρόγραμμα, είναι , μετατρέποντας τιμές τάσης, σε αντίστοιχες τιμές, στο πεδίο τιμών I.10 H Συνάρτηση map(): Αντιστοιχίζοντας τιμές από ένα Πεδίο Τιμών, σ Ένα Άλλο Μία άλλη συνάρτηση, η συνάρτηση, 19

20 map(val, 563, 1023, 0, 255) λειτουργεί ώστε να μετατρέπει τη τιμή της μεταβλητής val, από μία τιμή στο διάστημα [563, 1023] σε μία τιμή, στο διάστημα [0, 255]. I.11 Δημιουργώντας Ψηφιακές Τάσεις: H Εντολή digitalwrite() Είδαμε παραπάνω πως ένα πρόγραμμα που γράφουμε, για τον Arduino, μπορεί να διαβάζει το εξωτερικό περιβάλλον, διαβάζοντας τις τάσεις που δημιουργούνται στις αναλογικές θύρες εισόδους του Arduino, από διάφορους αισθητήρες. Όμως, ένα πρόγραμμα μπορεί όχι μόνον να διαβάζει τη τάση σε μία αναλογική είσοδο του Arduino, αλλά και να δημιουργεί τάση από 0 5 V σε μία ή περισσότερες θύρες του Arduino που δηλώνουμε ως θύρες εξόδου. Η τάση που ένα πρόγραμμα δημιουργεί σε μία θύρα του Arduino, μπορεί να ανάβει μία LED. Κυρίως όμως, η τάση που ένα πρόγραμμα δημιουργεί σε μία ή περισσότερες θύρες εξόδου του Arduino μπορεί να περιστρέφει έναν ή περισσότερους κινητήρες που μπορεί να έχουν διάφορες λειτουργίες: να κινούν ένα ρομποτικό αυτοκίνητο ή ένα ρομποτικό βραχίονα, να είναι μέρος ενός αυτοματισμού που λειτουργεί το κλιματισμό ή το φωτισμό μίας εγκατάστασης ή ένα ποτιστικό σύστημα ή ένα συναγερμό. Έτσι, ένα πρόγραμμα μπορεί να ελέγχει και να αλλάζει τη κατάσταση του εξωτερικού περιβάλλοντος, μέσα από τη λειτουργία ενός ή περισσότερων κινητήρων. Ένα πρόγραμμα, πολύ απλά, μπορεί να δημιουργεί τάση 0 V ή 5 V, σε μία θύρα του Arduino, μέσα από τη συνάρτηση digitalwrite() που έχει τη μορφή: digitalwrite(θύρα, Πλάτος); Παρατηρούμε πως η digitalwrite() έχει δύο παραμέτρους. Δηλαδή, στις παρενθέσεις, μετά το όνομα της συνάρτησης, χρειάζεται να ορίζουμε δύο σταθερές. Η πρώτη παράμετρος προσδιορίζει μία θύρα εξόδου του Arduino. Η δεύτερη παράμετρος της συνάρτησης, δημιουργεί μία τάση 0 5 V, σε μία θύρα εξόδου του Arduino. Για παράδειγμα, η εντολή: digitalwrite(en, HIGH); δημιουργεί τάση 5 V (HIGH) στη θύρα ΕΝ = 9 του Arduino που προηγούμενα, έ- χουμε δηλώσει ως θύρα εξόδου με την εντολή pinmode(en, OUTPUT). I.12 Δημιουργώντας Αναλογικές Τάσεις με την Εντολή analogwrite() Ένα πρόγραμμα, εκτός από μία ψηφιακή τάση, δηλαδή τάση 0 V ή 5 V, μπορεί να δημιουργεί αναλογική τάση, σε μία θύρα εξόδου με τη συνάρτηση analogwrite(). Αυτή η συνάρτηση έχει τη μορφή: 20

21 analogwrite(θύρα, Εύρος_Τάσης); H analogwrite() δημιουργεί τάση στη θύρα του Arduino που προσδιορίζεται από τη πρώτη παράμετρο της συνάρτησης. Όμως, σε αντιδιαστολή με τη digitalwrite(), η τάση που δημιουργεί η analogwrite() δεν περιορίζεται σε μία από δύο τιμές, δηλαδή 0 V ή 5 V, αλλά μπορεί να έχει οποιαδήποτε τιμή, από 0 V έως 5 V που προσδιορίζεται από τη δεύτερη παράμετρο της συνάρτησης. Λίγο αναλυτικότερα, η δεύτερη παράμετρος της analogwrite() είναι μία μεταβλητή ή σταθερά που μπορεί να παίρνει τιμές στο διάστημα [0, 255]. Αν αυτή η μεταβλητή έχει τη τιμή 0, τότε η συνάρτηση analogwrite() δημιουργεί μία τάση 0 V. Αν αντίθετα, αυτή η δεύτερη παράμετρος της συνάρτησης έχει τη τιμή 255, τότε η συνάρτηση δημιουργεί τάση 5 V. Για ενδιάμεσες τιμές της δεύτερης παραμέτρου, η analogwrite() δημιουργεί ενδιάμεσες τιμές τάσης, από 0 V έως 5 V. Για παράδειγμα, η analogwrite() με παραμέτρους, όπως παρακάτω: analogwrite(en, 153); δημιουργεί στη θύρα EN = 9 του Arduino, μία τάση V = 3 V (Εικόνα ). Αν δηλαδή συνδέσουμε ένα πολύμετρο στη θύρα 9 του Arduino, συνδέοντας τον ένα ακροδέκτη του πολυμέτρου στη θύρα 9 και τον άλλο ακροδέκτη, στο GND, τότε μετά την εκτέλεση της παραπάνω εντολής, το πολύμετρο θα δείχνει τάση V = 3 V (Εικόνα ). Ι.12.1 Η Διαμόρφωση Εύρους Παλμού της analogwrite() Η analogwrite() μπορεί να δημιουργεί τάση σε μία θύρα του Arduino που να παίρνει οποιαδήποτε τιμή, ανάμεσα στα 0 V και 5 V. Όμως, η τάση που δημιουργεί η analogwrite() δεν είναι μία σταθερή τάση που η τιμή της παραμένει αμετάβλητή σ ένα επίπεδο τάσης, για παράδειγμα στα 3 V, αλλά ένας τετραγωνικός παλμός (Εικόνα 9). Αυτός ο τετραγωνικός παλμός έχει την ίδια πάντα συχνότητα, που είναι η συχνότητα λειτουργίας του Arduino, δηλαδή 500 παλμοί, το δευτερόλεπτο. Ακόμα, το πλάτος αυτού του παλμού είναι σταθερό. Το θετικό τμήμα του παλμού έχει πλάτος (amplitude) 5 V (Εικόνα 9). Αυτό που μεταβάλλεται στο παλμό που δημιουργεί η analogwrite() δεν είναι η συχνότητα ή το πλάτος, αλλά το εύρος του παλμού, δηλαδή η σχετική διάρκεια του θετικού τμήματος του παλμού, σαν ποσοστό της περιόδου του παλμού (Εικόνα 9). Η δεύτερη παράμετρος στην analogwrite(), το Εύρος_Παλμού που παίρνει τιμές από 0 έως 255, προσδιορίζει όχι τη συχνότητα ή το πλάτος του τετραγωνικού παλμού που δημιουργεί η analogwrite(), αλλά το εύρος του θετικού τμήματος, δηλαδή τη διάρκεια του θετικού τμήματος αυτού του παλμού, σαν ποσοστό της περιόδου του παλμού (Εικόνα 9). Μεταβάλλοντας το εύρος του τετραγωνικού παλμού, η analogwrite() μπορεί να δημιουργεί διαφορετικά επίπεδα τάσης, στη κλίμακα 0 5 V, σε μία ή περισσότερες θύρες του Arduino. 21

22 Εικόνα 9: Η έννοια της διαμόρφωσης εύρους παλμού.. Αυτή η τεχνική να δημιουργούμε διαφορετικά επίπεδα / τιμές τάσης, μεταβάλλοντας το εύρος ενός τετραγωνικού παλμού, ονομάζεται διαμόρφωση εύρους παλμού και χρησιμοποιείται πολύ, για να μεταβάλλουμε / ρυθμίζουμε τόσο την ένταση φωτισμού μίας LED, όσο και τη ταχύτητα περιστροφής ενός DC κινητήρα. 22

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων Σκοπός Συλλογή & Επεξεργασία Δεδομένων Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές Ελέγχου. Πρόγραμμα Εντολές Επεξεργασίας Δεδομένων Εντολή Εκχώρησης Εντολές Ελέγχου Λογική συνθήκη Εντολή

Διαβάστε περισσότερα

Μέτρηση Θερμοκρασίας με τον αισθητήρα TMP36. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων. Βασική δομή ενός προγράμματος στο LabVIEW.

Μέτρηση Θερμοκρασίας με τον αισθητήρα TMP36. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων. Βασική δομή ενός προγράμματος στο LabVIEW. Σκοπός Μάθημα 2 Δραστηριότητα 1 Μέτρηση Θερμοκρασίας με τον αισθητήρα TMP36. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο Πλαίσιο (front panel). Σχεδίαση

Διαβάστε περισσότερα

Εγκατάσταση του Arduino IDE

Εγκατάσταση του Arduino IDE ΑΣΠΑΙΤΕ Συλλογή και Επεξεργασία Δεδομένων Εργαστήριο ΠΕΡΙΕΧΟΜΕΝΑ: Πώς να κατεβάσετε και να εγκαταστήσετε το Ολοκληρωμένο Περιβάλλον Ανάπτυξης (IDE), για το προγραμματισμό του Arduino. Χρησιμοποιώντας το

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 1. Arduino + LabVIEW: Μέτρηση Έντασης Φωτός με Φωτοαντίσταση. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 1. Arduino + LabVIEW: Μέτρηση Έντασης Φωτός με Φωτοαντίσταση. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 1 Arduino + LabVIEW: Μέτρηση Έντασης Φωτός με Φωτοαντίσταση. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5. Ρυθμίζοντας τη Φορά Περιστροφής. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5. Ρυθμίζοντας τη Φορά Περιστροφής. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 5 Ρυθμίζοντας τη Φορά Περιστροφής DC Κινητήρα. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο Πλαίσιο (front

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοινωνία. Σειριακή Επικοινωνία USB Σύνδεση / Πρωτόκολλο Σκοπός Εντολή επιλογής (if) Εντολή Επανάληψης (while) Πίνακες 1 Μέρος Α : Σκοπός

Διαβάστε περισσότερα

Μάθημα 1 ΑΙΣΘΗΤΗΡΕΣ Ο Αισθητήρας Δύναμης. Επανεξέταση των βασικών εννοιών της C και του προγραμματισμού.

Μάθημα 1 ΑΙΣΘΗΤΗΡΕΣ Ο Αισθητήρας Δύναμης. Επανεξέταση των βασικών εννοιών της C και του προγραμματισμού. Σκοπός Σχεδίαση Συστημάτων με τον Arduino Μάθημα 1 ΑΙΣΘΗΤΗΡΕΣ Ο Αισθητήρας Δύναμης. Επανεξέταση των βασικών εννοιών της C και του προγραμματισμού. Κατανόηση των βημάτων στη συστηματική ανάπτυξη ενός προγράμματος.

Διαβάστε περισσότερα

Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 2. Προγραμματισμός Φυσικών Συστημάτων. Συστήματα Πραγματικών Εφαρμογών. Νέα Ψηφιακά Αντικείμενα

Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 2. Προγραμματισμός Φυσικών Συστημάτων. Συστήματα Πραγματικών Εφαρμογών. Νέα Ψηφιακά Αντικείμενα Σκοπός Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 2 ΤΟ ΣΥΣΤΗΜΑ ΣΑΡΩΣΗΣ ΤΟΥ ΟΠΤΙΚΟΥ ΠΕΔΙΟΥ. Ψηφιακά Αντικείμενα Μικροελεγκτής Προγραμματισμός Φυσικών Συστημάτων Συστήματα Πραγματικών Εφαρμογών Νέα Ψηφιακά

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 3 Μέτρηση Θερμοκρασίας Σύστημα Ελέγχου Θερμοκρασίας. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 3 Μέτρηση Θερμοκρασίας Σύστημα Ελέγχου Θερμοκρασίας. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 3 Μέτρηση Θερμοκρασίας Σύστημα Ελέγχου Θερμοκρασίας με Θερμοστάτη. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Βασική δομή ενός προγράμματος στο LabVIEW.

Διαβάστε περισσότερα

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL

Σκοπός. Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Αλγεβρικοί και Λογικοί Υπολογισμοί στη PASCAL Δυνατότητα ανάπτυξης, μεταγλώττισης και εκτέλεσης προγραμμάτων στη PASCAL. Κατανόηση της σύνταξης των προτάσεων της PASCAL. Κατανόηση της εντολής εξόδου για

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 4. Οδηγώντας έναν DC Κινητήρα. Το κύκλωμα της Λειτουργίας DC Κινητήρα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 4. Οδηγώντας έναν DC Κινητήρα. Το κύκλωμα της Λειτουργίας DC Κινητήρα Σκοπός Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 4 Οδηγώντας έναν DC Κινητήρα. Το κύκλωμα της Λειτουργίας DC Κινητήρα Τρανζίστορ στη Λειτουργία ενός DC Κινητήρα. Η Χρήση της Διόδου. Το Πρόγραμμα που Οδηγεί

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 7 Ακούγοντας Πρώτη Ματιά στην Ανάλυση Fourier. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 7 Ακούγοντας Πρώτη Ματιά στην Ανάλυση Fourier. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 7 Ακούγοντας Πρώτη Ματιά στην Ανάλυση Fourier. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο Πλαίσιο (front

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 8. Μετρώντας Επιτάχυνση με το Accelerόμετρο (ADXL 335) Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 8. Μετρώντας Επιτάχυνση με το Accelerόμετρο (ADXL 335) Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 8 Μετρώντας Επιτάχυνση με το Accelerόμετρο (ADXL 335). Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Βασική δομή ενός προγράμματος στο LabVIEW. Εμπρόσθιο Πλαίσιο

Διαβάστε περισσότερα

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων.

Κεφάλαιο Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Α Γενικού Λυκείου Κεφάλαιο 1 1.1 Το υπολογιστικό σύστημα Η εξέλιξη του ανθρώπου πραγματοποιήθηκε χάρη στην ικανότητά στον χειρισμό εργαλείων. Ιδιαίτερη θέση έχουν οι Υπολογιστικές συσκευές. Μηχανισμός

Διαβάστε περισσότερα

Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 1. Προγραμματισμός Φυσικών Συστημάτων. Νέα Ψηφιακά Αντικείμενα

Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 1. Προγραμματισμός Φυσικών Συστημάτων. Νέα Ψηφιακά Αντικείμενα Σκοπός Ψηφιακά Αντικείμενα Μάθημα 1 Δραστηριότητα 1 ΜΕΤΡΩΝΤΑΣ ΑΠΟΣΤΑΣΗ ΜΕ ΤΟΝ ΑΙΣΘΗΤΗΡΑ ΥΠΕΡΗΧΩΝ (SR04). Ψηφιακά Αντικείμενα Μικροελεγκτής Προγραμματισμός Φυσικών Συστημάτων Νέα Ψηφιακά Αντικείμενα Αισθητήρες

Διαβάστε περισσότερα

Εγκατάσταση του Lazarus

Εγκατάσταση του Lazarus Εισαγωγή στο Προγραμματισμό με τη PASCAL ΠΕΡΙΕΧΟΜΕΝΑ: Πώς να κατεβάσετε και να εγκαταστήσετε το περιβάλλον προγραμματισμού Lazarus. Εισαγωγή στη PASCAL. Εγκατάσταση του Lazarus Γιατί η PASCAL? Έτσι, η

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία ΡομποΚαθαριστής Μέρος Β : Το Πρόγραμμα. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping).

Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία ΡομποΚαθαριστής Μέρος Β : Το Πρόγραμμα. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping). Σκοπός Συλλογή & Επεξεργασία Δεδομένων Εξαμηνιαία 2015 ΡομποΚαθαριστής Μέρος Β : Το Πρόγραμμα. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping). Μονάδες ενός Ρομποτικού Συστήματος Μονάδα Συλλογής

Διαβάστε περισσότερα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα

Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα Μικροεπεξεργαστές - Μικροελεγκτές Ψηφιακά Συστήματα 1. Ποια είναι η σχέση της έννοιας του μικροεπεξεργαστή με αυτή του μικροελεγκτή; Α. Ο μικροεπεξεργαστής εμπεριέχει τουλάχιστο έναν μικροελεγκτή. Β. Ο

Διαβάστε περισσότερα

Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Β : Επικοινωνία Υπολογιστή με Μικροελεγκτή

Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Β : Επικοινωνία Υπολογιστή με Μικροελεγκτή Σκοπός Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Β : Επικοινωνία Υπολογιστή με Μικροελεγκτή Μικροελεγκτές Πλακέτα Arduino Προγραμματισμός Μικροελεγκτών στη C. Επικοινωνία Υπολογιστή

Διαβάστε περισσότερα

Μια πρόταση διδασκαλίας για το μάθημα του προγραμματισμού Η/Υ στο Λύκειο με τη μεθοδολογία STEM

Μια πρόταση διδασκαλίας για το μάθημα του προγραμματισμού Η/Υ στο Λύκειο με τη μεθοδολογία STEM Μια πρόταση διδασκαλίας για το μάθημα του προγραμματισμού Η/Υ στο Λύκειο με τη μεθοδολογία STEM Οδηγίες για την υλοποίηση της διδακτικής παρέμβασης 1η διδακτική ώρα: Υλοποίηση του φύλλου εργασίας 1 με

Διαβάστε περισσότερα

Πτυχιακή Εργασία Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Η Ασύρματη Επικοινωνία, χρησιμοποιώντας

Πτυχιακή Εργασία Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Η Ασύρματη Επικοινωνία, χρησιμοποιώντας Βασικές Έννοιες Πτυχιακή Εργασία 2015 Οδηγώντας ένα Ρομποτικό Αυτοκίνητο με το WiFi. Σχεδίαση Συστήματος Πραγματικής Εφαρμογής (Prototyping). Η Ασύρματη Επικοινωνία, χρησιμοποιώντας το πρωτόκολλο WiFi.

Διαβάστε περισσότερα

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής)

ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Α Γενικού Λυκείου (Μάθημα Επιλογής) ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α Γενικού Λυκείου (Μάθημα Επιλογής) Σύγχρονα Υπολογιστικά Συστήματα τους υπερυπολογιστές (supercomputers) που χρησιμοποιούν ερευνητικά εργαστήρια τα μεγάλα συστήματα (mainframes)

Διαβάστε περισσότερα

Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Α : Υλικά

Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Α : Υλικά Σκοπός Εξαμηνιαία Εργασία 2013 Προγραμματίζοντας τον Arduino στη C Μέρος Α : Υλικά Μικροελεγκτές Πλακέτα Arduino Προσομοίωση Μικροελεγκτών Προγραμματισμός Μικροελεγκτών στη C. 7.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ

Διαβάστε περισσότερα

ΕΝΟΤΗΤΑ 3 ΕΚΦΡΑΣΕΙΣ, ΑΝΑΜΟΝΕΣ (DELAYS), ΗΧΟΙ

ΕΝΟΤΗΤΑ 3 ΕΚΦΡΑΣΕΙΣ, ΑΝΑΜΟΝΕΣ (DELAYS), ΗΧΟΙ ΕΝΟΤΗΤΑ 3 ΕΚΦΡΑΣΕΙΣ, ΑΝΑΜΟΝΕΣ (DELAYS), ΗΧΟΙ Σκοπός και περίγραμμα της Ενότητας 3 Σκοπός της παρουσίασης Να δούμε πιο προσεκτικά τις μεταβλητές, τις σταθερές και τις εκφράσεις γενικότερα. Να σας παρουσιάσουμε

Διαβάστε περισσότερα

Κεφάλαιο 8. Αριθμητική Λογική μονάδα

Κεφάλαιο 8. Αριθμητική Λογική μονάδα Κεφάλαιο 8 Αριθμητική Λογική μονάδα 8.1 Εισαγωγή Στη μηχανική υπολογιστών η αριθμητική/λογική μονάδα (ALU) είναι ένα ψηφιακό κύκλωμα το οποίο εκτελεί αριθμητικούς και λογικούς υπολογισμούς. Η ALU είναι

Διαβάστε περισσότερα

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Εργαστήριο 6 Εντολές Επανάληψης Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL. Ρεύμα Εισόδου / Εξόδου.. Ρεύμα Εισόδου / Εξόδου. To πρόγραμμα γραφικών gnuplot. Γραφικά στη PASCAL. Σκοπός 6.1 ΕΠΙΔΙΩΞΗ

Διαβάστε περισσότερα

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους.

*Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους. Ένας υπολογιστής είναι στην πραγματικότητα ένα σύστημα πολλών μερών που συνεργάζονται μεταξύ τους. *Τα φυσικά μέρη που μπορούμε να δούμε και να αγγίξουμε ονομάζονται συνολικά υλικό (hardware). * * υπερυπολογιστές

Διαβάστε περισσότερα

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ

ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ ΣΤΑΘΕΡΕΣ ΜΕΤΑΒΛΗΤΕΣ ΓΛΩΣΣΑ ΑΛΦΑΒΗΤΟ Κεφαλαία και μικρά γράμματα ελληνικού αλφαβήτου: Α Ω και α ω Κεφαλαία και μικρά γράμματα λατινικού αλφαβήτου: A Z και a z Αριθμητικά ψηφία: 0 9 Ειδικοί χαρακτήρες: + - * / =. ( ),! & κενός

Διαβάστε περισσότερα

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας,

Μικροεπεξεργαστές. Σημειώσεις Μαθήματος Υπεύθυνος: Δρ Άρης Παπακώστας, Μικροεπεξεργαστές Σημειώσεις Μαθήματος 2013-14 Υπεύθυνος: Δρ Άρης Παπακώστας, Η γλώσσα assembly είναι μια γλώσσα προγραμματισμού χαμηλού επιπέδου για συγκεκριμένους υπολογιστές ή άλλη προγραμματιζόμενη

Διαβάστε περισσότερα

ΘΕΜΑ : ΗΛΕΚΤΡΟΝΙΚΗ ΜΝΗΜΗ ΚΑΙ ΜΙΚΡΟΕΛΕΓΚΤΕΣ. ΔΙΑΡΚΕΙΑ: 1 περίοδος

ΘΕΜΑ : ΗΛΕΚΤΡΟΝΙΚΗ ΜΝΗΜΗ ΚΑΙ ΜΙΚΡΟΕΛΕΓΚΤΕΣ. ΔΙΑΡΚΕΙΑ: 1 περίοδος ΘΕΜΑ : ΗΛΕΚΤΡΟΝΙΚΗ ΜΝΗΜΗ ΚΑΙ ΜΙΚΡΟΕΛΕΓΚΤΕΣ ΔΙΑΡΚΕΙΑ: 1 περίοδος Σε αυτό το μάθημα θα μάθετε να: 1. Αναφέρετε τα διάφορα είδη μνήμης και συσκευές που τις περιέχουν. 2. Περιγράφετε τα σημαντικά χαρακτηριστικά

Διαβάστε περισσότερα

Βασίλειος Κοντογιάννης ΠΕ19

Βασίλειος Κοντογιάννης ΠΕ19 Ενότητα1 Υλικό Λογισμικό και Εφαρμογές Κεφ1: Υλικό Υπολογιστών - Hardware Τι ονομάζουμε υλικό υπολογιστών; Με τον όρο υλικό (hardware) αναφερόμαστε σε οτιδήποτε έχει μια φυσική-υλική υπόσταση σε ένα υπολογιστικό

Διαβάστε περισσότερα

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ

Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ. «Φέτα» ημιαγωγών (wafer) από τη διαδικασία παραγωγής ΚΜΕ Το ολοκληρωμένο κύκλωμα μιας ΚΜΕ Η Κεντρική Μονάδα Επεξεργασίας (Central Processing Unit -CPU) ή απλούστερα επεξεργαστής αποτελεί το μέρος του υλικού που εκτελεί τις εντολές ενός προγράμματος υπολογιστή

Διαβάστε περισσότερα

ΕΡΓΑΣΤΗΡΙΑΚΗ ΕΦΑΡΜΟΓΗ 4 TΟ ΡΟΜΠΟΤΙΚΟ ΟΧΗΜΑ ROGUE BLUE

ΕΡΓΑΣΤΗΡΙΑΚΗ ΕΦΑΡΜΟΓΗ 4 TΟ ΡΟΜΠΟΤΙΚΟ ΟΧΗΜΑ ROGUE BLUE Εργαστήριο Ευφυών Συστημάτων και Ρομποτικής Τμήμα Μηχανικών Παραγωγής και Διοίκησης Πολυτεχνείο Κρήτης www.robolab.tuc.gr, τηλ: 28210 37292 / 37314 e-mail: savas@dpem.tuc.gr, kyralakis@dpem.tuc.gr ΕΡΓΑΣΤΗΡΙΑΚΗ

Διαβάστε περισσότερα

Εντολές της LOGO (MicroWorlds Pro)

Εντολές της LOGO (MicroWorlds Pro) Εντολές της LOGO (MicroWorlds Pro) Εντολές εμφάνισης (εξόδου) και αριθμητικές πράξεις δείξε Εμφανίζει στην οθόνη έναν αριθμό, το αποτέλεσμα πράξεων, μια λέξη ή μια λίστα (ομάδα) λέξεων. δείξε 200 200 δείξε

Διαβάστε περισσότερα

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών Η επεξεργασία των δεδομένων ακολουθεί μια στερεότυπη διαδρομή: τα δεδομένα εισάγονται στο υπολογιστικό σύστημα, υφίστανται μια ορισμένη επεξεργασία και

Διαβάστε περισσότερα

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ

TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Μάθημα 7 - Υποπρογράμματα Εργαστήριο 11 Ο TO ΥΠΟΠΡΟΓΡΑΜΜΑ ΣΥΝΑΡΤΗΣΗ Βασικές Έννοιες: Υποπρόγραμμα, Ανάλυση προβλήματος, top down σχεδίαση, Συνάρτηση, Διαδικασία, Παράμετρος, Κλήση συνάρτησης, Μετάβαση

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2009 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 4 ΠΡΟΒΛΗΜΑΤΑ ΛΟΓΙΚΗΣ ΣΧΕΔΙΑΣΗΣ

ΑΣΚΗΣΗ 4 ΠΡΟΒΛΗΜΑΤΑ ΛΟΓΙΚΗΣ ΣΧΕΔΙΑΣΗΣ ΑΣΚΗΣΗ 4 ΠΡΟΒΛΗΜΑΤΑ ΛΟΓΙΚΗΣ ΣΧΕΔΙΑΣΗΣ 4.1 ΣΚΟΠΟΣ Σκοπός αυτής της εργαστηριακής άσκησης είναι να παρουσιάσει τις βασικές αρχές της σχεδίασης λογικών (ψηφιακών) κυκλωμάτων για πρακτικές εφαρμογές. Στα προηγούμενα

Διαβάστε περισσότερα

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος 4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος Μεταβλητές Συστήματος Η Processing χρησιμοποιεί κάποιες μεταβλητές συστήματος, όπως τις ονομάζουμε, για να μπορούμε να παίρνουμε πληροφορίες από το

Διαβάστε περισσότερα

Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου. Ενότητα 2

Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου. Ενότητα 2 Αυτοματισμοί και Συστήματα Αυτομάτου Ελέγχου Ενότητα 2 Τι είναι το PLC ΠΕΡΙΕΧΟΜΕΝΑ 2 Τι είναι το PLC. 2.1 Πλεονεκτήματα των PLC. 2.2 Η δομή ενός PLC. 2.3 Τα PLC της αγοράς. 2.4 Αρχή λειτουργίας ενός PLC.

Διαβάστε περισσότερα

Μάθημα 3: Αρχιτεκτονική Υπολογιστών

Μάθημα 3: Αρχιτεκτονική Υπολογιστών Μάθημα 3: Αρχιτεκτονική Υπολογιστών 3.1 Περιφερειακές μονάδες και τμήμα επεξεργασίας Στην καθημερινή μας ζωή ερχόμαστε συνέχεια σε επαφή με υπολογιστές. Ο υπολογιστής είναι μια συσκευή που επεξεργάζεται

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

Διαβάστε περισσότερα

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE

Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE ΕΡΓΑΣΤΗΡΙΟ 7 Ο Η ΔΟΜΗ ΕΠΑΝΑΛΗΨΗΣ Εντολές Επανάληψης REPEAT UNTIL, FOR, WHILE Βασικές Έννοιες: Δομή Επανάληψης, Εντολές Επανάληψης (For, While do, Repeat until), Αλγόριθμος, Αθροιστής, Μετρητής, Παράσταση

Διαβάστε περισσότερα

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο,

Μηχανοτρονική. Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, Τμήμα Μηχανικών Παραγωγής και Διοίκησης 7 ο Εξάμηνο, 2016-2017 ΜΙΚΡΟΕΠΕΞΕΡΓΑΣΤΕΣ Μικροϋπολογιστής Υπολογιστής που χρησιμοποιείται για την είσοδο, επεξεργασία και έξοδο πληροφοριών. Είδη μικροϋπολογιστών:

Διαβάστε περισσότερα

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07

Ενότητα 4. Εισαγωγή στην Πληροφορική. Αναπαράσταση δεδοµένων. Αναπαράσταση πληροφορίας. υαδικοί αριθµοί. Χειµερινό Εξάµηνο 2006-07 Ενότητα 4 Εισαγωγή στην Πληροφορική Κεφάλαιο 4Α: Αναπαράσταση πληροφορίας Κεφάλαιο 4Β: Επεξεργαστές που χρησιµοποιούνται σε PCs Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή

Διαβάστε περισσότερα

Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa.

Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa. Πληροφορική 1 Διδάσκων:Μ.Χατζόπουλος, Παραδόσεις:Τρίτη 4-6, Τετάρτη 1-3; (Αμφιθέατρο Α15) Πληροφορίες στην ιστοσελίδα του μαθήματος http://www.di.uoa.gr/~organosi/ 2 Η δομή του μαθήματος Εισαγωγή στην

Διαβάστε περισσότερα

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

Διαβάστε περισσότερα

ΠΡΟΒΛΗΜΑ ΕΠΕΓΕΡΓΑΣΙΑ. (Είναι οι σκέψεις και οι πράξεις που κάνουμε για να λυθεί το πρόβλημα) ΕΙΣΟΔΟΥ - ΕΞΟΔΟΥ

ΠΡΟΒΛΗΜΑ ΕΠΕΓΕΡΓΑΣΙΑ. (Είναι οι σκέψεις και οι πράξεις που κάνουμε για να λυθεί το πρόβλημα) ΕΙΣΟΔΟΥ - ΕΞΟΔΟΥ 1 ο ΓΥΜΝΑΣΙΟ ΘΕΡΜΗΣ Μάθημα: Ενότητα: Πληροφορική Α' Γυμν. Το Υλικό του Υπολογιστή ΠΡΟΒΛΗΜΑ ΔΕΔΟΜΕΝΑ (Είναι τα στοιχεία που δίνουμε για λυθεί το πρόβλημα) ΕΠΕΓΕΡΓΑΣΙΑ (Είναι οι σκέψεις και οι πράξεις που

Διαβάστε περισσότερα

Εισαγωγή στη γλώσσα προγραμματισμού C++

Εισαγωγή στη γλώσσα προγραμματισμού C++ Εισαγωγή στη γλώσσα προγραμματισμού C++ Περιβάλλον Εργασίας 2 Περιβάλλον Εργασίας 1. Χρήση απλού κειμενογράφου και Μεταγλωττιστή 2. Ολοκληρωμένα Περιβάλλοντα Εργασίας (Integrated Development Environments)

Διαβάστε περισσότερα

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Τα Εργαστηριακά Προγράμματα. Η δομή Επιλογής στη PASCAL. H δομή Επανάληψης στη PASCAL. Η εντολή επανάληψης for

Σκοπός. Εργαστήριο 6 Εντολές Επανάληψης Τα Εργαστηριακά Προγράμματα. Η δομή Επιλογής στη PASCAL. H δομή Επανάληψης στη PASCAL. Η εντολή επανάληψης for Εργαστήριο 6 Εντολές Επανάληψης Τα Εργαστηριακά Προγράμματα Η δομή Επιλογής στη PASCAL H δομή Επανάληψης στη PASCAL Η εντολή επανάληψης for Σκοπός Η εντολή επανάληψης while. 1 ΕΡΓΑΣΤΗΡΙΟ 6 Εισαγωγή στο

Διαβάστε περισσότερα

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ (Τμήματα Υπολογιστή) ΕΚΠΑΙΔΕΥΤΗΣ:ΠΟΖΟΥΚΙΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ ΤΜΗΜΑΤΑ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ Κάθε ηλεκτρονικός υπολογιστής αποτελείται

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ

ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ ΠΕΡΙΕΧΟΜΕΝΑ ΚΕΦΑΛΑΙΟ I: ΕΙΣΑΓΩΓΗ ΣΤΑ ΗΛΕΚΤΡΟΝΙΚΑ 1.1 ΕΙΣΑΓΩΓΗ ΣΤΑ ΑΝΑΛΟΓΙΚΑ ΗΛΕΚΤΡΟΝΙΚΑ 1 1.1.1 Αναλογικά σήματα 1 1.1.2 Οι αντιστάσεις 3 1.1.3 Οι πυκνωτές 7 1.1.4 Τα πηνία 11 1.1.5 Οι δίοδοι 13 1.1.6

Διαβάστε περισσότερα

Μαλούτα Θεανώ Σελίδα 1

Μαλούτα Θεανώ Σελίδα 1 ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Α' ΛΥΚΕΙΟΥ ΕΝΟΤΗΤΑ 1η ΕΡΩΤΗΣΕΙΣ ΘΕΩΡΙΑΣ 1. Τι ονομάζουμε υλικό και τι λογισμικό ενός υπολογιστικού συστήματος; 2. Τι είναι α) η μητρική πλακέτα ( motherboard), β) η κεντρική μονάδα

Διαβάστε περισσότερα

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ )

Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ ) Κεφάλαιο 7 ο Βασικές Έννοιες Προγραμματισμού (σελ. 147 159) Για τις γλώσσες προγραμματισμού πρέπει να έχουμε υπόψη ότι: Κάθε γλώσσα προγραμματισμού σχεδιάζεται για συγκεκριμένο σκοπό, δίνοντας ιδιαίτερη

Διαβάστε περισσότερα

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB

Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Χρονικές σειρές 1 ο μάθημα: Εισαγωγή στη MATLAB Εαρινό εξάμηνο 2018-2019 Τμήμα Μαθηματικών ΑΠΘ Διδάσκουσα: Αγγελική Παπάνα Μεταδιδακτορική Ερευνήτρια Πολυτεχνική σχολή, Α.Π.Θ. & Οικονομικό Τμήμα, Πανεπιστήμιο

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών Τύπων. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Βασική δομή ενός προγράμματος

Διαβάστε περισσότερα

Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου

Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου ΚΕΦΑΛΑΙΟ 1 Φουκαράκη Χρυσούλα - ΓΕΛ Γαζίου Υπολογιστικά συστήματα σχεδιάστηκαν για να καλύψουν συγκεκριμένες ανάγκες σε συγκεκριμένη χρονική στιγμή και βοηθούν στη συνολική πρόοδο της τεχνολογίας Φουκαράκη

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL

ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PASCAL 8.1. Εισαγωγή ΚΕΦΑΛΑΙΟ 8 Η ΓΛΩΣΣΑ PACAL Πως προέκυψε η γλώσσα προγραμματισμού Pascal και ποια είναι τα γενικά της χαρακτηριστικά; Σχεδιάστηκε από τον Ελβετό επιστήμονα της Πληροφορικής Nicklaus Wirth to

Διαβάστε περισσότερα

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας

Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας Μάθημα 4: Κεντρική Μονάδα Επεξεργασίας 4.1 Γενικά Ο υπολογιστής επεξεργάζεται δεδομένα ακολουθώντας βήμα βήμα, τις εντολές ενός προγράμματος. Το τμήμα του υπολογιστή, που εκτελεί τις εντολές και συντονίζει

Διαβάστε περισσότερα

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ

2ο ΓΕΛ ΑΓ.ΔΗΜΗΤΡΙΟΥ ΑΕΠΠ ΘΕΟΔΟΣΙΟΥ ΔΙΟΝ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΠΡΟΣΟΧΗ ΣΤΑ ΠΑΡΑΚΑΤΩ ΣΤΑΘΕΡΕΣ είναι τα μεγέθη που δεν μεταβάλλονται κατά την εκτέλεση ενός αλγόριθμου. Εκτός από τις αριθμητικές σταθερές (7, 4, 3.5, 100 κλπ), τις λογικές σταθερές (αληθής και ψευδής)

Διαβάστε περισσότερα

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ

Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ Ενότητα 2 : Ζωγραφίζοντας με το ΒΥΟΒ -1- Ενότητα 2. Ζωγραφίζοντας με το ΒΥΟΒ Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα α. Θέση και προσανατολισμός της μορφής Η θέση της κάθε μορφής στο σκηνικό προσδιορίζεται

Διαβάστε περισσότερα

Εφαρμογές Σειριακής Επικοινωνίας

Εφαρμογές Σειριακής Επικοινωνίας Εφαρμογές Σειριακής Επικοινωνίας Εισαγωγή Στο μάθημα αυτό θα μάθουμε πώς να χρησιμοποιούμε την βιβλιοθήκη serial για την επικοινωνία από την πλατφόρμα Arduino πίσω στον υπολογιστή μέσω της θύρας usb. Τι

Διαβάστε περισσότερα

Προγραμματισμο ς σε Arduino

Προγραμματισμο ς σε Arduino Προγραμματισμο ς σε Arduino Arduino UNO & Innoesys Educational Shield www.devobox.com Ηλεκτρονικά Εξαρτήματα & Υλικά Κατασκευής Πρωτοτύπων Λέανδρου 79, 10443, Κολωνός +30 210 51 55 513, info@devobox.com

Διαβάστε περισσότερα

1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα.

1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα. 1. Τι ονομάζουμε αλγόριθμο; Δώστε παράδειγμα. ΑΠΑΝΤΗΣΗ Ορισμός: Αλγόριθμος είναι μια πεπερασμένη σειρά ενεργειών, αυστηρά καθορισμένων και εκτελέσιμων σε πεπερασμένο χρόνο, που στοχεύουν στην επίλυση ενός

Διαβάστε περισσότερα

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή

Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή Κεφάλαιο 1.5: Τα βασικά μέρη ενός υπολογιστή 1.5.1 Ανάλυση των μερών ενός υπολογιστή Μονάδα συστήματος Είναι το κουτί του υπολογιστή το οποίο φαίνεται αρκετά συμπαγές, αλλά στην πραγματικότητα αποτελείται

Διαβάστε περισσότερα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 2.4 Βασικές συνιστώσες/εντολές ενός αλγορίθμου 2.4.1 Δομή ακολουθίας ΚΕΦΑΛΑΙΟ 7 7.1 7.9 Σταθερές (constants): Προκαθορισμένες τιμές που παραμένουν

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα Ενότητα: ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ ARDUINO Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Τμήμα Μηχανικών Πληροφορικής και Τηλεπικοινωνιών Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών

Διαβάστε περισσότερα

Κεφάλαιο 1.6: Συσκευές αποθήκευσης

Κεφάλαιο 1.6: Συσκευές αποθήκευσης Κεφάλαιο 1.6: Συσκευές αποθήκευσης 1.6.1 Συσκευές αποθήκευσης Μνήμη τυχαίας προσπέλασης - RAM Η μνήμη RAM (Random Access Memory Μνήμη Τυχαίας Προσπέλασης), κρατεί όλη την πληροφορία (δεδομένα και εντολές)

Διαβάστε περισσότερα

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ

Τετάρτη 5-12/11/2014. ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ Τετάρτη 5-12/11/2014 ΣΗΜΕΙΩΣΕΙΣ 3 ου και 4 ου ΜΑΘΗΜΑΤΟΣ ΕΙΔΙΚΟΤΗΤΑ: ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΘΗΜΑ: ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Α ΕΞΑΜΗΝΟ ΕΚΠΑΙΔΕΥΤΗΣ: ΤΡΟΧΙΔΗΣ ΠΑΝΑΓΙΩΤΗΣ 1. Παράσταση και οργάνωση δεδομένων

Διαβάστε περισσότερα

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή

Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή 1 Είναι το «μυαλό» του υπολογιστή μας. Αυτός κάνει όλους τους υπολογισμούς και τις πράξεις. Έχει δική του ενσωματωμένη μνήμη, τη λεγόμενη κρυφή μνήμη(cache). Η cache είναι πολύ σημαντική, πολύ γρήγορη,

Διαβάστε περισσότερα

ΕΝΟΤΗΤΑ 5 Αναλογικά σήματα

ΕΝΟΤΗΤΑ 5 Αναλογικά σήματα ΕΝΟΤΗΤΑ 5 Αναλογικά σήματα Σκοπός και περίγραμμα της Ενότητας 5 Σκοπός της παρουσίασης Να δώσουμε τις βασικές ιδέες για τα αναλογικά σήματα και την χρήση διαφορετικών ειδών περιφερειακών Σύνοψη Επεξήγηση

Διαβάστε περισσότερα

ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017)

ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017) ΑΣΚΗΣΗ 1 (22 Νοεμβρίου 2017) Περιγραφή της Άσκησης Ο σκοπός της πρώτης άσκησης είναι κυρίως η εξοικείωση με το περιβάλλον προγραμματισμού του Arduino, γι αυτό και δεν είναι ιδιαίτερα σύνθετη. Αρχικά, θα

Διαβάστε περισσότερα

3 ο Εργαστήριο Μεταβλητές, Τελεστές

3 ο Εργαστήριο Μεταβλητές, Τελεστές 3 ο Εργαστήριο Μεταβλητές, Τελεστές Μια μεταβλητή έχει ένα όνομα και ουσιαστικά είναι ένας δείκτης σε μια συγκεκριμένη θέση στη μνήμη του υπολογιστή. Στη θέση μνήμης στην οποία δείχνει μια μεταβλητή αποθηκεύονται

Διαβάστε περισσότερα

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός

Δομές Ακολουθίας- Επιλογής - Επανάληψης. Δομημένος Προγραμματισμός Δομές Ακολουθίας- Επιλογής - Επανάληψης Δομημένος Προγραμματισμός 1 Βασικές Έννοιες αλγορίθμων Σταθερές Μεταβλητές Εκφράσεις Πράξεις Εντολές 2 Βασικές Έννοιες Αλγορίθμων Σταθερά: Μια ποσότητα που έχει

Διαβάστε περισσότερα

Το υλικό του υπολογιστή

Το υλικό του υπολογιστή Το υλικό του υπολογιστή Ερωτήσεις 1. Τι αντιλαμβάνεστε με τον όρο υλικό; Το υλικό(hardware) αποτελείται από το σύνολο των ηλεκτρονικών τμημάτων που συνθέτουν το υπολογιστικό σύστημα, δηλαδή από τα ηλεκτρονικά

Διαβάστε περισσότερα

Φυσικές και τεχνητές γλώσσες. Το αλφάβητο της ΓΛΩΣΣΑΣ, Τύποι Δεδομένων. Σταθερές, Μεταβλητές, Τελεστές, Συναρτήσεις, Δομή Προγράμματος

Φυσικές και τεχνητές γλώσσες. Το αλφάβητο της ΓΛΩΣΣΑΣ, Τύποι Δεδομένων. Σταθερές, Μεταβλητές, Τελεστές, Συναρτήσεις, Δομή Προγράμματος Φυσικές και τεχνητές γλώσσες. Το αλφάβητο της ΓΛΩΣΣΑΣ, Τύποι Δεδομένων. Σταθερές, Μεταβλητές, Τελεστές, Συναρτήσεις, Δομή Προγράμματος Ενότητες βιβλίου: 6.3, 7.1-7.6, 7.10, 8.1 Ώρες διδασκαλίας: 2 Φυσικές

Διαβάστε περισσότερα

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας

Μάθημα 3.2: Κεντρική Μονάδα Επεξεργασίας Κεφάλαιο 3 ο Αρχιτεκτονική Υπολογιστών Μάθημα 3.: Κεντρική Μονάδα Επεξεργασίας Όταν ολοκληρώσεις το κεφάλαιο θα μπορείς: Να σχεδιάζεις την εσωτερική δομή της ΚΜΕ και να εξηγείς τη λειτουργία των επιμέρους

Διαβάστε περισσότερα

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ

2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 2 ΟΥ και 7 ΟΥ ΚΕΦΑΛΑΙΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΑΛΓΟΡΙΘΜΩΝ και ΔΟΜΗ ΑΚΟΛΟΥΘΙΑΣ 2.1 Να δοθεί ο ορισμός

Διαβάστε περισσότερα

Εργαστήριο 9 Συναρτήσεις στη PASCAL. Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός

Εργαστήριο 9 Συναρτήσεις στη PASCAL. Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός Εργαστήριο 9 Συναρτήσεις στη PASCAL Η έννοια του κατακερματισμού. Συναρτήσεις. Σκοπός 7.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Η έννοια της συνάρτησης ως υποπρογράμματος είναι τόσο βασική σε όλες τις γλώσσες προγραμματισμού,

Διαβάστε περισσότερα

Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές. Εισαγωγή στο Arduino. Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών

Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές. Εισαγωγή στο Arduino. Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών Μετρήσεις και συλλογή δεδομένων (Data acquisition) με μικροελεγκτές Εισαγωγή στο Arduino Ηλεκτρομηχανολογικός εξοπλισμός διεργασιών Τι είναι Μικροελεγκτής; Ηλεκτρονική συσκευή που διαχειρίζεται ηλεκτρονικά

Διαβάστε περισσότερα

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς

Τμήμα Λογιστικής. Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές. Μάθημα 8. 1 Στέργιος Παλαμάς ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Τμήμα Λογιστικής Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Μάθημα 8 Κεντρική Μονάδα Επεξεργασίας και Μνήμη 1 Αρχιτεκτονική του Ηλεκτρονικού Υπολογιστή Μονάδες Εισόδου Κεντρική

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 7 ο. Έτσι ο προγραµµατισµός µε τη ΓΛΩΣΣΑ εστιάζεται στην ανάπτυξη του αλγορίθµου και τη µετατροπή του σε σωστό πρόγραµµα.

ΚΕΦΑΛΑΙΟ 7 ο. Έτσι ο προγραµµατισµός µε τη ΓΛΩΣΣΑ εστιάζεται στην ανάπτυξη του αλγορίθµου και τη µετατροπή του σε σωστό πρόγραµµα. ΚΕΦΑΛΑΙΟ 7 ο 1. Επιλογή της κατάλληλης γλώσσας προγραµµατισµού Εκατοντάδες γλώσσες προγραµµατισµού χρησιµοποιούνται όπως αναφέρθηκε σήµερα για την επίλυση των προβληµάτων µε τον υπολογιστή, τη δηµιουργία

Διαβάστε περισσότερα

7. Βασικά στοιχεία προγραµµατισµού.

7. Βασικά στοιχεία προγραµµατισµού. 7. Βασικά στοιχεία προγραµµατισµού. ΗΜ01-Θ1Γ Δίνονται οι παρακάτω έννοιες: 1. Λογικός τύπος δεδοµένων 2. Επιλύσιµο 3. Ακέραιος τύπος δεδοµένων 4. Περατότητα 5. Μεταβλητή 6. Ηµιδοµηµένο 7. Πραγµατικός τύπος

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ - ΓΛΩΣΣΑ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ - ΓΛΩΣΣΑ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Τεχνικές Σχεδίασης Αλγορίθμων Εισαγωγή στον Προγραμματισμό - ΓΛΩΣΣΑ Επιμέλεια: Ομάδα Διαγωνισμάτων από Το στέκι των πληροφορικών ο Θέμα 1 Α. α) Ποια είναι

Διαβάστε περισσότερα

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος

Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος Κων/νος Φλώρος Βασικοί τύποι δεδομένων (Pascal) ΕΠΑ.Λ Αλίμου Γ Πληροφορική Δομημένος Προγραμματισμός (Ε) Σχολ. Ετος 2012-13 Κων/νος Φλώρος Απλοί τύποι δεδομένων Οι τύποι δεδομένων προσδιορίζουν τον τρόπο παράστασης των

Διαβάστε περισσότερα

Εφαρμογές Αναλογικών Ε/Ε PWM (pulse Width Modulation)

Εφαρμογές Αναλογικών Ε/Ε PWM (pulse Width Modulation) Εφαρμογές Αναλογικών Ε/Ε PWM (pulse Width Modulation) Εισαγωγή Σε αυτή την ενότητα θα δούμε εφαρμογές που χρησιμοποιούν τις αναλογικές Εισόδους/Εξόδους του Arduino ή την τεχνική PWM. Ψηφιακό vs Αναλογικό

Διαβάστε περισσότερα

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 ΑΠΑΝΤΗΣΕΙΣ

ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 ΑΠΑΝΤΗΣΕΙΣ ΥΠΟΥΡΓΕΙΟ ΠΑΙΔΕΙΑΣ ΚΑΙ ΠΟΛΙΤΙΣΜΟΥ ΔΙΕΥΘΥΝΣΗ ΑΝΩΤΕΡΗΣ ΚΑΙ ΑΝΩΤΑΤΗΣ ΕΚΠΑΙΔΕΥΣΗΣ ΥΠΗΡΕΣΙΑ ΕΞΕΤΑΣΕΩΝ ΠΑΓΚΥΠΡΙΕΣ ΕΞΕΤΑΣΕΙΣ 2006 Μάθημα : Μικροϋπολογιστές Τεχνολογία Τ.Σ. Ι, Θεωρητικής κατεύθυνσης Ημερομηνία

Διαβάστε περισσότερα

ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή

ΠΛΗ10 Κεφάλαιο 2. ΠΛΗ10 Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή Εισαγωγή στην Πληροφορική: Τόμος Α Κεφάλαιο: 2 2.1: Bασική Δομή του Υπολογιστή Στόχοι Μαθήματος: Να γνωρίσετε τις βασικές λειτουργίες ενός Η/Υ. Να γνωρίσετε τις έννοιες δεδομένα, πληροφορία, επεξεργασία,

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΜΗΜΑ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΣΤΗ ΔΙΟΙΚΗΣΗ ΚΑΙ ΣΤΗΝ ΟΙΚΟΝΟΜΙΑ 2 Ο ΜΑΘΗΜΑ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΑΠΟΣΤΟΛΙΑ ΠΑΓΓΕ Υπολογιστής Συνοπτικό λεξικό Οξφόρδης -> «ηλεκτρονική υπολογιστική μηχανή»

Διαβάστε περισσότερα

Ενσωματωμένα Συστήματα

Ενσωματωμένα Συστήματα Ενσωματωμένα Συστήματα για εφαρμογές πραγματικού χρόνου Εφαρμογές με τον Arduino Ιωάννης Καλόμοιρος Αναπληρωτής Καθηγητής Τμήμα Μηχανικών Πληροφορικής Μάθημα 10 1 Συναρτήσεις αναλογικής εξόδου: PWM Το

Διαβάστε περισσότερα

Ενότητα Β1 κεφ.2 ο «Σο Εσωτερικό του Τπολογιστή»

Ενότητα Β1 κεφ.2 ο «Σο Εσωτερικό του Τπολογιστή» 1 2 1) ΚΟΤΣΙ ΤΠΟΛΟΓΙΣΗ (computer case): το κύριο κουτί που περικλείει τις βασικές συσκευές του υπολογιστή (επεξεργαστή, αποθήκες, RAM). 2) ΜΗΣΡΙΚΗ (motherboard): η πιο μεγάλη κάρτα πάνω στην οποία βρίσκεται

Διαβάστε περισσότερα

Βασικές Έννοιες της Πληροφορικής

Βασικές Έννοιες της Πληροφορικής Βασικές Έννοιες της Πληροφορικής Ηλεκτρονικός Υπολογιστής Αυτόματη ηλεκτρονική μηχανή που δέχεται, φυλάσσει, επαναφέρει, επεξεργάζεται και παρουσιάζει πληροφορίες σύμφωνα με προκαθορισμένες εντολές. Δεδομένα

Διαβάστε περισσότερα

ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ

ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ ΕΦΑΡΜΟΓΕΣ ΤΗΛΕΠIΚΟΙΝΩΝΙΑΚΩΝ ΔΙΑΤΑΞΕΩΝ ΟΙΚΟΝOΜΟΥ ΧΑΡΗΣ (6424) ΦΩΚΟΣ ΝΙΚΟΛΑΟΣ(6592) ΚΑΜΒΥΣΗΣ ΝΙΚΟΛΑΟΣ(7178) 2013-2014 ΠΕΡΙΕΧΟΜΕΝΑ Σκοπός της εργασίας Ανάλυση Arduino Uno Δημιουργία πληροφορίας Αποστολή και

Διαβάστε περισσότερα

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. Δρ.

Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας. Πληροφορική Ι ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ. Δρ. Τμήμα Χρηματοοικονομικής & Ελεγκτικής ΤΕΙ Ηπείρου Παράρτημα Πρέβεζας Πληροφορική Ι ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Δρ. Γκόγκος Χρήστος Επιστήμη των υπολογιστών Computer Science (CS) ή Information

Διαβάστε περισσότερα

ΜΙΚΡΟΕΛΕΓΚΤΗΣ PICAXE 18M2

ΜΙΚΡΟΕΛΕΓΚΤΗΣ PICAXE 18M2 ΘΕΜΑ : ΜΙΚΡΟΕΛΕΓΚΤΗΣ PICAXE 18M2 ΔΙΑΡΚΕΙΑ:? περίοδος Οι μικροελεγκτές είναι υπολογιστές χωρίς περιφερειακά, σε ολοκληρωμένα κυκλώματα. Μπορούν να συνδυάσουν αρκετές από τις βασικές λειτουργίες άλλων ειδικών

Διαβάστε περισσότερα

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός

Εργαστήριο 10 Πίνακες. Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός Εργαστήριο 10 Πίνακες Πίνακες. Η έννοια της δόμησης δεδομένων στη PASCAL. Σκοπός 10.1 ΕΠΙΔΙΩΞΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Σ αυτή την άσκηση, εξετάζουμε μία βασική δομή του προγραμματισμού, το πίνακα. Στις μέχρι τώρα

Διαβάστε περισσότερα

Τα ηλεκτρονικά μέρη του ρομπότ Επιλογή των μονάδων εισόδου εξόδου ανάλογα το μοντέλο που θέλουμε να κατασκευάσουμε

Τα ηλεκτρονικά μέρη του ρομπότ Επιλογή των μονάδων εισόδου εξόδου ανάλογα το μοντέλο που θέλουμε να κατασκευάσουμε 1 Τα ηλεκτρονικά μέρη του ρομπότ Επιλογή των μονάδων εισόδου εξόδου ανάλογα το μοντέλο που θέλουμε να κατασκευάσουμε 2 Η υπολογιστική μονάδα Είσοδοι για τους κινητήρες Είσοδος για USB stick USB πόρτα για

Διαβάστε περισσότερα

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις

3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 3ο σετ σημειώσεων - Πίνακες, συμβολοσειρές, συναρτήσεις 5 Απριλίου 01 1 Πίνακες Είδαμε ότι δηλώνοντας μία μεταβλητή κάποιου συγκεκριμένου τύπου δεσμεύουμε μνήμη κατάλληλη για να αποθηκευτεί μία οντότητα

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ

ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ ΠΛΗΡΟΦΟΡΙΚΗ: ΥΠΟΛΟΓΙΣΤΕΣ & ΤΕΧΝΟΛΟΓΙΕΣ ΔΙΑΔΙΚΤΥΟΥ kv@hua.gr Στόχος Μαθήματος Εισαγωγή σε Βασικούς Όρους Πληροφορικής και Τηλεματικής. Εφαρμογές Τηλεματικής. Αναφορά στις κοινωνικές επιπτώσεις των Υπολογιστών.

Διαβάστε περισσότερα

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε

Διαβάστε περισσότερα