PDA

Επιστροφή στο Forum : Ψηφιακό Ρολόι !Βοήθεια!



circuit211
27-02-12, 21:52
Καλησπέρα!!!

Πρόσφατα έφτιαξα ένα απλό χρονόμετρο με ένα 555 (παρακάτω είναι το σχεδιάγραμμα). Μετράει μόνο δευτερόλεπτα (μέχρι 999), μηδενίζοντας την κάθε οθόνη αμέσως όταν η προηγούμενή της μετρήσει μέχρι το 9. Έπειτα αποφάσισα να το "προχωρήσω" και να το μετατρέψω σε ρολόι! Προσπαθώ να το κάνω με LED Displays και όσο πιο απλό γίνεται (χωρίς ξυπνητήρι, ένδειξη ημερομηνίας κ.τ.λ.). Έψαξα αρκετά, αλλά δεν κατάφερα να βρω αυτό που ήθελα. Μήπως ξέρει κανείς πώς να κάνω την οθόνη των λεπτών να μηδενίζει στο 5 και των ωρών ή μία στο 2 και η άλλη στο 4??! Πώς να το κάνω με άλλα λόγια να μετράει σαν ρολόι???! :confused1:

Επίσης, έχω ακούσει ότι το 555 δεν είναι και πολύ ακριβές στη μέτρηση του χρόνου! Με τι θα μπορούσα να το αντικαταστήσω?? (διάβασα μερικά σχετικά θέματα στο forum, αλλά επειδή είμαι και λίγο καινούριος με τα ηλεκτρονικά δεν κατάλαβα και πολλά!! :001_smile:)


Ευχαριστώ πολύ!!!


29815 29816 *Το πρόγραμμα που χρησιμοποίησα για το σχεδιάγραμμα είναι το Circuit Wizard.

FILMAN
28-02-12, 10:48
Την ακρίβεια την βελτιώνεις με ένα κρύσταλλο και διαιρέτη συχνότητος, π.χ. έναν κρύσταλλο 32.768kHz, ένα ολοκληρωμένο 4060 και έναν ακόμα διαιρέτη διά 2 (διότι ο μέγιστος συντελεστής διαίρεσης του 4060 δεν φτάνει), π.χ. ένα flip flop. Όσον αφορά τη μέτρηση εννοείται ότι θα βρεις εσύ τον τρόπο. Π.χ. το 4029 που έχεις βάλει διαθέτει jam inputs και preset. Έτσι αν εσύ θες π.χ. να πάει στο 0 μετά το 5 και όχι μετά το 9, θα πρέπει να δώσεις στα jam inputs την τιμή 0 και στη φάση αλλαγής από 5 σε 6 να δώσεις παλμό preset. Ίσως πάλι είναι καλύτερα να δεις άλλα ολοκληρωμένα πιο βολικά γι αυτή τη δουλειά, π.χ. το 4033 ή το 4566.

circuit211
29-02-12, 20:06
Ευχαριστώ για την απάντηση!!

Όσον αφορά το preset, πώς μπορώ να το κάνω να γίνεται αυτόματα έπειτα από ένα χρονικό διάστημα, όπως για παράδειγμα στην 1η οθόνη των λεπτών που πρέπει να μηδενίζει κάθε 1 λεπτό? Εάν αυτό το κάνω με ένα 555 (π.χ.), τότε ναι μεν θα μηδενίσει μετά από ένα λεπτό, αλλά θα παραμείνει στο 0 για ακόμα 1 λεπτό μέχρι να ξαναρχίσει.

Επίσης, όταν κάνω preset μία από τις οθόνες, η επόμενή της δεν πάει στο επόμενο νούμερο, αλλά μένει σταθερή! Αυτό διορθώνεται μόνο αν ρυθμίσω την επόμενη οθόνη να αλλάζει κάθε 1 ώρα, π.χ. για τη 2η οθόνη των ωρών, ανεξάρτητα από τις υπόλοιπες?

FILMAN
01-03-12, 10:53
Τι λες μωρέ; Μήπως θα βάλεις από έναν ταλαντωτή να οδηγεί το κάθε ψηφίο της οθόνης; Πώς σου ήρθε αυτό; Ο κάθε μετρητής ψηφίου οδηγείται από τον προηγούμενό του, όχι από ανεξάρτητο ταλαντωτή! ¶κου τι σκέφτηκε! Δηλαδή θα έβαζες ένα ταλαντωτή 1Hz να οδηγεί π.χ. τις μονάδες των δευτερολέπτων και έναν άλλο ανεξάρτητο ταλαντωτή των 0.1Hz να οδηγεί τις δεκάδες, και μετά από καμιά ώρα θα ήθελες να συνεχίζουν να είναι και σε συμφωνία εεεε; Φαντάσου τί θα γινότανε μετά από 1 μέρα, 1 εβδομάδα, 1 μήνα!

