Αρχείο κατηγορίας Microcontrollers

Κατασκευές ψηφιακών συστημάτων βασισμένων σε μικροεπεξεργαστή.

Απλός προγραμματιστής PIC

Μεγένθυση Συχνά θέλουμε να προγραμματίσουμε μικοελεγκτές της οικογένειας PIC μικρής κλίμακας όπως ο 16F84A ή 16F628A. Αυτοί οι παλιοί microcontrollers προγραμματίζονται με υψηλή τάση 13,5V σε αντίθεση με τους νέους που προγραμματίζονται με 5V. Αν έχουμε PC με σειριακή θύρα , προσοχή όχι adaptor από USB σε σειριακή, μπορούμε να κατασκευάσουμε αυτόν τον απλό προγραμματιστή. Πρόκειται για τον PIC-PG2 της OLIMEX. Η κατασκευή γίνεται απλά μέσα σε ένα θηλυκό βύσμα DB9 .

Συνέχεια

wrt54G_serial_ext

Προσθήκη σειριακών θυρών στον WRT54G

Μεγένθυση Πολλές φορές θέλουμε να τηλεχειριστούμε κάποιες συσκευές ή να διαβάσουμε δεδομένα από κάποιους αισθητήρες κλπ. Η ποιο απλή λύση είναι να κατασκευάσουμε μια πλακέτα με ένα μικρό μικροελεγκτή π.χ. AVR ή PIC που διαθέτει σειριακή θύρα και να τη συνδέσουμε σε ένα PC συνδεδεμένο στο διαδίκτυο. Αυτός ο τρόπος είναι ενεργοβόρος, καταλαμβάνει χώρο, κάνει θόρυβο και είναι λίγο αναξιόπιστος γιατί το PC μπορεί να κάνει διάφορα “κολλήματα”. 

Συνέχεια

cpldpcb.jpg

Επαναφορά router WRT54G

Ο διάσημος routerΠιστεύω πως αυτός είναι ο πιο διάσημος ασύρματος router μέχρι σήμερα. Η Linksys έχει κατασκευάσει μια σειρά από μοντέλα WRT54G που όλα μπορούν με μικρές τροποποιήσεις να τρέξουν λειτουργικά Linux όπως το DD-WRT και το OpenWrt τα οποία κυριολεκτικά απογειώνουν τον router σας. Η χαμηλή τιμή ~50? και οι πολλές δυνατότητες που μας παρέχει κάνουν τον WRT54G μοναδικό. Το καλύτερο μοντέλο είναι το WRT54GL (L από το LINUX) με 4MB Flash κα 16MB ram. Ο επεξεργαστής του έχει πυρήνα MIPS32 και είναι ο Broadcom BCM5352 που τρέχει στα 200MHz.
Πολλές φορές είτε από λάθος χειρισμό είτε από λάθος είδωλο rom που είναι για άλλο μοντέλο, ο router δεν μπορεί να ξεκινήσει με αποτέλεσμα να είναι άχρηστος.

Συνέχεια

pbx_water_alrm1

Συναγερμός υπερχείλισης υδάτων με σύνδεση σε τηλεφωνικό κέντρο

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

Στην απλή κατάσταση λειτουργίας που δεν απαιτείται η ύπαρξη μικροελεγκτή, όταν σε κάποια δεξαμενή ή σημείο ανιχνευθεί υψηλή στάθμη υδάτων τότε θα ενεργοποιηθεί η ηχητική ειδοποίηση σε δύο ή περισσότερους χώρους.

Στην εξελιγμένη κατάσταση αρχικά θα καλέσει κάποια εσωτερικά τηλέφωνα (ringgroup) του τηλεφωνικού μας κέντρου το οποίο βασίζεται στο ανοιχτό λογισμικό asterisk και με ηχητικό μήνυμα θα μας πει σε ποιο σημείο ανιχνεύθηκε διαρροή. Αν μετά από κάποιο αριθμό χτυπημάτων κανείς δεν απαντήσει, το σύστημα θα στείλει sms στο κινητό μας. Εδώ απαιτείται σύνδεση internet και συνδρομή σε κάποια υπηρεσία αποστολής sms.

 

Συνέχεια

mcu-up

PLL ελεγχόμενο από μικροϋπολογιστή

