Professional Documents
Culture Documents
OROLOGIO DIGITALE
a MICROCONTROLLORE
con PIC 16F628A
www.narcisivalter.it
R6
VCC
R5
M2
+12V Alim.
U1 OUT
7805
IN
+
1N4001
R4
COM
R3
R11
100 - 1/2W
R2
M1
+9V Batt.
+ C2
100u
D2
1N4001
Q1
BC327
R1
DS1
TDSR515
C3
3
AC
R10
10k
3
15
13
S2
ORE
RA4
RB1
RB2
RB3
RB4
RB5
RB6
7
8
9
10
11
12
3
AC
8
AC
DS3
TDSR515
3
AC
5
dp
8
AC
DS5
TDSR515
DS4
TDSR515
3
AC
5
dp
8
AC
3
AC
5
dp
8
AC
DS6
TDSR515
3
AC
5
dp
8
AC
5
dp
RA0
RA1
RA2
RA3
RB7
17
18
1
2
5
3
2
4
A
B
C
D
VCC
RB0/INT
RA7
16
R21
U3-CD4543
BL PH
7
6
R22
470k
4k7
Solo per
Programmazione PIC
+V
R20
47k
M3
R27
10k
GND
8
DL3
a b c d e
LD
RA6
DL1
16
S3
MINUTI
5
dp
VCC
U2-16F628A
GND
S1
SHIFT
MCLR
9 1
10 2
11 3
12 4
13 5
15 6
f
14 7
g
a
b
c
d
e
In1
In2
In3
In4
In5
In6
In7
9
Com
U4-ULN2004
R9
10k
+5
R8
10k
8
AC
DS2
TDSR515
14
0.1
R7
10k
Q2
BC327
10k
10k
Gnd
8
f g
7 6 4 2 1 9 10
Out1
Out2
Out3
Out4
Out5
Out6
Out7
16
15
14
13
12
11
10
R13
R14
R15
R16
R17
R18
R19
a b c d e
f g
DL2
a b c d e
7 6 4 2 1 9 10
f g
a b c d e
7 6 4 2 1 9 10
f g
DL4
7 6 4 2 1 9 10
a b c d e
f g
a b c d e
7 6 4 2 1 9 10
f g
7 6 4 2 1 9 10
100
100
100
100
100
100
100
S4
ON
Q7
BC237
R24
330
1
2
3
ICSP
4
5
6
Q3
BC327
10k
Q4
BC327
10k
+ C1
47u
Q5
BC327
10k
D1
Q6
BC327
10k
R23
6k8
Q9
FXT690B
B
VCC
BUZ1
5V - Autoscillante
VCC
C4
0.1
R12
10k
16
16
VCC
9
C5
6.5-30p
R25
2k7
20p
Rext
R26
3M3
C6
10
Cext
11
Rs
XT1
4.194304 MHz
Q8
BC237
VCC
Q4
Q5
Q6
Q7
Q8
U5-CD4060 Q9
Q10
Q12
Q13
Q14
GND
Reset
12
7
5
4
6
14
13
15
1
2
3
Q1
Q4
Q5
10
Clock
Q6
Q7
Q8
U6-CD4020 Q9
Q10
11
Reset
Q11
Q12
Q13
Q14
GND
8
9
7
5
4
6
13
12
14
15
1
2
3
Author:
Project:
Size:
Note:
1
DWG no.
Rev.:
Scale:
1:1
www.narcisivalter.it - info@narcisivalter.it
5
Year:
Sheet:
2012
1 of 1
ELENCO COMPONENTI
Designator
Component
-------------------------------------------BUZ1
5V - Autoscillante
C1
47u - 16V
C2
100u - 25V
C3
0.1 u
C4
0.1 u
C5
6.5-30 pF compensatore
C6
20 pF
D1
1N4001
D2
1N4001
DL1
DIODO LED Rosso Rettangolare
DL2
DIODO LED Rosso Rettangolare
DL3
DIODO LED Rosso Rettangolare
DL4
DIODO LED Rosso Rettangolare
DS1
Display TDSR515
DS2
Display TDSR515
DS3
Display TDSR515
DS4
Display TDSR515
DS5
Display TDSR515
DS6
Display TDSR515
M1
Connettore 2 vie (+9V Batt.)
M2
Connettore 2 vie (+12V Alim.)
M3
Connettore 6 vie (ICSP)
Q1
BC327
Q2
BC327
Q3
BC327
Q4
BC327
Q5
BC327
Q6
BC327
Q7
BC237
Q8
BC237
Q9
FXT690B
R1
10k
R2
10k
R3
10k
R4
10k
R5
10k
R6
10k
R7
10k
R8
10k
R9
10k
R10
10k
Valter Narcisi San Benedetto del Tronto (AP) info@narcisivalter.it
www.narcisivalter.it
R11
R12
R13
R14
R15
R16
R17
R18
R19
R20
R21
R22
R23
R24
R25
R26
R27
S1
S2
S3
S4
U1
U2-16F628A
U3-CD4543
U4-ULN2004
U5-CD4060
U6-CD4020
XT1
100 - 1/2W
10k
100
100
100
100
100
100
100
47k
470k
4k7
6k8
330
2k7
3M3
10k
Pulsante (SHIFT)
Pulsante (ORE)
Pulsante (MINUTI)
Pulsante (ON)
7805
Microcontrollore PIC 16F628A
CD4543
ULN2004
CD4060
CD4020
Quarzo ITT 4.194304 MHz
www.narcisivalter.it
www.narcisivalter.it
www.narcisivalter.it
www.narcisivalter.it
Quando si vuole realizzare una base dei tempi molto precisa, consigliabile partire da un'elevata frequenza del
quarzo: l'eventuale tolleranza del valore di quest'ultimo sar divisa molte volte (nel nostro caso 4.194.304 volte
appunto) ottenendo cos una base dei tempi con il massimo grado di precisione.
Evitando di collegare il quarzo direttamente sugli appositi piedini del PC Micro, ho potuto
"risparmiare" una porta I/O per la funzione SHIFT (e, di conseguenza, facilitarmi il compito
in fase di progettazione software). L'uscita da 1 Hz prelevata dal piedino 13 del CD4020 si
collega il piedino RB0/INT del microcontrollore (nel firmware, il piedino RB0/INT stato
programmato per ricevere gli impulsi da tale porta e generarne un INTERRUPT: questo
significa che ad ogni INTERRUPT, cio ogni secondo, l'orario sar aggiornato). Lo stesso
impulso che esce dal piedino 13 del CD4020 pilota anche, tramite il transistor Q9, i 4 LED
separatori.
A proposito dei 4 LED, il PCB ne prevede l'utilizzo del tipo rettangolare: poi, volendo, possibile coprirne una
parte con del nastro nero per ridurre la "grandezza del segmento" e farlo diventare una sorta di piccolo punto
quadrato.
Il compensatore C5 utile per "correggere" eventuali piccole tolleranze del quarzo: per la taratura, collegate il
puntale di un frequenzimetro sul pin 9 di U5 (CD4060) e regolate il compensatore fino a leggere una frequenza
di 4194304 Hz.
www.narcisivalter.it
LA BATTERIA IN TAMPONE DA 9V
L'orologio predisposto per il collegamento di una batteria ricaricabile da 9V al Ni-Mh
(oppure anche al Ni-Cd) che entra in funzione solo durante un eventuale Black-Out: al
contrario, durante il funzionamento normale dell'orologio, la batteria si ricarica (e mantiene
la sua carica fino al prossimo eventuale Black-Out). Potete utilizzare anche una normale
batteria alcalina da 9V, non ricaricabile, ma in questo caso necessario rimuovere la
resistenza R11 da 100 ohm.
In presenza di Black-Out, le cifre del display si spengono (per risparmiare corrente ed
evitare che la batteria si scarichi precocemente): i quattro puntini luminosi continueranno a
svolgere la loro funzione indicando che l'orologio comunque in funzione (e la batteria non
ancora scarica !).
Per visualizzare l'ora, in caso di Black-Out, necessario agire sul pulsante S4 (ON). Il
beep che scandisce le ore funziona anche durante un Black-Out.
I COMANDI
L'orologio digitale prevede 4 pulsanti: MINUTI, ORE, SHIFT e ON.
MINUTI - Ad ogni pressione di questo pulsante, le cifre dei minuti aumentano di un'unit:
arrivati a "59", la successiva pressione visualizzer "00" e cos via. Ad ogni pressione del
pulsante MINUTI, i secondi sono azzerati.
ORE - Ad ogni pressione di questo pulsante, le cifre delle ore aumentano di un'unit: arrivati
a "23", la successiva pressione visualizzer "0" e cos via. La prima cifra a sinistra
(decine di ORE) quando zero, spenta automaticamente.
SHIFT - Quando il pulsante dei MINUTI o delle ORE sono premuti insieme al pulsante
SHIFT, le cifre vengono decrementate (conteggio all'indietro).
ON - In caso di Black-Out, la pressione di questo pulsante permette di vedere l'orario (questo
pulsante funziona solo se stata inserita la batteria in tampone).
IL RESET DELL'OROLOGIO
Se per qualche motivo si ha la necessit di resettare l'orologio, sufficiente premere insieme
i pulsanti MINUTI e ORE: un lungo beep segnala il Reset e l'orario mostrato sar 12:30:00
(che anche l'orario di default all'accensione dell'orologio).
www.narcisivalter.it
MODIFICHE SUCCESSIVE
Il progetto ha subito una sola modifica dopo la sua realizzazione: l'inserimento di un
pulsante di TEST tra il piedino 4 del micro e la massa, premendo il quale si avvia una
procedura che visualizza in sequenza i sei display per verificare il corretto funzionamento di
ogni segmento (durante il test, un TOC segnala il cambio di cifra). Una volta terminato il
TEST, l'orologio ritorna al suo funzionamento originale ()durante il test, il conteggio
dell'orologio non si ferma, ma continua anche se le cifre non vengono visualizzate).
I dettagli della modifica sono visibili nelle immagini successive (nel mio prototipo ho inserito
un piccolo microswitch tra il microcontrollore e il connettore ICSP).
Per questa piccola modifica stato creato un nuovo firmware, la versione 2.0 scaricabile
sotto (Nella precedente versione firmware, il piedino 4 del microcontrollore era stato
programmato come MCLR mentre in questa nuova versione, il piedino funziona come
normale porta di Input).
IN CONCLUSIONE
Nelle pagine successive sono visualizzati il PCB Layout (disposizione dei componenti) ed il
Master.
In poco spazio sono stati inseriti 6 display, 5 circuiti integrati e altri componenti per cui i ponti da inserire sono
50 (quelli segnati in rosso), molti dei quali sotto i display: il prezzo che si paga quando non si vuole utilizzare
i circuiti stampati a doppia faccia, sempre molto difficili da realizzare a livello hobbistico.
www.narcisivalter.it