walterword Inserito: 18 aprile 2015 Segnala Inserito: 18 aprile 2015 MCP23017 e' un buon I/O expander in I2C o SPI , per microntrollori Ora lo sto montando sulla mia scheda 16 I/O in I2C per arduino Due . In condizioni normali di lavoro , il reset del mcp23017 deve essere a 5 V .Arduino Due lavora a 3.3V , penso che possa farcela altrimenti mi tocca mettere un transitor BCxxx per traslare la tensione Però se lo voglio resettare , specialmente se usato come uscite , devo mettere il pin del micro a 0 V ma il pin reset deve essere connesso a pull down ? Io credo si debba collegare una resistenza da 10K pull down Voi cosa ne dite?
Livio Orsini Inserita: 18 aprile 2015 Segnala Inserita: 18 aprile 2015 (modificato) Il classico reset sul pawer on prevede un resistore verso il +V ed un condensatore colegato a 0V. In questo modo all'accensione il piedino di reset viene tenuto a livello "0" per un certo tempo, tempo necessario e sufficiente alr esto del sistema per completare l'inizializzazione. Se vuoi resettare a comando puoi prevedere un transistor inparllelo al condensatore, comandato da un segnale a 3.3 V di Arduino, che chiude a 0V il pin. Modificato: 18 aprile 2015 da Livio Orsini
walterword Inserita: 18 aprile 2015 Autore Segnala Inserita: 18 aprile 2015 infatti mi sembrava che c'era qualcosa ...be direi che per gli ingressi non e' necessario questo lavoro , per le uscite invece si Qualcosa del genere puo' andar bene?
Livio Orsini Inserita: 18 aprile 2015 Segnala Inserita: 18 aprile 2015 Metti una 4700 tra base ed emettitore per assicurare un'apertura sicura del transistor.
walterword Inserita: 18 aprile 2015 Autore Segnala Inserita: 18 aprile 2015 4700 Hom in entrata sulla base? In questo modo se l'uscita arduino e' alta il dispositivo MCP viene resettato . Essendo che le uscite arduino sono basse per default c'e' il piccolo rischio che vadano alte le uscite per una frazione di secondo Una variante potrebbe essere quella di usare un pnp al posto del npn Pero' tutto sommato c'e' il condensatore per cui va bene cosi All'inizio del setup di arduino metto a 1 l'uscita e alla fine del setup la riport a 0
Livio Orsini Inserita: 19 aprile 2015 Segnala Inserita: 19 aprile 2015 Essendo che le uscite arduino sono basse per default c'e' il piccolo rischio che vadano alte le uscite per una frazione di secondo Questo avviene all'accensione quando sei in fase di reset, quindi al più avrai un reset prolungato in perifieria.
walterword Inserita: 19 aprile 2015 Autore Segnala Inserita: 19 aprile 2015 (modificato) Livio , ma 4700 cosa si riferisce a hom del resistore base -emettitore no , non vedo altri punti dove mettere componenti .... Se metto un condensatore tra base e massa potrei ritardare il pilotaggio ....oppure usare un pnp comunque con un resistore da 10 K , quello del pull up , e un condensatore da 10 uF si ottine un ritardo di circa 100 mS che non e' male , nel frattempo il setup dovrebbe gia essere terminato , previo qualche delay per attendere il settaggio completo delle seriali ect . comunque la prima cosa che faccio nel setup e' resettare l'uscita del reset , che sono coperto dalla rete RC , e poi quello che viene viene dovrei essere a posto Modificato: 19 aprile 2015 da walterword
walterword Inserita: 19 aprile 2015 Autore Segnala Inserita: 19 aprile 2015 Praticamente nei primi 100mS metto a zero l'uscita del reset , col transitor, passati i 100mS il transisto mi tiene l' MCP23017 resettato , poi termino il setup e lo metto a 1 come ultima istruzione del setup
walterword Inserita: 19 aprile 2015 Autore Segnala Inserita: 19 aprile 2015 (modificato) Livio per la scelta del transistor , la corrente durante la chiusura e' di 5/10K=0.5 mA per cui va bene un S9018 o 2N3904 per stare piu trq. o NO? Con un condensatore da 47 uF ho una costante di tempo di 0.47 sec. meglio del 10 uF Modificato: 19 aprile 2015 da walterword
Livio Orsini Inserita: 19 aprile 2015 Segnala Inserita: 19 aprile 2015 praticamente va bene qualsiasi transistor per piccoli segnali, un BCxxx qualsiasi. Anche 10 µF son tanti. Slitamente si usa uno 0.47 µF, però ha poca importanza, al più il reset dura un po' di più.
walterword Inserita: 19 aprile 2015 Autore Segnala Inserita: 19 aprile 2015 (modificato) comunque sempre molto meno di un secondo e data l'applicazione credo che sia il meno dei mali Sopra dicevi di mettere una 4700 ...a cosa ti riferisci ad un resistore 4K7 tra base e collettore? Modificato: 19 aprile 2015 da walterword
giacomo56 Inserita: 19 aprile 2015 Segnala Inserita: 19 aprile 2015 Tra base ed emettitore, serve per migliorare la commutazione durante lo spegnimento credo.
walterword Inserita: 19 aprile 2015 Autore Segnala Inserita: 19 aprile 2015 (modificato) si scusa piccolo errore di scrittura , tra base -emettitore ...distrazione non uso gli ULN direttamente perche non devo tirare il rele direttamente , per cui sarebbe sprecato Modificato: 19 aprile 2015 da walterword
Livio Orsini Inserita: 19 aprile 2015 Segnala Inserita: 19 aprile 2015 Serve ad ancorare la base a 0 un assenza di segnale, ad abbassare l'impedenza d'ingresso così aumenta l'immunità ai disturbi, infine aumenta la velcoità di svotamento della base per la commutazione da saturo ad interdetto. la 4k7 può anche diventare una 2k2
walterword Inserita: 19 aprile 2015 Autore Segnala Inserita: 19 aprile 2015 ok gia saldata la 4K7 Ho oridnato una decina di MCP23017 spero arrivino presto ....
Livio Orsini Inserita: 19 aprile 2015 Segnala Inserita: 19 aprile 2015 Hai avuto problemi a pilotarli con la solita libreria I2C?
giacomo56 Inserita: 19 aprile 2015 Segnala Inserita: 19 aprile 2015 Sono d'accordo che gli uln sarebbero sprecati, intendevo una soluzione simile con array di transistors. Quanta corrente serve per gli ingressi della scheda relè? L'MPC non ce la fa? Se vuoi usare l'HC04 per forza puoi mettere una resistenza di pull-down all'ingresso in modo che durante il reset dell'MCP le uscite dell'HC04 rimangano alte. Ciao.
walterword Inserita: 19 aprile 2015 Autore Segnala Inserita: 19 aprile 2015 no ho provato con i PCF ....la corrente non e' poi molta , le schede a rele' sono abbastanza "intelligenti " su quel punto di vista Solo che non volevo complementare i bytes di sucita verso il MCP23 ,che comunque era l'ultimo dei mali inq uanto lo avrei fatto una volta sola nel sw .Avevo fatto dei test tempo fa con arduino uno , pcf e uln e mi sembrava ben robutsto come discorso per questo ho voluto esagerare Oltre alla tesi vorrei progettare qualcosa da usare nel domotico , tra non molto qua a casa inizio con le canalette belle e portar fili ect
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora