Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

PIC 16F84A ed Encoder

Tipologie, strumenti di sviluppo, hardware e progetti

Moderatore: Foto UtentePaolino

0
voti

[31] Re: PIC 16F84A ed Encoder

Messaggioda Foto Utenterusty » 22 ott 2012, 18:25

carlo201983 ha scritto:Dovrei mettere un link del sorgente e dello schema elettrico che andrebbe modificato. Ma se non c'è nessuno disposto ad aiutarmi non ha senso. comunque dico grazie ugualmente.


Beh questo a mio avviso andava fatto dall'inizio, come primo post: sorgente e schema elettrico in fidocad.
Se non dai queste informazioni fondamentali, a prescindere dal fatto che qui ci siano santi o meno, la vedo molto difficile; senza schema ne sorgente è praticamente sicuro che nessuno possa aiutarti :ok:
Avatar utente
Foto Utenterusty
4.075 2 9 11
Utente disattivato per decisione dell'amministrazione proprietaria del sito
 
Messaggi: 1578
Iscritto il: 25 gen 2009, 13:10

1
voti

[32] Re: PIC 16F84A ed Encoder

Messaggioda Foto UtentePaolino » 22 ott 2012, 19:49

Perdonatemi se insisto: ma il PIC16F628A non ha ingressi analogici, ma solo comparatori. Suggerivo PIC16F690 e ora aggiungo PIC16F819.

Poi, fate vobis!

Ciao.

Paolo.
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,6k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4226
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[33] Re: PIC 16F84A ed Encoder

Messaggioda Foto Utentecarlo201983 » 22 ott 2012, 20:48

ok allora vada per il PIC 16f819 è identico al 16f84 come pin di programazzione sempre se parli del 18 pin.. confermi ?
Ultima modifica di Foto UtentePaolino il 22 ott 2012, 21:11, modificato 1 volta in totale.
Motivazione: Non si cita tutto! Per rispondere, NON USARE il tasto CITA!
Avatar utente
Foto Utentecarlo201983
-2 3
New entry
New entry
 
Messaggi: 66
Iscritto il: 14 apr 2011, 14:51

0
voti

[34] Re: PIC 16F84A ed Encoder

Messaggioda Foto Utentecarlo201983 » 22 ott 2012, 20:55

rusty ha scritto:
carlo201983 ha scritto:Dovrei mettere un link del sorgente e dello schema elettrico che andrebbe modificato...

ecco loschema http://imageshack.us/f/818/schemaelettricomotorizz.jpg/ anche se un po' vecchiotto infatti i trimmer non ci sono + ed i pulsanti sono 2 comunque rende l'idea.
qui http://www.mediafire.com/?7080clr71tz0od0 trovi il sorgente


x la spiegazione basta guardare il video che ho postato giorni fa. O_/ grazie agli aiutanti volenterosi
Ultima modifica di Foto UtentePaolino il 22 ott 2012, 21:11, modificato 1 volta in totale.
Motivazione: Per rispondere, NON USARE il tasto CITA!
Avatar utente
Foto Utentecarlo201983
-2 3
New entry
New entry
 
Messaggi: 66
Iscritto il: 14 apr 2011, 14:51

1
voti

[35] Re: PIC 16F84A ed Encoder

Messaggioda Foto UtentePaolino » 22 ott 2012, 21:10

Foto Utentecarlo201983, ti chiedo di voler rispettare le semplici regole del forum. Almeno queste:
1. per rispondere NON USARE IL TASTO CITA! Si cita solo alla bisogna e non tutto il post di chi ti ha risposto!
2. le immagini devono essere caricate usando il server di ElectroYou e non server esterni!

Ciao.

Paolo.
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,6k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4226
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[36] Re: PIC 16F84A ed Encoder

Messaggioda Foto Utentecarlo201983 » 22 ott 2012, 21:13

ok ma non usando il tasto cita non si sa a chi è rivolta la risp. il primo forum dove si vieta il tasto cita.
meglio eliminarlo NO ? comunque ok. per l'immagine dalle prox le carico direttamente su di Voi.

P.S. hai letto la mia domanda inerente al PIC da te consigliato ?
Avatar utente
Foto Utentecarlo201983
-2 3
New entry
New entry
 
