ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887



Σχετικά έγγραφα
WDT και Power Up timer

Σπύρος Καζαρλής, Χειμώνας

ΑΝΑLOG TO DIGITAL CONVERTER (ADC)

Καταχωρητής STATUS. IRP: Bit επιλογής περιοχής μνήμης (Bank) για την έμμεση διευθυνσιοδότηση 1= Bank2, Bank3 0= Bank0, Bank1

PWM (Pulse Width Modulation) Διαμόρφωση εύρους παλμών

ΠΑΡΟΥΣΙΑΣΗ ΤΟΥ ΕΡΓΑΣΤΗΡΙΑΚΟΥ ΜΑΘΗΜΑΤΟΣ «ΣΥΣΤΗΜΑΤΑ ΨΗΦΙΑΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ» ή ΠΡΟΓΡΑΜΜΑΤΙΖΟΝΤΑΣ ΤΟΝ ΜΙΚΡΟΕΛΕΓΚΤΉ PIC16F877 ΤΗΣ MICROCHIP TECHNOLOGY INC

Ι ΑΣΚΩΝ ΚΑΘΗΓΗΤΗΣ: ΚΑΘΗΓΗΤΗΣ ΕΦΑΡΜΟΓΩΝ. ΤΕΙ ΥΤΙΚΗΣ ΜΑΚΕ ΟΝΙΑΣ

ΔΙΑΚΟΠΕΣ PΙC16F887(INTERRUPTS) Όταν σηματοδοτηθεί μια διακοπή στον PIC16F887, ο έλεγχος του προγράμματος μεταφέρεται στο τμήμα κώδικα που βρίσκεται

ΡΟΜΠΟΤΙΚΗ. ΕΡΓΑΣΙΑ ΠΑΝΩ ΣΤΗΝ ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΝΧΤ ΚΑΙ ΤΑ ΠΡΩΤΟΚΟΛΛΑ ΕΠΙΚΟΙΝΩΝΙΑΣ BLUETOOTH, I2C και serial communication

ΕΡΓΑΣΤΗΡΙΑΚΗ ΑΣΚΗΣΗ 1

Εφαρμογές μικροελεγκτών

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. ΚΕΦΑΛΑΙΟ 4ο ΜΝΗΜΕΣ. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17

Καθολική Σειριακή Διεπιφάνεια (Universal Serial Interface)

ΕΙΣΑΓΩΓΗ. 1. Το λογισμικό MPLAB. 2. Υλικό προγραμματισμού και αποσφαλμάτωσης

ΡΟΜΠΟΤΙΚΗ ΜΕ ARDUINO - ARDUINO ΚΑΙ ΗΧΟΣ I. Δημιουργός: Δρ.Αθανάσιος Μπαλαφούτης Επιβλέπων: Πετεινάτος Ηλίας Υποψήφιος Διδάκτωρ

ΕΝΟΤΗΤΑ 10: ΟΔΗΓΗΣΗ ΚΙΝΗΤΗΡΩΝ

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΑΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ

Είναι το πρωτόκολλο RS232 που χρησιμοποιείται στις σειριακές θύρες COM με τη διαφορά ότι εκτελείται σε επίπεδο τάσεων TTL. 2

Εντολές PIC16F rrf <όνομα καταχωρητή>,a a=f ή a=w H εντολή πραγματοποιεί ολίσθηση προς τα δεξιά του καταχωρητή που ακολουθεί μέσω κρατουμένου

Ενσωµατωµένα Υπολογιστικά Συστήµατα (Embedded Computer Systems)

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

Η συχνότητα f των παλµών 0 και 1 στην έξοδο Q n είναι. f Qn = 1/(T cl x 2 n+1 )

Flip-Flop: D Control Systems Laboratory

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

12. Διακοπές Interrupts (IRQ)

Λογικά σύμβολα των CPU, RAM, ROM και I/O module

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

Ψηφιακή Λογική Σχεδίαση

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΟΙ ΚΑΤΑΧΩΡΗΤΕΣ ΚΑΙ Η ΥΛΟΠΟΙΗΣΗ ΤΟΥΣ ΜΕ FLIP-FLOP ΚΑΙ ΠΥΛΕΣ

Ακολουθιακό κύκλωμα Η έξοδος του κυκλώματος εξαρτάται από τις τιμές εισόδου ΚΑΙ από την προηγούμενη κατάσταση του κυκλώματος

Οδηγώντας μια οθόνη υγρών κρυστάλλων Liquid Crystal Display

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ

; Έλεγχος σημαίας λήψης (RCIF=0: άδειος buffer)

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

