[Powered by Google Translate] CHRISTOPHER ΒΑΡΘΟΛΟΜΑΙΟΣ: Έτσι, έχετε ακούσει πιθανώς ένα πολλά για το Arduino, και όλα τα λαμπρή τρόπους θα μπορούσε να είναι προγραμματίζονται με τη χρήση C για να λαμβάνετε είσοδο από περιφερειακές συσκευές αισθητήρες όπως κουμπιά, και κουμπιά. Ή εμφάνιση και τον έλεγχο της παραγωγής με φυσικά συστατικά όπως ηχεία φώτα,, servos και κινητήρες. Αλλά τι είναι ένα Arduino, πραγματικά; Μια Arduino είναι ένας τύπος του μικροελεγκτή, και μικροελεγκτής μπορεί να θεωρηθεί ως ένα πολύ μειωθεί υπολογιστή που περιέχει συστατικά όπως ένα επεξεργαστής, μικρές ποσότητες της μνήμης για την αποθήκευση απλών προγράμματα, και διάφορα ακροδέκτες εισόδου / εξόδου που παράγουν ένα ηλεκτρικό ρεύμα ως αποτέλεσμα της οδηγίες στο πρόγραμμά σας. Οι επαφές σε ένα Arduino είναι εδώ για να διασύνδεση με το φυσικά συστατικά, όπως τα LED, ηχεία, αισθητήρες, κινητήρες, και πολλά άλλα. Αυτό είναι ένα Arduino Uno R3 η οποία θα πρέπει να χρησιμοποιούν καθ 'όλη τη διάρκεια. Σε αυτό το βίντεο, θα πρέπει να πηγαίνει πέρα ​​από μερικά από τα κύρια συνιστώσες του συμβουλίου αυτού. Ωστόσο, αν θέλετε περισσότερες πληροφορίες, τις οποίες ήθελα να συστήσω μπορείτε να διαβάσετε, επισκεφθείτε το σύνδεσμο για το Arduino Uno είναι γεμάτο προδιαγραφή. Δύναμη για το διοικητικό συμβούλιο μπορεί να λάβει από USB, εξωτερικό AC σε DC τροφοδοτικά, ή από συνδέσμους της μπαταρίας. Γι 'αυτούς τους ασκήσεις βίντεο, θα πρέπει να χρησιμοποιούν USB για την εξουσία. Αν σας ενδιαφέρει σε άλλους τρόπους για την παροχή ενέργειας για να σας Πλακέτα Arduino ή θέλετε να μάθετε περισσότερα σχετικά με τις καρφίτσες εξουσία, ανατρέξτε στην ενότητα δύναμη των προδιαγραφών παρεχόμενο σύνδεσμο. Στη συνέχεια, υπάρχουν δύο κύρια τμήματα καρφίτσα σε ένα Arduino ότι εμείς θα χρησιμοποιήσει για την παροχή τάσης στα συστατικά μας - ψηφιακών και αναλογικών πινέζες ακίδες εισόδου. Πριν προχωρήσουμε περαιτέρω, ας κατανοήσουν αυτούς τους δύο όρους. Αναλογική πινέζες εισόδου είναι για εξαρτήματα όπως πόμολα, που δημιουργούν αναλογικά σήματα. Ένα κομβίο μπορεί να παρέχει διαφορετικές ποσότητες της αντίστασης στην τάση μεταξύ των δύο καρφίτσες που είναι συνδεδεμένο με. Πάρτε, για παράδειγμα, ένα φως dimmer. Καθώς το κομβίο συστρέφεται σε μία κατεύθυνση, το φως θα να γίνει πιο φωτεινή, επειδή μειώνει τις αντίστασης. Αυτό παρέχει ένα ισχυρότερο ηλεκτρικό ρεύμα για τη συστατικό, το οποίο καταλήγει σε ένα φωτεινότερο φως. Τώρα οι ψηφιακές καρφίτσες είναι ελαφρώς διαφορετική σε ότι παράγουν ένα ψηφιακό σήμα που εξαρτάται από το ποσότητα της τάσης στα άκρα των πείρων. Ψηφιακά σήματα για το Arduino είναι είτε σε 5 βολτ, ή γειωμένο σημαίνει μακριά, ή μηδέν βολτ. Πάρτε για παράδειγμα ένα διακόπτη φώτων. Ένας διακόπτης έχει δύο τιμές - on και off. Όταν ενεργοποιείτε το φως σχετικά με τη χρήση του διακόπτη, είστε παρέχοντας πλήρη εξουσία για το φως. Λοιπόν, σχετικά με το θέμα των ψηφιακών και αναλογικών, είμαι σίγουρος έχετε παρατηρήσει μέχρι τώρα το ακρωνύμιο PWM κάτω από την ψηφιακή pin τμήμα. Αυτό σημαίνει διαμόρφωση εύρους παλμού. PWM χειρίζεται την τάση την πάροδο του χρόνου για την παραγωγή εφέ διαμόρφωσης που είναι παρόμοιες με εκείνες των αναλογικών πινέζες. Για παράδειγμα, με τη στροφή ένα φως και να σβήνουν γρήγορα για διαφορετικά μήκη του χρόνου, μπορεί να ελέγχει την φωτός φωτεινότητα. Έτσι, ίσως να αναρωτιέστε, αν το μόνο που έχετε να δεν έχει παράσχει κάποια τάση σε κάποιο συστατικό για να λειτουργήσει, γιατί έχουν ακόμη και ένα μικροελεγκτή; Λοιπόν, ας ρίξουμε μια υψηλού επιπέδου ματιά σε ένα μικροελεγκτή που μπορούμε να αλληλεπιδρούν με την καθημερινή - το ξυπνητήρι. Το ξυπνητήρι έχει πολλές εισόδους, για παράδειγμα τα κουμπιά, οι οποίες χρησιμοποιούνται για να αλληλεπιδρούν με το πρόγραμμα ξυπνητήρι. Επίσης, έχει εξόδους που είναι το φως που εκπέμπουν τα κυκλώματα που ονομάζονται επτά οθόνες τμήμα που δείχνουν την ώρα. Αυτό είναι όλα ελέγχονται από ένα πρόγραμμα που περιέχεται σε ένα μνήμη του μικροελεγκτή. Τώρα, ας ρίξουμε μια ματιά σε ένα σενάριο και να δούμε αν μπορούμε να αναπαράγουν το ξυπνητήρι με αυτό το Arduino. Είστε έτοιμοι να πάνε για ύπνο, αλλά θα πρέπει να σας συναγερμό για να ξυπνήσει. Γνωρίζουμε ότι με τη χρήση μερικών κουμπιών μπορούμε να θέσουμε κάποια μεταβλητή, το χρόνο, το οποίο δίνει στο πρόγραμμα μια κατάσταση που πρέπει να πληρούν. Όπως, όταν αυτή τη φορά είναι αλήθεια, το πρόγραμμα θα πρέπει να στείλετε ένα σήμα σε ένα άλλο πείρο, που είναι συνδεδεμένος με ένα ηχείο. Και όταν αυτό το σήμα λαμβάνεται από το ηχείο, αυτό θα πρέπει να διαδραματίσει ένα φοβερό ήχο. Ας χρησιμοποιήσουμε ένα απλό κύκλωμα για να σας δώσει κάποιο πλαίσιο σε ό, τι Είμαι μιλάμε. Έτσι τώρα που ξυπνητήρι σας έχει ρυθμιστεί, η κατάστασή σας είναι πλέον αποθηκευμένη στη μνήμη του προγράμματος. Και μετά από μόλις εννέα δευτερόλεπτα ύπνο, ακούτε το φοβερό συναγερμού ηχεί μακριά. Πάω να προχωρήσει και plug-in συναγερμού μας εδώ. Τώρα, δεν θέλουμε να σηκωθεί αρκετά ακόμα, έτσι αισθανόμαστε για την αναβάλετε το κουμπί. Αφήνουμε τη στάση ύπνου φοιτητής, ή να διακόψει αυτό το απαίσιο ήχος συναγερμού, με μόλις το χτύπημα αυτό το κουμπί. Αλλά τι συμβαίνει πραγματικά όταν το πρόγραμμα του μικροελεγκτή του λαμβάνει ένα σήμα από το κουμπί snooze; Λοιπόν, όταν το κουμπί πατηθεί snooze, ένα σήμα είναι λάβει σε μια διαφορετική καρφίτσα. Σε γενικές γραμμές, όταν το πρόγραμμα λαμβάνει αυτήν την είσοδο από το pin αντιδρά καλώντας κάποια λειτουργία για να καθυστερήσει ή να κοιμηθεί, το σήμα που εστάλη στο pin ομιλητής μας. Αυτή η καθυστέρηση ή ο ύπνος είναι για κάποιο σταθερό χρόνο που συνήθως είναι περίπου εννέα λεπτά, ή σε Arduino όρους, 540.000 χιλιοστά του δευτερολέπτου. Εάν το ξυπνητήρι δεν απενεργοποιείται πριν από το snooze χρονόμετρο εξαντλεί, την κατάσταση του προγράμματος θα στείλει ένα άλλο σηματοδοτούν να pin του ομιλητή, μετατρέποντας έτσι ο συναγερμός και πάλι. Τώρα, αυτό που κάνει Arduino ειδικά σε CS50 είναι της περιβάλλον ανάπτυξης χρησιμοποιεί τη γλώσσα C, δίνοντάς σας τη δύναμη να εφαρμόσουν τις γνώσεις που έχει αποκτηθεί σε μια πιο άμεση hands-on τρόπο. Παρά το γεγονός ότι δεν ασχολείται με τα λοιπά ειδικά στις πινέζες του που ασχολούνται με το Arduino, σας συνιστώ να επισκεφθείτε το προδιαγραφές και να διαβάσετε σχετικά με τις δυνατότητες περαιτέρω τους. Σε ένα άλλο βίντεο, που θα διερευνήσει το Arduino περιβάλλον ανάπτυξης για τη συσκευή CS50 και γράψτε μας πρώτη εφαρμογή μικροελεγκτή. Το όνομά μου είναι Christopher Βαρθολομαίος, αυτό είναι CS50.