Messaggi: 66
Iscritto il: 14 apr 2011, 14:51

1
voti

[37] Re: PIC 16F84A ed Encoder

Messaggioda Foto UtentePaolino » 22 ott 2012, 21:17

Sì, vista. Il PIC16F819 è a 18 pin, come il 16F84A. Non sono in grado di dirti se il programmatore che hai suggerito tu sia adatto o no, in quanto non lo conosco.

Ciao.

Paolo.

P.S. La citazione può essere anche parziale. Inoltre c'è anche lo strumento "TAG" che ti permette di scrivere qualcosa del tipo:

Foto Utenterusty, grazie per la risposta!
Foto Utenteaduri, ci sei ancora?
Foto Utentecarlo201983, hai letto il regolamento e la guida galactica di Foto UtenteDonJ?

;-)
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,6k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4226
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[38] Re: PIC 16F84A ed Encoder

Messaggioda Foto Utentecarlo201983 » 22 ott 2012, 21:27

ok paolino comunque vedendo il datasheet c'è anche una versione a 20 pin. ad ogni modo faccio una prova di programmazzione del medesimo PIC così vedo se il mio prog lo scrive senza problemi
Avatar utente
Foto Utentecarlo201983
-2 3
New entry
New entry
 
Messaggi: 66
Iscritto il: 14 apr 2011, 14:51

0
voti

[39] Re: PIC 16F84A ed Encoder

Messaggioda Foto Utentecarlo201983 » 23 ott 2012, 15:31

Foto Utenterusty come vedi anche mettendo schema e sorgente nessuno mi ha dato alcuna risp. almeno che abbia aperto x visionare, come pensavo già dall'inizio era inutile metterlo.
Avatar utente
Foto Utentecarlo201983
-2 3
New entry
New entry
 
Messaggi: 66
Iscritto il: 14 apr 2011, 14:51

1
voti

[40] Re: PIC 16F84A ed Encoder

Messaggioda Foto Utenterusty » 23 ott 2012, 17:09

Facciamo le cose fatte bene: lo schema elettrico va postato in fidocad, cosi' che tutti possano aprirlo e modificarlo agevolmente (l'immagine che hai postato in imageshack sinceramente è troppo piccola, non si vedono bene i componenti, anche volendolo ridisegnare non riesco a leggerlo), e intanto posto, come avresti dovuto fare, il sorgente.
Da quello che ho capito a te non interessa molto il tipo di linguaggio utilizzato, dunque se qualcuno volesse rifarlo in assembly o in c e ti postasse l'hex pronto per la programmazione non farebbe alcuna differenza.

Codice sorgente:

Codice: Seleziona tutto
'****************************************************************
'*  Name    : CARPUTER5.BAS                                     *
'*  Author  : Daniels118                                        *
'*  Notice  : Copyright (c) 2012 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 27/04/2012                                        *
'*  Version : 1.0                                               *
'*  Notes   : Apertura/chiusura automatica e manuale di un      *
'*          : in un'auto                                        *
'****************************************************************

'@DEVICE XT_OSC  ' sets programmer to external oscillator - low power, HS would be for faster xtals.

DEFINE OSC 8 ' for 8 MHz osc
TRISA = %11111100
TRISB = %11001111

'----- INGRESSI -----
pOpen       var porta.2     'pulsante apertura
pClose      var porta.3     'pulsante chiusura
fcServo     var portb.2     'finecorsa chiusura
pKey        var porta.4     'pulsante chiave
tSpeed      var portb.3     'velocità

'----- USCITE ----
vccServo    var porta.0     'alimentazione servo
sigServo    var portb.4     'segnale servo
vccMonitor  var porta.1     'alimentazione monitor
vccBuzzer   var portb.5     'alimentazione buzzer

'------- VARIABILI ---------
servoState  var BYTE        'stato servo (acceso/spento)
curPos      var WORD        'posizione corrente servo
dstPos      var WORD        'posizione destinazione servo
maxPos      var WORD        'posizione massima apertura
minPos      var WORD        'posizione minima apertura
posOpen     var WORD        'posizione apertura
posClose    var WORD        'posizione chiusura
speed       var BYTE        'velocità
lKey        var BYTE        'accensione chiave
state       var BYTE        'stato (aperto/chiuso)
i           var byte


