Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

PIC timer preimpostato

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[1] PIC timer preimpostato

Messaggioda Foto Utentebebos89 » 8 set 2015, 11:29

Salve, volevo fare una cosa molto semplice per alcuni di voi ma purtroppo non avendo dimestichezza con i PIC e non avendo il tempo materiale per imparare a programmarli vi chiedo un supporto e consiglio.
Dovrei fare un timer preimpostato per un erogatore di orzo e zucchero e fare pilotare tre relè da un PIC 16f84.
Mi spiego meglio con uno schemino:
un pulsante dovrebbe far partire il tutto,
Accendere relè 1 per un tempo di 2 secondi,
accendere relè 2 e 3 contemporaneamente con un ritardo di mezzo secondo dall'attivazione del relè 1,
spegnere il relè 2 dopo 4,5 secondi dall'attivazione,
spegnere il relè 3 dopo 7.5 secondi dall'attivazione.


con un altro pulsante attivare lo stesso circuito con la stessa sequenza ma con tempi diversi.

La parte del circuito dovrebbe essere abbastanza semplice da quello che ho visto solo che la parte di programmazione per me è arabo antico. Se poteste aiutarmi ve ne sarei molto grato.
Avatar utente
Foto Utentebebos89
60 1 6
Frequentatore
Frequentatore
 
Messaggi: 126
Iscritto il: 14 nov 2012, 15:06

0
voti

[2] Re: PIC timer preimpostato

Messaggioda Foto UtenteIlGuru » 8 set 2015, 11:53

Se posti il circuito in fidocad è meglio, così fissate quali sono le porte, i pin usati e se commutano alti o bassi, un firmware lo si può scrivere più facilmente.
\Gamma\nu\tilde{\omega}\theta\i\ \sigma\epsilon\alpha\upsilon\tau\acute{o}\nu
Avatar utente
Foto UtenteIlGuru
5.482 2 10 13
G.Master EY
G.Master EY
 
Messaggi: 1924
Iscritto il: 31 lug 2015, 23:32

0
voti

[3] Re: PIC timer preimpostato

Messaggioda Foto Utentesimo85 » 8 set 2015, 11:53

bebos89 ha scritto:la parte di programmazione per me è arabo antico. Se poteste aiutarmi ve ne sarei molto grato.

Le conoscenze del linguaggio C sono proprio nulle ?
In tal caso conviene imparare un po' di C applicato ai micro..

Altrimenti

bebos89 ha scritto:con un altro pulsante attivare lo stesso circuito con la stessa sequenza ma con tempi diversi.


Se i tempi 'diversi' non cambiano sempre, forse fai prima a farlo senza micro ?
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[4] Re: PIC timer preimpostato

Messaggioda Foto Utentebebos89 » 8 set 2015, 12:01

Ho una conoscenza molto buona del C++ e non del C, purtroppo il circuito serve a brevissimo tempo per una linea di imbottigliamento e tra tempi stretti, lavoro e studio non ho il tempo materiale di mettermi a studiare anche questo. Conto di farlo in un futuro prossimo quando riuscirò a trovarne il tempo.
Per quanto riguarda la realizzazione senza PIC ci ho provato ma il circuito verrebbe molto più imponente, grossolano e non facilmente modificabile all'occorrenza.
Posterò a breve lo schema in fidocad come suggerito, intanto vi ringrazio della gentile attenzione.
Avatar utente
Foto Utentebebos89
60 1 6
Frequentatore
Frequentatore
 
Messaggi: 126
Iscritto il: 14 nov 2012, 15:06

0
voti

[5] Re: PIC timer preimpostato

Messaggioda Foto Utentesimo85 » 8 set 2015, 12:12

bebos89 ha scritto:Ho una conoscenza molto buona del C++ e non del C

Solitamente è il contrario. Se conosci il C++, programmare in C non dovrebbe essere un problemone..

Stando a quello che scrivi, direi che hai tutte le carte in regola per programmare il micro in C, quindi non capisco perché scrivi che è arabo antico..
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[6] Re: PIC timer preimpostato

Messaggioda Foto Utentebebos89 » 8 set 2015, 12:36

Perché nel c++ il linguaggio è diverso, ci sono cicli che non sono accettati in C, anche l'inserimento di comandi e variabili è da rivedere come cin e cout diventano printf o altro....comunque non è solo la scrittura ma soprattutto l'implementazione del programma per il PIC che mi è ostica.
Avatar utente
Foto Utentebebos89
60 1 6
Frequentatore
Frequentatore
 
Messaggi: 126
Iscritto il: 14 nov 2012, 15:06

0
voti

[7] Re: PIC timer preimpostato

Messaggioda Foto UtenteIlGuru » 8 set 2015, 13:07

Comunque sia, nella programmazione embedded la progettazione del software non è disgiunta dalla progettazione dell'hardware ma vanno di pari passo, ad esempio si può scegliere di scrivere un programma leggermente più complicato per poter utilizzare una certa sequenza di pin che permettono uno sbroglio del PCB più semplice ecc... quindi come minimo un circuito su cui lavorare ci vuole.
Ultima modifica di Foto UtenteIlGuru il 8 set 2015, 13:08, modificato 1 volta in totale.
\Gamma\nu\tilde{\omega}\theta\i\ \sigma\epsilon\alpha\upsilon\tau\acute{o}\nu
Avatar utente
Foto UtenteIlGuru
5.482 2 10 13
G.Master EY
G.Master EY
 
Messaggi: 1924
Iscritto il: 31 lug 2015, 23:32

0
voti

[8] Re: PIC timer preimpostato

Messaggioda Foto Utentesimo85 » 8 set 2015, 13:07

bebos89 ha scritto:l'implementazione del programma per il PIC che mi è ostica.

Beh dai, non è poi cosi complicato..

Come prima cosa ti consiglio di dare una occhiata alla guida del compilatore XC8 della Microchip: http://ww1.microchip.com/downloads/en/D ... 52053B.pdf

Navigando un po' nel blog di Foto UtentePaolino, dovresti trovare molte informazioni ed esempi di codice C per i PIC.

Poi, se ti va, posta lo schema e comincia a scrivere il programma e quando si può lo si controlla..

O_/
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[9] Re: PIC timer preimpostato

Messaggioda Foto Utentebebos89 » 8 set 2015, 13:10

Lo schema l'ho fatto solo che fidocad non mi da il codice da postare. Forse avrei dovuto farlo con fidocadj. Per ora mando una foto e appena posso posto lo schema.
2015-09-08_130943.jpg
Avatar utente
Foto Utentebebos89
60 1 6
Frequentatore
Frequentatore
 
Messaggi: 126
Iscritto il: 14 nov 2012, 15:06

0
voti

[10] Re: PIC timer preimpostato

Messaggioda Foto Utentesimo85 » 8 set 2015, 13:14

I pulsanti sui pin RA2 e RA3 non vanno bene. Devi usare i pin con le interruzioni Interrupt on Change.
Poi, puoi usare i pull-up interni.

Vedi il datasheet a pag. 23 e 24.
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

Prossimo

Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 8 ospiti