; Οι HL δείχνουν την επόµενη θέση µνήµης MVI A, 38H CMP H JNZ DO_FLMEM ; POP B. ; Ανάκτηση καταχωρητών απο το σωρό.

Ακολουθιακό κύκλωμα Η έξοδος του κυκλώματος εξαρτάται από τις τιμές εισόδου ΚΑΙ από την προηγούμενη κατάσταση του κυκλώματος

Μαθαίνοντας το hardware του αναπτυξιακού

Χρ. Καβουσιανός Επίκουρος Καθηγητής

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

ΔΙΑΧΥΤΑ ΚΑΙ ΕΝΣΩΜΑΤΩΜΕΝΑ ΣΥΣΤΗΜΑΤΑ

«Σχεδιασμός Ψηφιακών Συστημάτων σε FPGA» Εαρινό εξάμηνο

Ανάπτυξη Μικρής Αυτόνομης Ρομποτικής Πλατφόρμας Οδηγούμενης μέσω Ασύρματης Σειριακής ιασύνδεσης ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

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

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Γ ΕΠΑΛ 14 / 04 / 2019

Σύγχρονη και Ασύγχρονη Σειριακή Επικοινωνία

2. ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΤΩΝ ΘΥΡΩΝ ΕΙΣΟ ΟΥ/ΕΞΟ ΟΥ ΤΟΥ PIC16F877-ΑΡΙΘΜΗΤΙΚΕΣ ΕΝΤΟΛΕΣ

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ. Τίτλος Μαθήματος. Διαλέξεις - Θεωρητική Διδασκαλία, Εποπτευόμενο Εργαστήριο Επίδειξη, Μελέτες (Projects)

ΑΣΚΗΣΗ 8 ΚΑΤΑΧΩΡΗΤΕΣ - REGISTERS

Ψηφιακά Συστήματα. 7. Κυκλώματα Μνήμης

10. Πληκτρολόγιο matrix 4x4

Ενότητα ΑΡΧΕΣ ΑΚΟΛΟΥΘΙΑΚΗΣ ΛΟΓΙΚΗΣ LATCHES & FLIP-FLOPS

Συστήματα Μικροϋπολογιστών

ΕΙΣΑΓΩΓΗ. Αρχιτεκτονική Η/Υ ΗΜΟΣ ΜΠΟΛΑΝΑΚΗΣ

CTMU. => C = 50pF 10pF = 40 pf. C stray. d (C V ) I= I = C V. C= I t. Ι = dq dt

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

8051 Interrupt Ports. Name Alternate Function

Πανεπιστήμιο Πατρών Τμήμα Φυσικής Εργαστήριο Ηλεκτρονικής. Ψηφιακά Ηλεκτρονικά. Μονάδες Μνήμης και Διατάξεις Προγραμματιζόμενης Λογικής

Ψηφιακά Ηλεκτρονικά. Προαιρετική εργασία

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

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ

Η πρωτεύουσα διάταξη Α, για την αποστολή θερμοκρασιακών δεδομένων μέσω υπέρυθρης ζεύξης.

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

8. Στοιχεία μνήμης. Οι δυο έξοδοι του FF είναι συμπληρωματικές σημειώνονται δε σαν. Όταν αναφερόμαστε στο FF εννοούμε πάντα την κανονική έξοδο Q.

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

ΑΣΚΗΣΗ 9 ΑΣΥΓΧΡΟΝΟΙ ΜΕΤΡΗΤΕΣ (COUNTERS)

Εφαρµογές Πληροφορικής Υπολογιστών. Κεφάλαιο 3 Το υλικό του υπολογιστή

Κεφάλαιο 4 Σύνδεση Μικροεπεξεργαστών και Μικροελεγκτών ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ

ΚΕΦΑΛΑΙΟ 6 ΒΑΣΙΚΑ ΑΚΟΛΟΥΘΙΑΚΑ ΚΥΚΛΩΜΑΤΑ. 6.1 Εισαγωγή

ΗΜΥ 210 ΣΧΕΔΙΑΣΜΟΣ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ. Χειµερινό Εξάµηνο 2016 ΔΙΑΛΕΞΗ 15: Καταχωρητές (Registers)

Διασύνδεση Εισόδου-Εξόδου

Διασυνδετικοί Δίαυλοι. Τι διασυνδέει ένας δίαυλος; Μεταφορά δεδομένων. Διασύνδεση Εισόδου-Εξόδου. Μ.Στεφανιδάκης

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής

ΑΣΚΗΣΗ 7 FLIP - FLOP

ΕΡΓΑΣΤΗΡΙΟ 4 ΕΙΣΑΓΩΓΗ ΣΤΟN ARDUINO: ΨΗΦΙΑΚΗ ΕΙΣΟΔΟΣ/ΕΞΟΔΟΣ

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