'------- INIT ---------
init:
    low vccservo
    low vccmonitor
    low vccbuzzer
    low sigservo
    servoState = 0
    maxpos = 360
    minpos = 110
    posOpen = 110
    posClose = 370
    dstPos = posclose
    curPos = dstPos
    PULSOUT sigSERVO, curpos
    state = 0
    lkey = 0
    PAUSE 1000

'------ MAIN LOOP ---------
mainloop:
    gosub getspeed
    if pKey = 1 then
        if lkey = 0 then gosub openmonitor
        if popen = 1 and pclose = 1 then
            if state = 1 then
                gosub closemonitor
            else
                gosub openmonitor
            endif
        elseif popen = 1 and dstpos < maxpos then
            dstpos = dstpos + 15
            gosub moveservo
            while pOpen = 1 '
            wend '
        elseif pclose = 1 and dstpos > minpos then
            dstpos = dstpos - 15
            gosub moveservo
            while pClose = 1 '
            wend '
        else '
        pause speed '
        PULSOUT sigSERVO, curpos '
    endif
    else
        if State = 1 then gosub closemonitor
    ENDIF
    lKey = pkey
GOTO mainloop

'---------- APRE IL MONITOR ---------
openMonitor:
    High vccmonitor
    dstPos = posOpen
    gosub moveServo
    state = 1
   'gosub servoOff
RETURN

'---------- CHIUDE IL MONITOR ---------
closeMonitor:
    low vccmonitor
    posOpen = dstPos
    dstPos = posclose
    gosub moveServo
    state = 0
    gosub servoOff
RETURN

'---------- ATTIVA L'ALIMENTAZIONE DEL SERVO ---------
servoOn:
    if servoState = 0 then
        servoState = 1
        high vccServo
        for i = 0 to 20
            PULSOUT sigSERVO, curpos
            pause 19
        next i
    endif
return

'---------- TOGLIE L'ALIMENTAZIONE DEL SERVO ---------
servoOff:
    if servoState = 1 then
       'for i = 0 to 250
           'if pOpen = 1 or pClose = 1 or pKey = 0 then return
           'pause 20
       'next i
       low vccServo
        servoState = 0
    endif
return
   
'---------- LEGGE VELOCITA' ---------
getSpeed:
    speed = 8
RETURN
           
'------ MUOVE SERVOCOMANDO --------
moveServo:
    if curPos < dstPos then
        gosub servoOn
        repeat
            PAUSE SPEED
            curPos = curPos + 1
            PULSOUT sigSERVO, curpos
        until curPos = dstPos
    elseif curPos > dstPos and fcservo = 0 then
        gosub servoOn
        repeat
            PAUSE SPEED
            curPos = curPos - 1
            PULSOUT sigSERVO, curpos
            if fcServo = 1 then dstPos = curPos
        until curPos = dstPos
    endif
RETURN

end


A te postare lo schema elettrico, leggibile pero', e soprattutto specifica bene cosa vorresti togliere e cosa vorresti aggiungere e dove; postare un'immagine su imageshack lascia il tempo che trova.
Il mio motto è aiutami ad aiutarti, ovvero mettimi in condizione di avere tutte le informazioni per poter capire cosa vuoi ottenere esattamente.
Se per esempio mi posti un link ad una immagine scrivendo anche
carlo201983 ha scritto:.. anche se un po' vecchiotto infatti i trimmer non ci sono + ed i pulsanti sono 2 comunque rende l'idea

non so' che farmene, ridisegna come vorresti che fosse, o perlomeno cosa vorresti ottenere, spiega nei minimi dettagli.

Saluti
Avatar utente
Foto Utenterusty
4.075 2 9 11
Utente disattivato per decisione dell'amministrazione proprietaria del sito
 
Messaggi: 1578
Iscritto il: 25 gen 2009, 13:10

PrecedenteProssimo

Torna a Realizzazioni, interfacciamento e nozioni generali.

Chi c’è in linea

Visitano il forum: Nessuno e 7 ospiti