Newsgroup: it.hobby.elettronica.digitale
Titolo: Beeeh Beeeh..... (PIC16F84A)

Il buon simone probabilmente stara' gia' pensando di
plonkarmi, ma visto che sono una capra (beeh beeh) chiedo
lumi prima di impazzirci sopra :D
Frugando nel "rottame" in ufficio (il cassetto dove finiscono
nell'oblio gli integrati/pic/salcazz di cui non si sa chi
l'ha comprato e per quale motivo) ho trovato il PIC in
oggetto (che qlo!)
Ora, visto che iersera il buon simone mi ha indirizzato
qua 
http://www.acmesystems.it/?id=207
 e che avendo trovato
il chip in questione nel suddetto cassetto, sto' armeggiando
con il PIC in oggetto; diciamo che sono all' "hello world"
ma date le basi bucoliche dalle quali parto e dopo sole 3
ore di letture e smanettamenti, 2 soli flash, avendo
realizzato il mio  "hello world"* scrivendolo da zero mi
sento abbastanza gasato.
*(uno stupidissimo contatore binario a LED con 4 tasti:
 +1, -1, increm.automatico, decrem.automatico)
Ora, saòtando a pie' pari le mie farneticazioni sul
costruire un improbabile space shuttle utilizzando solo
il PIC 16F84A e ritagli di giornale bagnati, ho un dubbio
che il mio collega mi ha insinuato nella mente e che
spero mi venga smentito:
E' possibile cambiare una porta definita come OUT in
IN e viceversa in fase di run time ?
Spiego: sfogliando il data sheet non ho trovato menzione
ne' del "non si puo'" ne' del "si puo' fare", indipercui
prima di rischiare una fumata nera preferisco chiedere
a chi ne sa di +.
Grazie anticipate :)

 IN e viceversa in fase di run time ?
Si puň. Uno dei miei primissimi progetti, una centralina luci che, 
incredibile, ha funzionato per anni noleggiata a questo e quel dj, 
funzionava proprio cosě, una fila di 8 pin erano (sono) collegati a 8 
pulsanti e a 8 attuatori (fotoaccoppiatori..? siceramente a distanza di 15 
anni non mi ricordo piů). Ovviamente ci sono dei trucchetti analogici per 
impedire che la pressione dei pulsanti interferisca con l'attuazione 
dell'uscita da parte dei push-pull interni. Questo, del resto, č facilitato 
dal fatto che puoi switchare il pin-direction in tempi velocissimi, direi 
non piů di uno o due cicli macchina.
Saluti
-- 
simone.bern
Mr. Heisemberg is not the only one who can affect a measurement by looking 
at it (Robert A. Pease)
zsimone...@zliberoz.it
 (Rimuovere i caratteri di zorro per rispondere 
via mail)

 Si può.
[Cut]
Ti faro' un monumento :)
Grazie. 

si si può come ti hanno già detto.
ma di che spaceshuttle parli?
che farebbe? 

 che farebbe?
Concretamente, liberera' me e la ditta per la quale lavoro
dalla "schiavitù" di utilizzare una scheda d'interfaccia
pc-macchina (imho) mal progettata da un ex dipendente.
In parole povere, attualmente abbiamo queste scelte:
Rimanere inchiodati ad una scheda mal progettata che
consente 5 analog IN, 6 digital OUT e 2 digital IN.
Utilizzare una soluzione tipo PLC su can-bus o similari
(molto costosa) che comunque ci rende dipendenti dai
"capricci" costruttivi e progettuali della ditta
produttrice.
Autocostruirsi una scheda di interfaccia PC-macchina
flessibile, che unisca costi produttivi contenuti
e possibilita' di espansione "a cascata".
Ci abbiamo ragionato un pomeriggio, io e il mio capo, e
siamo giunti alla conclusione che l'ideale e' una scheda
che sia in grado di divenire motherboard o daughterboard
a seconda della connessione utilizzata (qui la ragione
della mia domanda a proposito della possibilita' di cambiare
a caldo le I/O).
Questo darebbe la possibilita' di aumentare esponenzialmente
la scalabilita' delle connessioni utilizzate/utilizzabili
trasformando (concettualmente) le singole schede dalla
condizione di "terminale" alla condizione di "membro di team".
Se la cosa funziona, credo che rilascero' come GPL/GNU i
principi base della costruzione e degli algoritmi che
ho pensato; probabilmente sara' una goccia nel mare ma
di soluzioni scalabili e sopratutto low-cost non ne ho
trovate sul web, l'idea di creare una sorta di schedina
universale per acquisizione dati/attuatori mi solletica.

 universale per acquisizione dati/attuatori mi solletica.