Μεγένθυση Εδώ θα παρουσιάσω την κατασκευή μιας πλακέτας μικροελεγκτή η οποία σχεδιάστηκε για τον έλεγχο PLL σε τηλεοπτικούς πομπούς και αναμεταδότες. Η πλακέτα αυτή κατασκευάστηκε το 1997 με τον οκτάμπιτο microcontroller AVR AT90S1200 της Atmel και το αρχικό πρόγραμμα ήταν γραμμένο σε Assembly. Αργότερα τον αντικατέστησα με τον συμβατό σε συσκευασία και θέσεις ακίδων AT90S2313 , και το πρόγραμμα γράφτηκε σε C. Με αυτόν τον μικροελεγκτή χρησιμοποίησα την ίδια πλακέτα για έλεγχο πομποδεκτών NBFM που θα παρουσιάσω σε επόμενο άρθρο. 

Συνέχεια

freq4d1

CPLD-2 Κατασκευή συχνομέτρου με CPLD

Μεγένθυση Σ” αυτό το άρθρο θα δούμε την κατασκευή ενός συχνομέτρου τεσσάρων ψηφίων, κατασκευασμένο με το CPLD XC95108 της Xilinx. Βασίζεται στο starter kit που δημοσίευσα στο προηγούμενο άρθρο και έχει υλοποιηθεί με σχηματικό διάγραμμα ενώ τα modules είναι γραμμένα σε Verilog. Χρησιμοποιεί ακριβώς το 50% των καταχωρητών του chip, επομένως άνετα θα μπορούσε να επεκταθεί στα 8 ψηφία. Το chip που χρησιμοποίησα έχει propagation delay 15ns, πράγμα που μας περιορίζει την μέγιστη συχνότητα περίπου στα 70 MHz. Φυσικά με την χρήση ενός prescaler θα μπορούσαμε να αυξήσουμε την συχνότητα εισόδου σε αρκετά GHz.

Συνέχεια

2

Ας ασχοληθούμε με CPLD

Μεγένθυση Παλιότερα (89-90) είχα ασχοληθεί λίγο με PALGAL για να βάλω κάποια εξειδικευμένη λογική σε chips. Εκείνη την εποχή ο αριθμός των πυλών και φλίπ-φλόπ ήταν μικρός και ο μόνος λόγος χρήσης τέτοιων chip ήταν το κλείδωμα του hardware παρά η οικονομία σε διακριτά ολοκληρωμένα κυκλώματα. Στα χρόνια που πέρασαν δημιουργήθηκαν μεγάλες εταιρίες όπως η Xilinx , Altera , Lattice που έφτασαν την τεχνολογία αυτών των chip σε απίστευτα επίπεδα. Σήμερα μιλάμε για chip με  200000 πύλες που μέσα μπορούν να χωρέσουν δύο πυρήνες επεξεργαστών π.χ. ARM μαζί με τα βοηθητικά περιφερειακά. Αυτά γίνονται στα FPGA που θα δούμε σε επόμενο άρθρο. Εδώ θα δούμε τα πιο απλά και μικρότερα cplds. Αρχικά αποφάσισα να μην χρησιμοποιήσω κάποιο starter kit ή αναπτυξιακό σύστημα που πουλάνε οι εταιρίες, αλλά να τα κατασκευάσω όλα μόνος μου.  

Συνέχεια

board

Γεννήτρια υποτόνων

Μεγένθυση

Εικόνα 1. Η πρωτότυπη κατασκευή σε διάτρητη πλακέτα.

Η κατασκευή αυτή βασίζεται στον μικροελεγκτή AVR AT90S2313 της ATMEL. Η παραγωγή των υποτόνων γίνεται με D.D.S. (Direct Digital Synthesis). Μέσα στη μνήμη ROM του επεξεργαστή υπάρχουν 32 δείγματα που αντιστοιχούν σε μια ημιπερίοδο του σήματος. Θα μπορούσαμε να βάλουμε και μόνο ένα τεταρτημόριο αν είχαμε πρόβλημα χώρου. Οι τιμές των δειγμάτων μπορούν να υπολογιστούν με ένα απλό πρόγραμμα όπως το ακόλουθο σε BASIC.

Συνέχεια

vhftrans_l

Ελεγκτής Αναμεταδότη

Κλικ για μεγένθυση Η συσκευή που περιγράφω παρακάτω είνα ένας ελεγκτής με μικροεπεξεργαστή και χρησιμοποιείται στο R1 της Λευκάδας. Παρέχει δυνατότητες τηλεχειρισμού, ανιχνεύει υπότονους, τόνο 1750 Hz και παίζει το ID του αναμεταδότη με σήματα Morse.

Χρησιμοποιεί επεξεργαστή Atmel τύπου AVR και το πρόγραμμα είναι γραμμένο σε γλώσσα “C”. O compiler που χρησιμοποιώ είναι άδειας GNU και θα τον βρείτε εδώ..

Συνέχεια