Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Collegare tre interruttori in un unico pin?

Progetti, interfacciamento, discussioni varie su questa piattaforma.

Moderatori: Foto UtenteMassimoB, Foto UtenteWALTERmwp, Foto Utentexyz

0
voti

[21] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto UtentePietroBaima » 1 ago 2017, 14:54

boiler ha scritto:Per curiosità sono andato a vedere nel datasheet dell'ATmega328P... l'impedenza d'ingresso dell'ADC è di 100M.

Accidenti... non ne azzecco una! Mi ricordavo 10k ohm.
O è arteriosclerosi galoppante oppure... che abbia ragione Foto Utenteedgar ? :-M

Pietro
Generatore codice per articoli:
nomi
emoticon
citazioni
formule latex

Io capisco le cose per come le scrivete. Per esempio: K sono kelvin e non chilo, h.z è la costante di Planck per zepto o per la zeta di Riemann e l'inverso di una frequenza non si misura in siemens.
Avatar utente
Foto UtentePietroBaima
76,6k 6 12 13
G.Master EY
G.Master EY
 
Messaggi: 9203
Iscritto il: 12 ago 2012, 1:20
Località: Londra

0
voti

[22] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto Utenteedgar » 1 ago 2017, 15:10

PietroBaima ha scritto:Mi ricordavo 10k Ohm.

Ricordavo anch'io 10 kohm, così ho dato un'occhiata al datasheet:
The ADC is optimized for analog signals with an output impedance of approximately 10 kΩ or less.
Non ho trovato invece una specifica dell'impedenza di ingresso, che presumo sia decisamente maggiore
Avatar utente
Foto Utenteedgar
5.157 3 3 8
Master
Master
 
Messaggi: 2431
Iscritto il: 15 set 2012, 22:59

1
voti

[23] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto Utenteboiler » 1 ago 2017, 15:14

edgar ha scritto:Non ho trovato invece una specifica dell'impedenza di ingresso, che presumo sia decisamente maggiore

http://www.atmel.com/Images/Atmel-42735 ... asheet.pdf
Pagina 375

Ciao, Boiler
Avatar utente
Foto Utenteboiler
14,6k 4 7 13
G.Master EY
G.Master EY
 
Messaggi: 2513
Iscritto il: 9 nov 2011, 12:27

0
voti

[24] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto Utenteedgar » 1 ago 2017, 15:25

:ok: :ok:
Avatar utente
Foto Utenteedgar
5.157 3 3 8
Master
Master
 
Messaggi: 2431
Iscritto il: 15 set 2012, 22:59

1
voti

[25] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto UtentePietroBaima » 1 ago 2017, 15:26

fiuu... per fortuna sono ancora normale (forse :mrgreen: )
Mi ricordavo correttamente di usare impedenze trascurabili rispetto a 10k\Omega, sebbene Foto Utenteboiler abbia ragione sulla impedenza di ingresso.

La ragione di questo è spiegata a pagina 312 (è per il S/H) al paragrafo 28.6.1. Analog Input Circuitry.

Grazie
Generatore codice per articoli:
nomi
emoticon
citazioni
formule latex

Io capisco le cose per come le scrivete. Per esempio: K sono kelvin e non chilo, h.z è la costante di Planck per zepto o per la zeta di Riemann e l'inverso di una frequenza non si misura in siemens.
Avatar utente
Foto UtentePietroBaima
76,6k 6 12 13
G.Master EY
G.Master EY
 
Messaggi: 9203
Iscritto il: 12 ago 2012, 1:20
Località: Londra

1
voti

[26] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto UtentePietroBaima » 1 ago 2017, 15:37

Il paragrafo successivo fa poi riferimento alle accortezze necessarie al progetto del PCB, relative alla sezione analogico/digitale, che per qualche ragione sono state disattese su arducoso.
10 bit richiedono già una certa attenzione al progetto dello stampato e il risultato è che poi la gente si lamenta che non riesce ad acquisire niente.
Generatore codice per articoli:
nomi
emoticon
citazioni
formule latex