Ψηφιακά Συστήματα. 8. Καταχωρητές

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

7.1 Θεωρητική εισαγωγή

K24 Ψηφιακά Ηλεκτρονικά 9: Flip-Flops

3 ΤΕΛΟΣ 1ΗΣ ΑΠΟ 6 ΣΕΛΙ ΕΣ

Έλεγχος με Μικροϋπολογιστές Εργαστήριο ενσωματωμένων συστημάτων

9. ΚΑΤΑΧΩΡΗΤΕΣ (REGISTERS)

Περίληψη. ΗΜΥ-210: Λογικός Σχεδιασµός Εαρινό Εξάµηνο Παράδειγµα: Καταχωρητής 2-bit. Καταχωρητής 4-bit. Μνήµη Καταχωρητών

ΨΗΦΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. ΚΕΦΑΛΑΙΟ 2ο ΚΑΤΑΧΩΡΗΤΕΣ. (c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ17

ΗΜΥ 210: Σχεδιασμός Ψηφιακών Συστημάτων. Καταχωρητές 1

Εργασία στα πλαίσια του εργαστηρίου των Ευφυών Συστηµάτων Ελέγχου. Μελέτη και κατασκευή διάταξης ελέγχου ταχύτητας αυτοκινούµενου οχήµατος.

26-Nov-09. ΗΜΥ 210: Λογικός Σχεδιασμός, Χειμερινό Εξάμηνο Καταχωρητές 1. Διδάσκουσα: Μαρία Κ. Μιχαήλ

Κ. ΕΥΣΤΑΘΙΟΥ, Γ. ΠΑΠΑΔΟΠΟΥΛΟΣ ΠΑΤΡΑ

1. Ηλεκτρικοί κινητήρες- σερβοκινητήρας 2. Ελεγκτές. ΜΠΔ, 9 Ο Εξάμηνο Σάββας Πιπερίδης

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

Μνήμη και Προγραμματίσιμη Λογική

Α. ΣΚΟΔΡΑΣ ΠΛΗ21 ΟΣΣ#2. 14 Δεκ 2008 ΠΑΤΡΑ ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ 2008 Α. ΣΚΟΔΡΑΣ ΧΡΟΝΟΔΙΑΓΡΑΜΜΑ ΜΕΛΕΤΗΣ

Ανάκτηση θερμοκρασιακού πεδίου σε περιστρεφόμενο (εν κινήσει)

ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ.3 ΑΣΥΓΧΡΟΝΟΣ ΔYΑΔΙΚΟΣ ΑΠΑΡΙΘΜΗΤΗΣ.5 ΑΣΥΓΧΡΟΝΟΣ ΔΕΚΑΔΙΚΟΣ ΑΠΑΡΙΘΜΗΤΗΣ.7 ΑΣΥΓΧΡΟΝΟΣ ΔΕΚΑΔΙΚΟΣ ΑΠΑΡΙΘΜΗΤΗΣ ΜΕ LATCH.

ΑΣΚΗΣΗ 9. Tα Flip-Flop

ΤΙΤΛΟΣ ΕΡΓΑΣΤΗΡΙΑΚΗΣ ΑΣΚΗΣΗΣ ΚΑΤΑΧΩΡΗΤΕΣ ΟΛΙΣΘΗΤΕΣ

ΒΑΣΙΚΑ ΑΚΟΛΟΥΘΙΑΚΑ ΚΥΚΛΩΜΑΤΑ

ΣΤΑΤΙΚΕΣ ΚΑΙ ΔΥΝΑΜΙΚΕΣ ΜΝΗΜΕΣ ΤΥΧΑΙΑΣ ΠΡΟΣΠΕΛΑΣΗΣ (Static and Dynamic RAMs). ΔΙΑΡΘΡΩΣΗ ΤΟΥ ΜΑΘΗΜΑΤΟΣ ΘΕΜΑΤΙΚΕΣ ΕΝΟΤΗΤΕΣ

Εργαστηριακές ασκήσεις λογικών κυκλωμάτων 11 A/D-D/A

Transcript:

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 EEPROM: H μνήμη EEPROM (Εlactrically Erasable Programmable Read Only Memory) είναι μία μνήμη η οποία εγγράφεται ηλεκτρικά και διατηρεί τα δεδομένα της ακόμα και μετά την απομάκρυνση της τροφοδοσίας. Επιπλέον η EEPROM μπορεί να επανεγγραφεί χωρίς να είναι απαραίτητο να γίνει πρώτα η διαγραφή της. Μπορεί να χρησιμοποιηθεί σε μια εφαρμογή για την αποθήκευση κάποιου κωδικού ή κάποιου serial number συσκευής. Επίσης εκεί μπορούν να αποθηκευτούν κρίσιμα δεδομένα για μια εφαρμογή ή το status κάποιων λειτουργιών ώστε σε περίπτωση διακοπής τροφοδοσίας ο μικροελεγκτής μετά την επανασύνδεσή της να επαναφέρει την κατάσταση που υπήρχε πριν τη διακοπή.

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 SPI: Serial Peripheral Interface Το SPI είναι ένα σειριακό interface επικοινωνίας με το οποίο επιτρέπεται ταυτόχρονα η αμφίδρομη (full duplex) επικοινωνία ανάμεσα σε μία master συσκευή και σε μία ή περισσότερες slave συσκευές. Τοπολογία:

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 SPI Χρησιμοποιεί 3 ή 4 ακροδέκτες: SLAVE: MASTER: SCK (RC3): serial clock (είσοδος)sck: serial clock (έξοδος) SDI (RC4): serial data in (είσοδος) SDI: serial data in (είσοδος) SDO (RC5): serial data out (έξοδος) SDO: serial data out (έξοδος) SS (RA5): slave select (είσοδος) Η είσοδος SS είναι προαιρετική και χρησιμοποιείται όταν ο master πρέπει να επικοινωνεί με περισσότερες από μία slave συσκευές και στην περίπτωση αυτή ακούει η συσκευή για την οποία ο master ορίζει το SS στο λογικό '0'. Η επικοινωνία ξεκινάει όταν ο master στείλει 8 παλμούς ρολογιού. Με κάθε παλμό στέλνεται και διαβάζεται ένα bit από κάθε συσκευή που μετέχει στην επικοινωνία. Όταν για μία συσκευή δεν απαιτείται να στείλει δεδομένα τότε απλώς στέλνει dummy data. Oι καταχωρητές ειδικής χρήσης που χρησιμοποιούνται για τη ρύθμιση του SPI είναι: SSPSTAT, SSPCON.

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 I 2 C: Inter-Integrated Circuit To I 2 C είναι ένα interface επικοινωνίας με το οποίο επιτρέπεται αμφίδρομη (half duplex) επικοινωνία ανάμεσα σε μία master και μία slave συσκευή οι οποίες είναι συνδεδεμένες πάνω στο bus. Oι καταχωρητές ειδικής χρήσης που χρησιμοποιούνται για τη ρύθμιση του SPI είναι: SSPSTAT, SSPCON, SSPCON2. Τοπολογία:

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 I 2 C Χρησιμοποιεί 2 ακροδέκτες: SLAVE: SCL (RC3): serial clock (είσοδος) SDA (RC4): serial data (είσοδος/έξοδος) MASTER: SCK: serial clock (έξοδος) SDΑ: serial data(είσοδος/έξοδος) Η επικοινωνία ξεκινάει και σταματάει με συγκεκριμένα συμβάντα (events) τα οποία πρέπει αναγνωρίζονται από τις συμβατές με το I 2 C συσκευές. S : Start To Start ή αλλιώς Start bit έχει μέγεθος 1 bit και καθορίζει την έναρξη μιας I 2 C επικοινωνίας. Ως start bit αναγνωρίζεται εκείνο το bit κατά το οποίο παρατηρείται κατερχόμενο μέτωπο στο σήμα SDA ενώ το SCL βρίσκεται σε λογικό '1'. P : Stop To Stop ή αλλιώς Stop bit έχει μέγεθος 1 bit και καθορίζει τον τερματισμό μιας I 2 C επικοινωνίας. Ως stop bit αναγνωρίζεται εκείνο το bit κατά το οποίο παρατηρείται ανερχόμενο μέτωπο στο σήμα SDA ενώ το SCL βρίσκεται σε λογικό '1'.

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 I 2 C R :Repeated Start To Repeated Start έχει μέγεθος 1 bit και καθορίζει την έναρξη μιας I 2 C επικοινωνίας. Ως Repeated start bit αναγνωρίζεται εκείνο το bit κατά το οποίο παρατηρείται κατερχόμενο μέτωπο στο σήμα SDA ενώ το SCL βρίσκεται σε λογικό '1'. Η διαφορά με το S bit είναι ότι με R bit αρχίζει μια νέα επικοινωνία χωρίς να έχει τερματιστεί με P bit η προηγούμενη. Τα δεδομένα στο SDA αλλάζουν πάντοτε κατά τη χρονική στιγμή που το SCL βρίσκεται στο λογικό '0'. Μία τυπική επικοινωνία με I 2 C γίνεται με την εξής διαδικασία: 1. Start bit 2. Aποστολή ενός byte (7-bit διεύθυνση και το 8ο bit R/W) 3. Απελευθέρωση του SDA για acknowleadgement (λογικό '0' από το δέκτη σημαίνει επιβεβαίωση) 4. Αποστολή byte δεδομένων 5. Απελευθέρωση του SDA για acknowleadgement (λογικό '0' από το δέκτη σημαίνει επιβεβαίωση) (Τα βήματα 3 και 4 επαναλαμβάνονται για όσες φορές χρειάζεται) 6. Ρ bit

ΔΙΑΓΡΑΜΜΑ ΧΡΟΝΙΣΜΟΥ ΕΠΙΚΟΙΝΩΝΙΑΣ I 2 C α. Slave reception, β. Slave transmission, γ. Master reception, δ. Master transmission α β γ δ

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 USART : Universal Synchronous Asynchronous Receiver Transmitter Η USART αποτελεί ένα σειριακό interface επικοινωνίας με το οποίο μπορούμε να έχουμε είτε σύγχρονη επικοινωνία ανάμεσα σε μία master συσκευή και σε μία slave ή ασύγχρονη επικοινωνία ανάμεσα σε δύο συσκευές. Οι καταχωρητές ειδικής χρήσης που χρησιμοποιούνται για τη ρύθμιση της USART είναι οι TXSTA, RCSTA, BAUDCTL, SPBRG, SPBRGH, TXREG και RCREG. Σύγχρονη επικοινωνία: Χρησιμοποιούνται δύο ακροδέκτες με τη συσκευή master να ελέγχει το ρολόι CK ενώ ο ακροδέκτης δεδομένων είναι ο ακροδέκτης DT. Ασύγχρονη επικοινωνία: Το συγκεκριμένο κύκλωμα χρησιμοποιείται κυρίως για ασύγχρονη επικοινωνία και συνήθως για επικοινωνία με τις UART των υπολογιστών με τη χρήση του interface RS232. Τοπολογία: ΣΥΣΚΕΥΗ 1 ΣΥΣΚΕΥΗ 2 GND RΧ ΤΧ ΤΧ RΧ GND

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 USART Χρησιμοποιούνται 2 ακροδέκτες ΤΧ (transmit) και RX (receive). Μία τυπική επικοινωνία με I 2 C γίνεται με την εξής διαδικασία: 1. Start bit (λογικό '0') 2. Αποστολή ενός byte στέλνοντας πρώτα το LSB 3. Αποστολή 1 ή 2 Stop bit (λογικό '1') Στο διπλανό διάγραμμα παρουσιάζεται η αποστολή του byte h'55' (85). Επίσης για τη διασύνδεση στη σειριακή θύρα του υπολογιστή απαιτείται μετατροπέας για τη μετατροπή των TTL λογικών σταθμών σε RS232 και το αντίστροφο όπως το MAX232. TTL levels RS232 levels 5V 10V idle bit0 bit2 bit4 bit6 stop start bit bit bit1 bit3 bit5 bit7 idle -10V

PWM (Pulse Width Modulation) Διαμόρφωση εύρους παλμών Μία PWM κυματομορφή στην πραγματικότητα αποτελεί μία περιοδική κυματομορφή η οποία έχει δύο τμήματα. Το τμήμα ΟΝ στο οποίο η κυματομορφή έχει την μέγιστη τιμή της και το τμήμα OFF στο οποίο έχει την τιμή μηδέν. To ΟΝ τμήμα ονομάζεται Duty Cycle και μετριέται είτε σε μονάδες χρόνου (ms, us κλπ) είτε σε ποσοστό (%) επί της περιόδου. Εφαρμόζοντας μία PWM κυματομορφή στην τροφοδοσία ενός φορτίου επιτυγχάνουμε να ελέγξουμε την το ποσοστό της ισχύος που πέφτει πάνω στο φορτίο. Για την περίπτωση που το φορτίο είναι ένας κινητήρας αυτό συνεπάγεται έλεγχος στροφών του κινητήρα.

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 PWM CCP: Capture/Compare/PWM Όταν το CCP λειτουργεί σε PWM mode τότε παράγει μία PWM κυματομορφή σε κάποιον ακροδέκτη του μικροελεγκτή. Οι PWM κυματομορφές χρησιμοποιούνται ιδιαίτερα στις τηλεπικοινωνίες αλλά και στην οδήγηση κινητήρων.

ΠΕΡΙΦΕΡΕΙΑΚΑ ΤΟΥ PIC16F887 CCP CCP: Capture/Compare/PWM O PIC16F887 διαθέτει ένα βελτιωμένο PWM module (ΕCCP Enhanced CCP) με το οποίο υπάρχει η δυνατότητα να παλμοδοτηθούν MOSFET σε συνδεσμολογία ημιγέφυρας (half bridge) ή πλήρους γέφυρας (full bridge) όπως φαίνεται στο παρακάτω σχήμα. Oι καταχωρητές που χρησιμοποιούνται για τη ρύθμιση του CCP είναι: CCPxCON, CCPRxL, PR2, T2CON, x=1 ή 2.

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ/CONFIGURATION BITS O PIC16F887 προγραμματίζεται με τη χρήση των παρακάτω ακροδεκτών: MCLR (Master Clear): Ακροδέκτης στον οποίο εφαρμόζονται οι υψηλές (12V) τάσεις προγραμματισμού. RB7: Data RB6: Clock Ο προγραμματισμός επίσης περιλαμβάνει τη ρύθμιση των configuration bits. Αυτά είναι υπεύθυνα για την επιλογή του ταλαντωτή χρονισμού, για την ενεργοποίηση/απενεργοποίηση κάποιων χρονιστών (WDT, Power up Timer), για την προστασία του κώδικα κλπ.

CONFIGURATION BITS α) Oscillator: Καθορισμός ταλαντωτή χρονισμού του μικροελεγκτή. External RC Clockout: Επιλογή ταλαντωτή χρονισμού βασισμένου σε εξωτερικό δίκτυο RC: Το ρολόι είναι διαθέσιμο εξωτερικά στον ακροδέκτη 14 του PIC16F887. External RC No Clockout: Επιλογή ταλαντωτή χρονισμού βασισμένου σε εξωτερικό δίκτυο RC. Το ρολόι είναι δεν διαθέσιμο εξωτερικά του μικροελεγκτή. Internal RC Clockout: Επιλογή ταλαντωτή χρονισμού βασισμένου στον εσωτερικό ταλαντωτή του μικροελεγκτή. Το ρολόι είναι διαθέσιμο εξωτερικά στον ακροδέκτη 14 του PIC16F887. Internal RC Νο Clockout: Επιλογή ταλαντωτή χρονισμού βασισμένου στον εσωτερικό ταλαντωτή του μικροελεγκτή. Το ρολόι είναι δεν διαθέσιμο εξωτερικά στο μικροελεγκτή. EC: Επιλογή ταλαντωτή χρονισμού από εξωτερικό ρολόι (External Clock) HS: Επιλογή κρυσταλικού ταλαντωτή υψηλής ταχύτητας (High Speed) >= 8ΜΗz ΧΤ: Επιλογή κρυσταλικού ταλαντωτή συχνότητας < 8MHz LP: Επιλογή κεραμικού ταλαντωτή χαμηλής ισχύος (Low Power) β) WatchDog Timer: Ο WatchDog timer αποτελεί ένα κύκλωμα χρονισμού επιτήρησης. Σε κάθε υπερχείλιση προκαλεί RESET και χρησιμοποιείται για αποφυγή «κολλημάτων» του προγράμματος του μικροελεγκτή. On: Ενεργοποίηση Off: Απενεργοποίηση γ) Power Up Timer: Ο Power Up Timer αποτελεί ένα κύκλωμα που διατηρεί σε RESET το μικροελεγκτή για μερικά msec κατά την εφαρμογή της τροφοδοσίας μέχρι να σταθεροποιηθεί. On: Ενεργοποίηση Off: Απενεργοποίηση δ) Master Clear Enable: Καθορισμός του ακροδέκτη 1 του PIC16F887 (MCLR) ως Master Clear ή ως ψηφιακή είσοδος. RE3 is digital input: Ο ακροδέκτης 1 του PIC16F887 αποτελεί ψηφιακή είσοδο Master Clear is external: Ο ακροδέκτης 1 του PIC16F887 αποτελεί το Master Clear. ε) Code Protect: Με το bit αυτό καθορίζεται αν θα υπάρχει προστασία της μνήμης προγράμματος από ανάγνωση. Off: Δεν υπάρχει προστασία από ανάγνωση On: Υπάρχει προστασία από ανάνγωση στ) Data EE Read Protect: Με το bit αυτό καθορίζεται αν θα υπάρχει προστασία της μνήμης δεδομένων EEPROM από ανάγνωση. Off: Δεν υπάρχει προστασία από ανάγνωση On: Υπάρχει προστασία από ανάνγωση ζ) Brown Out Detect: Με το χαρακτηριστικό Brown out Detect προκαλείται RESET στο μικροελεγκτή όταν η τροφοδοσία πέσει κάτω από κάποια τάση αναφοράς. Με την παραπάνω επιλογή καθορίζεται η ενεργοποίηση/απενεργοποίηση αυτού του χαρακτηριστικού του PIC16F887 BOD and SBOREN disabled: Απενεργοποίηση SBOREN controls BOR function: Το bit SBOREN του καταχωρητή PCON ελέγχει την ενεργοποίηση/απενεργοποίηση BOD enabled in run, disabled in sleep, SBOREN disabled: Εδώ το χαρακτηριστικό αυτό είναι ενεργοποιημένο κατά την κανονική λειτουργία και απενεργοποιημένο κατά τη λειτουργία χαμηλής κατανάλωσης ισχύος BOD enabled, SBOREN disabled: Ενεργοποίηση η) Internal External Switch Over Mode: Με το bit αυτό ο ενεργοποιείται/ απενεργοποιείται η αλλαγή του ταλαντωτή χρονισμού από τον εσωτερικό σε εξωτερικό και το αντίστροφο. Enabled: Ενεργοποίηση Disabled: Απενεργοποίηση θ) Monitor Clock fail-safe: Με το bit αυτό ενεργοποιείται/απενεργοποιείται το χαρακτηριστικό του μικροελεγκτή να μπορεί να μεταβεί στον εσωτερικό ταλαντωτή χρονισμού σε περίπτωση αποτυχίας του εξωτερικού ταλαντωτή. Enabled: Ενεργοποίηση Disabled: Απενεργοποίηση ι) Low Voltage Program: Με το bit αυτό ενεργοποιείται/απενεργοποιείται η δυνατότητα για προγραμματισμό εντός του κυκλώματος με χαμηλή τάση. Όταν είναι ενεργοποιημένη η δυνατότητα αυτή τότε ο ακροδέκτης RB3/PGMπαύει να είναι διαθέσιμος στον προγραμματιστή και χρησιμοποιείται μόνο για τον προγραμματισμό του μικροελεγκτή. Enabled: Ενεργοποίηση Disabled: Απενεργοποίηση ια) Brown Out Reset Sel Bit: Με το bit συτό επιλέγεται η τάση αναφοράς για το Brown-out Reset. Brown out at 2.1V: Θα πραγματοποιηθεί RESET όταν η τάση γίνει 2.1V. Brown out at 4.0V: Θα πραγματοποιηθεί RESET όταν η τάση γίνει 4.0V. ιβ) Self Write Enable: Με την επιλογή αυτή καθορίζουμε αν η μνήμη προγράμματος θα έχει προστασία εγγραφής από το firmware το μικροελεγκτή. 0000-0fff prot. Προστασία εγγραφής στις διευθύνσεις μνήμης από h 0000 έως h 0FFF. 0000-7fff prot. Προστασία εγγραφής στις διευθύνσεις μνήμης από h 0000 έως h 7FFF. 0000-00ff prot. Προστασία εγγραφής στις διευθύνσεις μνήμης από h 0000 έως h 00FF. No protection. Προστασία εγγραφής απενεργοποιημένη.

