home | area personale         schemi | tutorial | robotica | pic micro | recensioni         forum | chat irc         faq | contatti         store
username
password
cerca

 
FORUM: Pic Micro
Tutto quanto riguarda questi microprocessori... progetti, suggerimenti, aiuti, discussioni...ecc


devo utilizzare la porta.4
     
Autore Messaggio opzioni
maxymo





postato il:
25.06.2010, alle ore 22:33
devo utilizzare la porta.4 

Ciao a tutti.
Sto' diventando matto per far funzionare la portA.4 di un pic 16f628.
La devo utilizzare come uscita collegandoci un rele' con relativo transistor e resistenza di pull-up. Utilizzo il clok interno e programma in mikrobasic.
Perche' non funziona?



Per capire bene una cosa devi costruirla...
FPGA





postato il:
25.06.2010, alle ore 23:07
il pin RA4 in uscita e' un open collector
Che transistor usi?
maxymo





postato il:
25.06.2010, alle ore 23:08
bc 337 con resistenza da 4,7k



Per capire bene una cosa devi costruirla...
cikcavi




una ogni 10 livelli


postato il:
26.06.2010, alle ore 01:32
collega la base direttamente al RA4 e la resistenza fra base e +5V
maxymo





postato il:
26.06.2010, alle ore 08:46
collega la base direttamente al RA4 e la resistenza fra base e +5V


Speravo di ritrovarti.
ho fatto come mi hai detto l'altra sera ed effettivamente si eccita il rele' ma non rimane eccitato.
Per provare ho fatto un programma cosi':

Accendi:
porta.1=1
DELAY_MS(1000)
porta.4=1
DELAY_MS(1000)
porta.2=1
DELAY_MS(1000)
porta.3=1
DELAY_MS(1000)
porta.0=1
DELAY_MS(1000)
PORTA=%00000

GOTO MAIN
cosi' facendo si eccita il primo rele' per 1 sec. e rimane eccitato,
poi si eccita il secondo rele' per 1 sec. e dopo si sgangia
di consequenza si eccitano uno ad uno gli altri e rimangono eccitati per il tempo impostoto. Solo il rele' alla porta.4 non rimane giu'.
Dipende dal programma o dalla scheda perche' provando il programma con le portB funziona benissimo.



Per capire bene una cosa devi costruirla...
Jasson





postato il:
26.06.2010, alle ore 13:48
Sicuramente hai gi provato, comunque visto che il 16f628 ha ingressi analogici, prova prima cosa a settare la porta come uscita TRISA=0 e a disabilitare tutte le porte analogiche, CMCON=7
maxymo





postato il:
26.06.2010, alle ore 14:11
jASSON gia' fatto....... POI?


Per capire bene una cosa devi costruirla...
Jasson





postato il:
26.06.2010, alle ore 15:34
Se leggi il datashet del pic 16f628, vedrai che tutte le uscite sono cmos, tranne la RA4 che OD ovvero Open Drain.

A questo punto credo che devi amettere una reistenza di pull up, ovvero una reistenza tra +vcc e ra4, in questo modo quando l'uscita non a 0, v a livello logico alto.
maxymo





postato il:
26.06.2010, alle ore 17:04
vorrei fare una cosa cosi':
premo un pulsante e attivo 2 uscite, una che deve lampeggiare a 700ms ed una fissa per 10 sec.Dopo 3 lampeggi pero' si deve accendere una terza fissa per i 10 sec. dopodiche tutto si ferma fino a ripigiare il pulsante.
Avrei previsto di farla cosi':

while true
PUL=1
DELAY_MS(400)
if pul=0 then 'se pulsante premuto
delay_ms(400) ' ritardo per falsi allarmi
goto INIZIO
end if
wend
INIZIO:
K=0
for k=1 to 30
PORTB.3 = not PORTB.3 'inizio lampeggio
delay_ms(700)
PORTA.0=1 'USCITA 1 ON
IF K=7 THEN 'ASPETTA UN PO'
PORTA.1=1 'USCITA 2 ON
END IF
GOTO MAIN

COSI' funziona ma se lo volessi far fermare con un altro ingresso (pulsante) come faccio?



Per capire bene una cosa devi costruirla...
Jasson





postato il:
26.06.2010, alle ore 20:19
Non ho capito perch funziona, hai una pausa di 0,7sec e dopo attivi l'uscita 1, che non viene pi spenta, e dopo 7 cicli, quindi circa 5 secondi attivi l'uscita 2 che anche questa non viene pi spenta.
Poi non vedo dove l'istruzzione next K per chiudere il cilclo for
Sei sicuro che funzioni come hai detto , o mi sfugge qualcosa?


segui questo thread con grixFC, per questa funzione devi aver installato il software grixFC

torna su
     

Come utente anonimo puoi leggere il contenuto di questo forum ma per aprire una discussione
o per partecipare ad una discussione esistente devi essere registrato ed accedere al sito




 

 
 
indietro | homepage | torna su copyright © 2004/2014 GRIX.IT - la community dell'elettronica amatoriale