bella la questione di fare una scheda abbastanza flessibile a costi 
contenuti.
anche io stavo progettando qualcosa di simile.
Varie linee di ingresso uscita.
Io quando ho cercato plc a basso prezzo ne ho trovato solo uno a circa 
50euro
e in più c'è bisogno del cavo per la programmazione che costa circa 60euro.

 60euro.
Il problema e' proprio questo: aggiungere 1 o 2 porte ad un PLC
commerciale ha comunque un costo elevato....
Attualmente il costo della vecchia scheda (componenti + tempo di
assemblaggio) lo abbiamo stimato in circa 20€ (produzione
semi-artigianale), facendo una stima spannometrica della scheda
risultante dovremmo rimanere su quella cifra; il che non e' male
se si considera che facendone fare 1 centinaio ad una ditta
specializzata (avendo quindi gia' realizzato internamente il
prototipo e gli schemi) il costo dovrebbe abbattersi fino a
circa 15€ ciascuna.

 rele' statici e leds.
mmm..., mi è venuto il dubbio di essere rimasto indietro, e infatti... ho 
visto che ci sono anche 4 pic della famiglia 18 con ADC a 12bit, non c'è 
bisogno di andar su un dsPic. Solo 2 canali PWM, sorry, per  i DAC dovrai 
usare qualcosa di esterno.
Mi permetto anche una ulteriore considerazione, 100 pezzi sono praticamente 
una preserie, ho l'impressione che la cifra che ti sei posto come obiettivo 
sia ottimistica. Prezzi e pezzature per gli integrati, soprattutto SMD, 
cominciano a risentire del fattore di scala sopra i 300-500 pezzi. Su 100 
pezzi, inoltre, incide notevolmente il costo di attrezzaggio e di start up. 
A spanne, siamo sui  3-5 euro a scheda. Un Pic18F, un DAC, un traslatore di 
livelli, qualche connettore e siamo già oltre 15 euro, e manca tutto il 
resto (montaggio, la logistica e il ricarico del terzista... )
Saluti,


 su PC di "spianare" la curva risultante.. uno schifo insomma.
Questo è normale, sarebbe bastato un minimo di filtraggio sul PIC per 
evitarlo questo problema...
Ma chi è che vi fa questi lavori?? Io posso aiutarvi a realizzare i 
prototipi, se si tratta di cose semplici.
Emiliano.

 Mi permetto anche una ulteriore considerazione, 100 pezzi sono
[cut]
ho rifatto i conti oggi e devo darti ragione, il che ridurra'
(per stare nei costi sperati) la flessibilita' della scheda derivante...
comunque anche considerare che una scheda sia motherboard con digitali
e analogici e la daughterboard (la parte espandibile) dotata solo
di digitali e' comunque una via percorribile; quindi i costi
"rientrano" pur rinunciando ad una fetta interessante.
L'ideale sarebbe quindi creare 2 tipologie di schede scalabili:
Ibride motherboard/daughterboard a costo medio con ADC/DAC e digitali
Daughterboard  a costo contenuto con solo digitali
Ma per ora mi concentrero' sul sostituire la merdaccia alla quale siamo
legati... allo shuttle di carta igienica pensero' piu' avanti :D

Emiliano wrote:

Mmmhh... interesting :)
Di dove sei, Carissimo ? :D

 Di dove sei, Carissimo ? :D
Sono di Roma, ma evitiamo affettuose manifestazioni :)
Emiliano.