bit 7 Δεν είναι υλοποιημένο Καταχωρητής Τ2CON (Bank0) bit 6-3 TOUTPS<3:0>: Bit επιλογής κλίμακας επόμενης βαθμίδας μέτρησης (Postscaler) 0000 = 1:1 Postscaler 0001 = 1:2 Postscaler 0010 = 1:3 Postscaler 0011 = 1:4 Postscaler 0100 = 1:5 Postscaler 0101 = 1:6 Postscaler 0110 = 1:7 Postscaler 0111 = 1:8 Postscaler 1000 = 1:9 Postscaler 1001 = 1:10 Postscaler 1010 = 1:11 Postscaler 1011 = 1:12 Postscaler 1100 = 1:13 Postscaler 1101 = 1:14 Postscaler 1110 = 1:15 Postscaler 1111 = 1:16 Postscaler bit 2 TMR2ON: Bit ενεργοποίησης Timer2 1 = Eνεργοποίηση Timer2 0 = Απενεργοποίηση Timer2 bit 1-0 T2CKPS<1:0>: Bit επιλογής κλίμακας προηγούμενης βαθμίδας μέτρησης (Prescaler) 00 = 1:1 Prescaler 01 = 1:4 Prescaler 1x = 1:16 Prescaler

bit 7-6 Καταχωρητής CCP1CON (Bank0) P1M<1:0>: Bit ρυθμίσεων της PWM εξόδου Εάν CCP1M<3:2> = 00, 01, 10: xx = Ο ακροδέκτης P1A ορίζεται ως είσοδος Capture/Compare. Οι ακροδέκτες P1B, P1C και P1D ορίζονται ως είσοδοι/έξοδοι των θυρών στις οποίες ανήκουν Εάν CCP1M<3:2> = 11: 00 = Ο ακροδέκτης P1A ορίζεται ως απλή έξοδος PWM. Οι ακροδέκτες P1B, P1C και P1D ορίζονται ως είσοδοι/έξοδοι των θυρών στις οποίες ανήκουν 01 = Οδήγηση εμπρόσθιας κατεύθυνσης κινητήρα συνδεσμολογίας πλήρους γέφυρας. Έξοδος P1D διαμορφωμένη κατά εύρος. Έξοδος P1A ενεργός. Έξοδος P1B ανενεργός. Έξοδος P1C ανενεργός 10 = Οδήγηση κινητήρα συνδεσμολογίας μισής γέφυρας. Έξοδοι P1A και P1B διαμορφωμένοι κατά εύρος. Έξοδοι P1C και P1D ορίζονται ως είσοδοι/έξοδοι των θυρών στις οποίες ανήκουν 11 = Οδήγηση αντίστροφης κατεύθυνσης κινητήρα συνδεσμολογίας πλήρους γέφυρας. Έξοδος P1Β διαμορφωμένη κατά εύρος. Έξοδος P1C ενεργός. Έξοδος P1A ανενεργός. Έξοδος P1D ανενεργός bit 5-4 DC1B<1:0>: Τα λιγότερο σημαντικά bit του Duty Cycle της PWM κυματομορφής Capture mode: Δεν χρησιμοποιείται σε αυτό το mode λειτουργίας Compare mode: Δεν χρησιμοποιείται σε αυτό το mode λειτουργίας PWM mode: Τα δύο λιγότερο σημαντικά bits του Duty Cycle της PWM κυματομορφής bit 3-0 CCP1M<3:0>: Bit επιλογής mode λειτουργίας 0000 = Απενεργοποίηση μονάδας CCP 0001 = Δε χρησιμοποιείται (δεσμευμένη) 0010 = Compare mode, αντιστροφή εξόδου σε κάθε ταύτιση 0011 = Δε χρησιμοποιείται (δεσμευμένη) 0100 = Capture mode, σύλληψη σε κάθε κατερχόμενο μέτωπο 0101 = Capture mode, σύλληψη σε κάθε ανερχόμενο μέτωπο 0110 = Capture mode, σύλληψη σε κάθε 4ο ανερχόμενο μέτωπο 0111 = Capture mode, σύλληψη σε κάθε 16ο ανερχόμενο μέτωπο 1000 = Compare mode, έξοδος στο λογικό 1 σε κάθε ταύτιση 1001 = Compare mode, έξοδος στο λογικό 0 σε κάθε ταύτιση 1010 = Compare mode, έξοδος ανεπηρέαστη, σηματοδότηση διακοπής σε κάθε ταύτιση 1011 = Compare mode, σκανδαλισμός ειδικού συμβάντος προκαλώντας RESET στον Timer1 και κάνοντας εκκίνηση μιας A/D μετατροπής 1100 = PWM mode, για τα P1A, P1C η ενεργός κατάσταση περιγράφεται με υψηλό επίπεδο, για τα P1Β, P1D η ενεργός κατάσταση περιγράφεται με υψηλό επίπεδο. 1101 = PWM mode, για τα P1A, P1C η ενεργός κατάσταση περιγράφεται με υψηλό επίπεδο, για τα P1Β, P1D η ενεργός κατάσταση περιγράφεται με χαμηλό επίπεδο. 1110 = PWM mode, για τα P1A, P1C η ενεργός κατάσταση περιγράφεται με χαμηλό επίπεδο, για τα P1Β, P1D η ενεργός κατάσταση περιγράφεται με υψηλό επίπεδο. 1101 = PWM mode,για τα P1A, P1C η ενεργός κατάσταση περιγράφεται με χαμηλό επίπεδο, για τα P1Β, P1D η ενεργός κατάσταση περιγράφεται με χαμηλό επίπεδο.

ΠΑΡΑΔΕΙΓΜΑ ΧΡΗΣΗΣ PWM include <p16f887.inc> org h'0000' bsf STATUS,RP0 ; Bank1 bcf TRISC,2 ; Το RC2 καθορίζεται ως έξοδος movlw d'20' movwf PR2 ; Φόρτωση στον PR2 το 20 bcf STATUS,RP0 ; Bank0 bsf T2CON,TMR2ON ; Ενεργοποίηση Timer2 movlw d'10' movwf CCPR1L ; Καθορισμός του Duty Cycle στο RC2 movlw b'00001100' movwf CCP1CON ; Ρύθμιση CCP1 για PWM goto $ end

ΕΞΟΔΟΣ ΛΟΓΙΚΟΥ ΑΝΑΛΥΤΗ