circuit211
01-03-12, 15:03
Και πώς θα αλάξει η οθόνη των ωρών, όταν στις προηγούμενες θα γίνεται preset??

klik
01-03-12, 15:07
Μα θα πάρεις το σήμα που κάνει reset το τρέχον display σαν input στο επόμενο!

FILMAN
01-03-12, 15:08
Ο παλμός preset που θα δοθεί στους μετρητές των προηγούμενων ψηφίων, θα δοθεί επίσης ως clock στον μετρητή των ωρών...

FILMAN
01-03-12, 15:09
Ο Κλικ είναι γρήγορος όσο ένα click!

Υ.Γ. Θα μας πεις το πραγματικό σου όνομα;

circuit211
01-03-12, 15:14
Α!! ναι!!! :biggrin: τόσο απλό, αλλά δε το σκέφτηκα!!!!!!!!

Όμως το reset πώς θα γίνει στιγμιαία?

circuit211
01-03-12, 15:14
Θεόφιλος!

FILMAN
01-03-12, 15:21
Ε, μάλλον κάτι τέτοιο θα ήτανε, Θεόφιλος, Θεόδωρος, κ.λ.π.

Αλλά η ερώτηση πήγαινε για τον κλικ, το το πραγματικό όνομα του οποίου δεν νομίζω να είναι "klik ®"!

klik
01-03-12, 15:21
Μόλις πιάσεις την επιθυμητή έξοδο και στείλεις το ρεσετ, αλλάζει η έξοδος σου και ... χάνεται το reset. Αρα είναι στιγμιαίο.

circuit211
01-03-12, 15:32
Ευχαριστώ πολύ και πάλι!!
Θα λάβω υπ' όψην μου όσα μου είπατε και όταν είναι έτοιμο θα ανεβάσω το σχηματικό και καμιά φωτογραφία!!:001_smile:

FILMAN
01-03-12, 15:34
Κοίτα και τα 4033 και 4566 που σου είπα και πριν. Είναι πιο βολικά για την κατασκευή ρολογιών.

circuit211
01-03-12, 16:44
Όσον αφορά το preset, πώς μπορώ να το κάνω να γίνεται αυτόματα έπειτα από ένα χρονικό διάστημα, όπως για παράδειγμα στην 1η οθόνη των λεπτών που πρέπει να μηδενίζει κάθε 1 λεπτό? Εάν αυτό το κάνω με ένα 555 (π.χ.), τότε ναι μεν θα μηδενίσει μετά από ένα λεπτό, αλλά θα παραμείνει στο 0 για ακόμα 1 λεπτό μέχρι να ξαναρχίσει.


Αυτό πώς διορθώνεται? (δεν το κατάλβα και πολύ αυτό που είπες κλικ!!)

FILMAN
01-03-12, 16:51
¶ντε πάλι. Βρε δεν είναι δυνατόν με το 555 ούτε με οποιονδήποτε άλλο ταλαντωτή να πετύχεις ο παλμός που θα σου δίνει να έρχεται συνέχεια ακριβώς στη φάση που πρέπει να αλλάξει το νούμερο αφού τα υπόλοιπα θα προχωράνε με βάση έναν άλλο ταλαντωτή, δεν το καταλαβαίνεις;

circuit211
01-03-12, 17:06
29963

Όταν πατάω τον SW1 γίνεται reset στη δεξιά οθόνη και ταυτόχρονα η 2η των λεπτών αυξάνεται κατά ένα! Αυτό το κατάλαβα!!
Δεν καταλαβαίνω όμως πώς γίνεται να κάνω το διακόπτη να κλείνει μόνος του και στιγμιαία!

klik
01-03-12, 17:42
π.χ. με έναν απαριθμητή στις δεκάδες δευτερολέπτων (όταν φτάσει στο 6) να κάνει το reset (π.χ. cd4017). Το 4017 θα πέρνει clock μαζί με το clock των δεκάδων και η έξοδος "6" θα είναι το σήμα ρεσετ.

¶λλη λύση: θα μπορούσες να κάνεις απαρίθμηση των δευτερολέπτων με ένα 4040 και με πύλες (AND ή NAND) να πιάσεις τη συνθήκη μηδενισμού ενώ ένας binary to 7seg decoder να κάνει την απεικόνιση.

υγ. φυσικά ένα ρολόι με μικροελεγκτή έχει πολύ λιγότερα τσιπάκια (ίσως μόνο τον μικροελεγκτη), αλλά άλλη χάρη έχει με πύλες και f/f. Εσύ διάλεξες το δρόμο αυτό.

klik
01-03-12, 18:04
Στις ώρες θα μπορούσες να χρησιμοποιήσεις ένα 4040 (το 24 είναι ο αριθμός 11000 στο δυαδικό σύστημα) και να πιάσεις τις εξόδους O3 και O4 με μια AND (ή ίσως με μια δίοδο 1Ν4148 στην O3 και pull θπ στην Q4)