Io capisco le cose per come le scrivete. Per esempio: K sono kelvin e non chilo, h.z è la costante di Planck per zepto o per la zeta di Riemann e l'inverso di una frequenza non si misura in siemens.
Avatar utente
Foto UtentePietroBaima
76,6k 6 12 13
G.Master EY
G.Master EY
 
Messaggi: 9203
Iscritto il: 12 ago 2012, 1:20
Località: Londra

1
voti

[27] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto UtenteIsidoroKZ » 1 ago 2017, 19:56

Se al posto di tre interruttori ci fossero tre deviatori, le cose andrebbero decisamente meglio.
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Avatar utente
Foto UtenteIsidoroKZ
103,6k 1 3 8
G.Master EY
G.Master EY
 
Messaggi: 18426
Iscritto il: 17 ott 2009, 0:00

0
voti

[28] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto Utenteboiler » 1 ago 2017, 20:16

Vero, ma se l'arduino è così scrauso, consiglierei quasi di mettere un i/o expander sulla I2C. Il bello è che l'I2C resta utilizzabile per altri componenti, quindi in teoria scendiamo con il pin-count da 1 a 0. E visti i circuiti che vengono presi in considerazione è forse meglio se dell'hardware se ne occupano TI o Microchip.

Boiler
Avatar utente
Foto Utenteboiler
14,6k 4 7 13
G.Master EY
G.Master EY
 
Messaggi: 2513
Iscritto il: 9 nov 2011, 12:27

0
voti

[29] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto Utentedadothebest » 4 set 2017, 19:15

Ho collegato 3 pulsanti con il seguente schema:

Ogni pulsante è collegato ad un diverso pin e deve controllare un diverso led. Ho caricato il seguente sketch:
Codice: Seleziona tutto
#define LED1 11   
#define LED2 12
#define LED3 13             
#define BUTTON1 0     
#define BUTTON2 1
#define BUTTON3 2     
 
int  val1 = 0;               
int  val2 = 0;
int  val3 = 0;

void setup() { 
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(LED3, OUTPUT);       
  pinMode(BUTTON1, INPUT);   
  pinMode(BUTTON2, INPUT);
  pinMode(BUTTON3, INPUT);

 
void loop() { 
  val1 = digitalRead(BUTTON1);   
  if (val1 == HIGH) { 
    digitalWrite(LED1, HIGH); 
  } 
  else { 
    digitalWrite(LED1, LOW); 
  } 

    val2 = digitalRead(BUTTON2);   
  if (val2 == HIGH) { 
    digitalWrite(LED2, HIGH); 
  } 
  else { 
    digitalWrite(LED2, LOW); 
  } 

    val3 = digitalRead(BUTTON3);   
  if (val3 == HIGH) { 
    digitalWrite(LED3, HIGH); 
  } 
  else { 
    digitalWrite(LED3, LOW); 
  } 


Il problema è che a rispondere è solo un pulsante: quando premo il primo pulsante tutti i led si accendono in modo casuale e quando lo rilascio si spengono in modo casuale mentre premendo gli altri due pulsanti non succede nulla.
Cos'ho sbagliato? Grazie.
Avatar utente
Foto Utentedadothebest
24 2 7
Frequentatore
Frequentatore
 
Messaggi: 226
Iscritto il: 25 nov 2013, 17:13
Località: Ascoli Piceno

0
voti

[30] Re: Collegare tre interruttori in un unico pin?

Messaggioda Foto Utentexyz » 4 set 2017, 21:03

E' consuetudine disegnare negli schemi elettri la linea GND in basso e quella di alimentazione in alto e sopratutto nelle intersezione con collegamento si mette il pallino.

Manca lo schema dei LED.

Esiste un motivo di un collegamento con dei resistori pull-down esterni senza utilizzare i resistori pull-up presenti nel micro-controllore ATmega ?
Avatar utente
Foto Utentexyz
5.900 2 4 5
G.Master EY
G.Master EY
 
Messaggi: 1548
Iscritto il: 5 dic 2009, 18:37
Località: Italy Turin

PrecedenteProssimo

Torna a Arduino

Chi c’è in linea

Visitano il forum: Nessuno e 0 ospiti