Επιβλέπων: Ιωάννης Καλόμοιρος, Επίκουρος καθηγητής TEI ΣΕΡΡΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΕΠΙΚΟΙΝΩΝΙΩΝ ΤΟΜΕΑΣ ΑΡΧΙΤΕΚΤΟΝΙΚΗΣ ΥΠΟΛΟΓΙΣΤΩΝ ΚΑΙ ΒΙΟΜΗΧΑΝΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ “Μελέτη των περιφερειακών κυκλωμάτων του αναπτυξιακού συστήματος EasyPIC 5 και προγραμματισμός με χρήση του μεταγλωττιστή C.” Σπαθάρας Ευάγγελος (1272) Επιβλέπων: Ιωάννης Καλόμοιρος, Επίκουρος καθηγητής
ΑΝΑΛΥΣΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Χρησιμοποιήθηκε το αναπτυξιακό σύστημα EasyPIC 5 το οποίο στηρίζεται σε μικροελεγκτές της οικογένειας PIC της Microchip. Ειδικότερα η εργασία αφορούσε τον PIC16F877A και τα περιφερειακά του Μελετήθηκαν τα εργαλεία προγραμματισμού MPLAB και microC compiler
ΑΝΑΛΥΣΗ ΤΗΣ ΕΡΓΑΣΙΑΣ Δημιουργήθηκε σειρά εφαρμογών για τα εξής περιφερειακά του PIC: GPIO A/D μετατροπέας RS232 σειριακή επικοινωνία MSSP Module (I2C Master Mode) Με τα παραπάνω περιφερειακά κυκλώματα του PIC έγινε έλεγχος των εξής συσκευών που υπάρχουν στο αναπτυξιακό σύστημα EasyPIC 5: LCD + GLCD οθόνες LED’s Buttons 7-segment display
Βασικές συσκευές και διατάξεις του αναπτυξιακού συστήματος EasyPIC 5 Μικροελεγκτής PIC16F877A ON-BOARD USB 2.0 Programmer Οθόνες επτά τομέων (7-segment) Οθόνη LCD 2x16 Oθόνη GLCD 128x64 Σειριακή επικοινωνία (RS232)
Αρχιτεκτονική του μικροελεγκτή PIC16F877A Αρχιτεκτονική Harvard Διάδρομος δεδομένων μήκους 8-bit Διάδρομος εντολών μήκους 14-bit Αποκωδικοποίηση εντολών σε μία λέξη
Χάρτης μνήμης του μικροελεγκτή PIC16F877A
Σχηματικό διάγραμμα του PIC16F877A
MicroC compiler
MPLAB compiler
Διασύνδεση LCD με τον PIC
Εφαρμογή LCD Αρχικοποίηση Προγραμματισμός Lcd_Config(char *port,char RS,char EN,char WR,char D7,char D6,char D5,char D4) Προγραμματισμός Lcd_Out(char row,char col,char *text) Lcd_Chr(char row,char col,char character) Lcd_Cmd(Lcd_Clear) Lcd_Cmd(LCD_BLINK_CURSOR_ON) Lcd_Cmd(LCD_FIRST_ROW) Lcd_Cmd(LCD_MOVE_CURSOR_LEFT) Lcd_Cmd(LCD_MOVE_CURSOR_RIGHT)
Εφαρμογή A/D Βήματα A/D μετατροπής Αναμονή του απαιτούμενου χρόνου πρόσκτησης του αναλογικού δείγματος (TACQ) Έναρξη μετατροπής Αναμονή του τέλους της μετατροπής Ανάγνωση του αποτελέσματος από το ζευγάρι καταχωρητών ADRESH και ADRESL και τοποθέτηση αυτού στις θύρες B και C αντίστοιχα Είσοδος μετατροπέα A/D στο αναπτυξιακό
Εφαρμογή σειριακής επικοινωνίας (RS232) Ρύθμιση λειτουργίας του περιφερειακού USART Προγραμματίζουμε δύο βασικούς καταχωρητές, τον TXSTA και τον RCSTA για την ενεργοποίηση της σειριακής εκπομπής και λήψης αντίστοιχα. Προγραμματίζουμε τις βασικές παραμέτρους της σειριακής επικοινωνίας, όπως το baud rate μέσω του καταχωρητή SPBRG, τον αριθμό των bits ανά χαρακτήρα, το parity bit και τον αριθμό των Stop bits
Εφαρμογή επικοινωνίας I2C Πρωτόκολλο σειριακής σύγχρονης επικοινωνίας για επικοινωνία συσκευών και μικροελεγκτών σε μεγάλες ταχύτητες Επικοινωνία μεταξύ Master και Slave συσκευών 2 γραμμές επικοινωνίας, SCL και SDL Μορφή του διαύλου με ένα Master και δύο Slaves
Εφαρμογή επικοινωνίας I2C Δύο μοναδιαίες καταστάσεις στο δίαυλο.Συνθήκη Start και Stop Οι συνθήκες Start και Stop Κάθε μεταφορά δεδομένων αποτελείται από 8 ψηφία και αρχικοποιείται από τον Master Λειτουργία χειραψίας (ACK – NACK) Μεταφορά δεδομένων από την γραμμή SDA σε 8 παλμούς του ρολογιού και χειραψία
Εφαρμογή GLCD Αναπαράσταση αλφαριθμητικών Αναπαράσταση δεδομένων με τη μορφή σχεδιαγράμματος ή εικόνας Δεδομένα/εντολές μέσω ακροδεκτών D0-D7 θύρας D Έλεγχος/τροφοδοσία μέσω ακροδεκτών Β0-Β5 θύρας B
Εφαρμογή με LED’s Κάθε LED συνδέεται με ένα από τους ακροδέκτες των θυρών Α, Β, C, D και E
Εφαρμογή απεικόνισης στις οθόνες επτά τομέων (7-segment-display) Κάθε 7-segment συνδέεται με έναν από τους ακροδέκτες A0-A3 και με όλους τους ακροδέκτες της θύρας D του μικροελεγκτή Θύρα B είσοδος για εισαγωγή δυαδικού αριθμού προς μετατροπή στο δεκαδικό
Εφαρμογή μέτρησης θερμοκρασίας μέσω του αισθητηρίου LM35 Είσοδος του ενισχυμένου σήματος από τον ακροδέκτη AN2 του μικροελεγκτή για μετατροπή A/D Επεξεργασία του πλέον ψηφιακού σήματος και απεικόνιση θερμοκρασίας σε δεκαδική μορφή στην οθόνη LCD Το κύκλωμα της εφαρμογής
Συμπεράσματα Το αναπτυξιακό σύστημα EasyPIC 5 είναι: Πλήρες Κατάλληλο για εφαρμογές αυτοματισμού, μετρήσεων ή επικοινωνίας Κατάλληλο για εκπαιδευτικούς σκοπούς Σε πολύ καλή τιμή Πλεονεκτήματα γλώσσας microC: Εύκολη και γρήγορη ανάπτυξη λογισμικού Εύκολη πρόσβαση στους καταχωρητές του PIC μέσω συναρτήσεων Πλεονεκτήματα γλώσσας Assembly: Μικρή απαίτηση χώρου μνήμης του τελικού προγράμματος Χρήση όλων των δυνατοτήτων του μικροελεγκτή