klik
01-03-12, 22:31
Αν δεν σε μπερδεύω πολύ, να σου πω ότι υπάρχει και η λύση για τα 6αρια στις δεκάδες λεπτών και δεκάδες δευτερολέπτων, να πιάσεις απ' ευθείας τα σήματα στις ακίδες a,c,d,e,f,g με 6 διόδους 1Ν4148 συνδεδεμένες σαν


a) OR (για 7seg κοινής ανόδου) + BC547(σαν NOT) ή
b) σαν AND (για 7seg κοινής καθόδου)
και να χρησιμοποιήσεις αυτό το σήμα σαν reset και clock του επόμενου σταδίου.

Δηλαδή όταν ανάψουν ΟΛΑ τα τμήματα του αριθμού 6 στις δεκάδες (μη επιτρεπτός αριθμός δηλαδή), θα δίνει η ψευδο-πύλη το HIGH παλμό που ψάχνεις.

Φυσικά με τον ίδιο τρόπο θα μπορούσες να πιάσεις και τον αριθμό 24 στις ώρες (ανακαλύπτοντας ποιες έξοδοι των 7seg ενεργοποιούνται και σου εξασφαλίζουν ότι έχεις το 24). Συνήθως ο έλεγχος γίνεται με τα MSB (most significant bits) όπως π.χ. σου είπα σε παλιότερο μήνυμα, με το 11000 που αντιστοιχεί στο 24.

Οι παραπάνω ιδέες έχουν σκοπό να κάνουν οικονομία σε μερικά ολοκληρωμένα με πύλες ή με counters, αλλά αν σε δυσκολεύουν άφησε τα και χρησιμοποίησε τα cd4040/cd4017.

υγ. να και ένα παράδειγμα με cpu εδώ (http://www.hlektronika.gr/forum/showthread.php?t=45129&p=305197&viewfull=1#post305197) και με cmos/ttl εδώ (https://skydrive.live.com/?cid=0296d20b196632f8&sc=documents&id=296D20B196632F8!144)

circuit211
01-03-12, 22:51
Αν δεν σε μπερδεύω πολύ, να σου πω ότι υπάρχει και η λύση για τα 6αρια στις δεκάδες λεπτών και δεκάδες δευτερολέπτων, να πιάσεις απ' ευθείας τα σήματα στις ακίδες a,c,d,e,f,g με 6 διόδους 1Ν4148 συνδεδεμένες σαν
a) OR (για 7seg κοινής ανόδου) + BC547(σαν NOT) ή
b) σαν AND (για 7seg κοινής καθόδου)
και να χρησιμοποιήσεις αυτό το σήμα σαν reset και clock του επόμενου σταδίου.

Δηλαδή όταν ανάψουν ΟΛΑ τα τμήματα του αριθμού 6 στις δεκάδες (μη επιτρεπτός αριθμός δηλαδή), θα δίνει η ψευδο-πύλη το HIGH παλμό που ψάχνεις.

υγ. να και ένα παράδειγμα με cpu εδώ (http://www.hlektronika.gr/forum/showthread.php?t=45129&p=305197&viewfull=1#post305197) και με cmos/ttl εδώ (https://skydrive.live.com/?cid=0296d20b196632f8&sc=documents&id=296D20B196632F8!144)

Κατάφερα και το έφτιαξα με το 4017 και το 4040!
30008
Μια τελευταία ερώτηση!!
Το 4060 το έχω σνδέσει σωστά??!

klik
01-03-12, 23:25
Το 4060 με τις αριθμήσεις ακίδων που έχεις είναι λάθος.
Οι ακίδες 10 και 11 χρησιμοποιούνται για τον κρύσταλλο.
Οι τιμές των αντιστάσεων δεν γνωρίζω αν παίζουν με τον κρυστάλλο που έχεις, δεν θυμάμαι λεπτομέρειες από το pdf για την σύνδεση κρυστάλλου.

Δες ένα παράδειγμα:

30011
δες σελίδα 4 στο manual (http://www.datasheetcatalog.org/datasheets/150/108838_DS.pdf)

CLOCKMAN
02-03-12, 09:45
ΙΔΟΥ η λύση. Το κύκλωμα μετράει μέχρι το 5930029
Από την έξοδο της πύλης (and) παίρνεις το παλμό για το επόμενο στάδιο. ¶ν υποθέσουμε ότι αυτό είναι το πρώτο στάδιο δηλαδή τα δευτερόλεπτα, φτιανεις ένα ίδιο για τα λεπτά και για τις ώρες πάλι ένα ίδιο με τη διαφορά την συνδεσμολογία της πύλης για μέτρηση 24 ώρες,
30030

circuit211
05-03-12, 19:10
Ωραία και αυτή η λύση!!!

Ευχαριστώ πολύ για τη βοήθειά σας!!!