Resultados da busca - %E3%80%90%E2%94%83%E6%80%BB%E4%BB%A32%E2%92%8F7%E2%92%8F01705%5B%EF%BC%B1%5D%E3%80%91%E3%80%91%E6%81%92%E8%BE%BE%E5%A8%B1%E4%B9%902%E6%8F%90%E7%8E%B0%E5%A5%BD%E4%B9%85%E5%88%B0
o uso do Tip106, o que sei é que na pratica se tirar ele, não funciona em todos os casos, as vezes para disparar alguns equipamentos falha.
O R2 do circuito é apenas um pulldown e é necessario para não entrar em curto (vcc com gnd) quando o botão é pressionado. Na pratica esse botão não existe, foi feito apenas para simular o funcionamento, e o disparo é controlado por uma porta do arduino.
Ainda continuo sem entender :
1) De onde que sai este 0,5v (mostrado no osciloscopio virtual), ja que não tem relação com R14, mudei de valor ele e inclusive tirei ele fora e continua dando +-0,5v no pino 4 do optoacoplador ?
2) Se eu trocar o til 111 por outro tipo EL817 (não achei nenhum parecido com esse para simular no proteus), meu circuito nao funciona ?
(http://www.sztuofeng.com/pdf/%E4%BA%BF%E5%85%89EL817.pdf)
3) Pq o uso do Tip é necessario, se não, não funciona ?
Abraços,
Jota
…
ro equipamento e funcionou usando um Til 111 e um Tip106D, como demostro em uma simulação no proteus, circuito em anexo.
Se eu não usar o Tip 106 ele não da o pulso e não "pressiona" o botão.
Parece que eu preciso gerar uma pequena tensão para "pressionar" o botão no outro equipamento, simulado na entrada B do osciloscopio, 0,5V funcionou legal, claro que depois de um curto periodo volta a 0v.
Minha duvida é :
1) De onde que sai este 0,5v (mostrado no osciloscopio virtual), ja que não tem relação com R14, mudei de valor ele e inclusive tirei ele fora e continua dando +-0,5v no pino 4 do optoacoplador ?
2) Se eu trocar o til 111 por outro tipo EL817 (não achei nenhum parecido com esse para simular no proteus), meu circuito nao funciona ?
(http://www.sztuofeng.com/pdf/%E4%BA%BF%E5%85%89EL817.pdf)
3) Pq o uso do Tip é necessario, se não, não funciona ?
Valeu pessoal do Lab.
[]´s
Jota
…
m/2011/01/31/tutorial-arduino-and-gsm-cellular-%E2%80%93-part-two/) cheguei a ver que ele conecta o shield tanto por 9v como por USB em algumas imagens e videos.
Por que acho que nao posso ligar ela na USB e ao mesmo tempo alimentar com 5V 2A posso?
O que é realmente recomendado neste caso?
Posso conectar 5v na entrada de 9v?
Abraços,
Obrigado…
Adicionado por Matheus Canela ao 10:15 em 19 fevereiro 2013
ternando.
A ideia é que cada chave acione sua respectiva saída sem causar interferência, alguém já passou por isso e tem uma ideia para me ajudar?
Grato pelo apoio!
//Saídas int E0 = 2;
int E1 = 3;
int E2 = 4;
int E3 = 5;
int E4 = 6;
int E5 = 7;
int E6 = 8;
int E7 = 9;
int E8 = 10;
int E9 = 11;
int E10 = 12;
int E11 = 13;
int E12 = 14;
int E13 = 15;
int E14 = 16;
int E15 = 17;
//Entradas const int S1 = 20;
const int S2 = 21;
const int S3 = 22;
const int S4 = 23;
const int S5 = 24;
const int S6 = 25;
const int S7 = 26;
const int S8 = 27;
const int S9 = 28;
const int S10 = 29;
const int S11 = 30;
const int S12 = 31;
const int S13 = 32;
const int S14 = 33;
const int S15 = 34;
const int S16 = 35;
int dado; //variável que receberá os dados da porta serial
//Ajuste de Debounce "S1" const long DEBOUNCE_DELAY0 = 100;
int leitura_anterior0 = 1;
int leitura_anterior_db0 = 1;
long time_ultimo_debounce0 = 0;
int debounce_0 = 1;
//Ajuste de Debounce "S2" const long DEBOUNCE_DELAY1 = 100;
int leitura_anterior1 = 1;
int leitura_anterior_db1 = 1;
long time_ultimo_debounce1 = 0;
int debounce_1 = 1;
//Ajuste de Debounce "S3" const long DEBOUNCE_DELAY2 = 100;
int leitura_anterior2 = 1;
int leitura_anterior_db2 = 1;
long time_ultimo_debounce2 = 0;
int debounce_2 = 1;
//Ajuste de Debounce "S4" const long DEBOUNCE_DELAY3 = 100;
int leitura_anterior3 = 1;
int leitura_anterior_db3 = 1;
long time_ultimo_debounce3 = 0;
int debounce_3 = 1;
void setup(){ Serial.begin(9600);//frequência da porta serial
//Saídas
pinMode(E0,OUTPUT);
pinMode(E1,OUTPUT);
pinMode(E2,OUTPUT);
pinMode(E3,OUTPUT);
pinMode(E4,OUTPUT);
pinMode(E5,OUTPUT);
pinMode(E6,OUTPUT);
pinMode(E7,OUTPUT);
pinMode(E8,OUTPUT);
pinMode(E9,OUTPUT);
pinMode(E10,OUTPUT);
pinMode(E11,OUTPUT);
pinMode(E12,OUTPUT);
pinMode(E13,OUTPUT);
pinMode(E14,OUTPUT);
pinMode(E15,OUTPUT);
//Entradas
pinMode(S1,INPUT);
pinMode(S2,INPUT);
pinMode(S3,INPUT);
pinMode(S4,INPUT);
pinMode(S5,INPUT);
pinMode(S6,INPUT);
pinMode(S7,INPUT);
pinMode(S8,INPUT);
pinMode(S9,INPUT);
pinMode(S10,INPUT);
pinMode(S11,INPUT);
pinMode(S12,INPUT);
pinMode(S13,INPUT);
pinMode(S14,INPUT);
pinMode(S15,INPUT);
pinMode(S16,INPUT);
}
void loop(){
botao_0(); }
void botao_0(){
int leitura_atual0 = digitalRead(S1);
if (leitura_atual0 != leitura_anterior0 ) { time_ultimo_debounce0 = millis(); debounce_0 = 0; }
if ( (millis() - time_ultimo_debounce0) > DEBOUNCE_DELAY0 ) { debounce_0 = 1; }
if (debounce_0 = 1){ if (leitura_atual0 == 0 && leitura_anterior_db0 == 1){ digitalWrite(E0, !digitalRead(E0)); }
leitura_anterior_db0 = leitura_atual0; }
leitura_anterior0 = leitura_atual0;
botao_1(); }
void botao_1(){
int leitura_atual1 = digitalRead(S2);
if (leitura_atual1 != leitura_anterior1 ) { time_ultimo_debounce1 = millis(); debounce_1 = 0; }
if ( (millis() - time_ultimo_debounce1) > DEBOUNCE_DELAY1 ) { debounce_1 = 0; }
if (debounce_1 = 1){ if (leitura_atual1 == 0 && leitura_anterior_db1 == 1){ digitalWrite(E1, !digitalRead(E1)); }
leitura_anterior_db1 = leitura_atual1; }
leitura_anterior1 = leitura_atual1;
botao_2(); }
void botao_2(){
int leitura_atual2 = digitalRead(S3);
if (leitura_atual2 != leitura_anterior2 ) { time_ultimo_debounce2 = millis(); debounce_2 = 0; }
if ( (millis() - time_ultimo_debounce2) > DEBOUNCE_DELAY2 ) { debounce_2 = 0; }
if (debounce_2 = 1){ if (leitura_atual2 == 0 && leitura_anterior_db2 == 1){ digitalWrite(E2, !digitalRead(E2)); }
leitura_anterior_db2 = leitura_atual2; }
leitura_anterior2 = leitura_atual2;
botao_3(); }
void botao_3(){
int leitura_atual3 = digitalRead(S4);
if (leitura_atual3 != leitura_anterior3 ) { time_ultimo_debounce3 = millis(); debounce_3 = 0; }
if ( (millis() - time_ultimo_debounce3) > DEBOUNCE_DELAY3 ) { debounce_3 = 0; }
if (debounce_3 = 1){ if (leitura_atual3 == 0 && leitura_anterior_db3 == 1){ digitalWrite(E3, !digitalRead(E3)); }
leitura_anterior_db3 = leitura_atual3; }
leitura_anterior3 = leitura_atual3;
delay(10); if(Serial.available() > 0){ //verifica se existe comunicação com a porta serial
dado = Serial.read();//lê os dados da porta serial
switch(dado){
case 1:
digitalWrite(E0,HIGH);
break;
case 2:
digitalWrite(E0,LOW);
break;
case 3: digitalWrite(E1,HIGH);
break;
case 4:
digitalWrite(E1,LOW);
break;
case 5: digitalWrite(E2,HIGH);
break;
case 6:
digitalWrite(E2,LOW);
break;
case 7: digitalWrite(E3,HIGH);
break;
case 8:
digitalWrite(E3,LOW);
break;
case 9: digitalWrite(E4,HIGH);
break;
case 10:
digitalWrite(E4,LOW);
break;
case 11: digitalWrite(E5,HIGH);
break;
case 12:
digitalWrite(E5,LOW);
break;
case 13: digitalWrite(E6,HIGH);
break;
case 14:
digitalWrite(E6,LOW);
break;
case 15: digitalWrite(E7,HIGH);
break;
case 16:
digitalWrite(E7,LOW);
break;
case 17: digitalWrite(E8,HIGH);
break;
case 18:
digitalWrite(E8,LOW);
break;
case 19: digitalWrite(E9,HIGH);
break;
case 20:
digitalWrite(E9,LOW);
break;
case 21: digitalWrite(E10,HIGH);
break;
case 22:
digitalWrite(E10,LOW);
break;
case 23: digitalWrite(E11,HIGH);
break;
case 24:
digitalWrite(E11,LOW);
break;
case 25: digitalWrite(E12,HIGH);
break;
case 26:
digitalWrite(E12,LOW);
break;
case 27: digitalWrite(E13,HIGH);
break;
case 28:
digitalWrite(E13,LOW);
break;
case 29: digitalWrite(E14,HIGH);
break;
case 30:
digitalWrite(E14,LOW);
break;
case 31: digitalWrite(E15,HIGH);
break;
case 32:
digitalWrite(E15,LOW);
break;
case 33: digitalWrite(E0,HIGH);
digitalWrite(E1,HIGH);
digitalWrite(E2,HIGH);
digitalWrite(E3,HIGH);
digitalWrite(E4,HIGH);
digitalWrite(E5,HIGH);
digitalWrite(E6,HIGH);
digitalWrite(E7,HIGH);
digitalWrite(E8,HIGH);
digitalWrite(E9,HIGH);
digitalWrite(E10,HIGH);
digitalWrite(E11,HIGH);
digitalWrite(E12,HIGH);
digitalWrite(E13,HIGH);
digitalWrite(E14,HIGH);
digitalWrite(E15,HIGH);
break; case 34:
digitalWrite(E0,LOW);
digitalWrite(E1,LOW);
digitalWrite(E2,LOW);
digitalWrite(E3,LOW);
digitalWrite(E4,LOW);
digitalWrite(E5,LOW);
digitalWrite(E6,LOW);
digitalWrite(E7,LOW);
digitalWrite(E8,LOW);
digitalWrite(E9,LOW);
digitalWrite(E10,LOW);
digitalWrite(E11,LOW);
digitalWrite(E12,LOW);
digitalWrite(E13,LOW);
digitalWrite(E14,LOW);
digitalWrite(E15,LOW);
break;
} }
}…