-
Posts
107 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
Tudo que Maria Cristina Oliveira postou
-
Arduino Interpretar botão fechado com arduino
Maria Cristina Oliveira respondeu ao tópico de eletron1791 em Microcontroladores
Então fica assim... if (digitalRead(BUTTON_PIN) == 1) { digitalWrite(led, HIGH); delay(100); digitalWrite(led,LOW); } while(digitalRead(BUTTON_PIN) ==1); delay(100); // para o caso de ter bouncing -
Arduino Interpretar botão fechado com arduino
Maria Cristina Oliveira respondeu ao tópico de eletron1791 em Microcontroladores
Vamos juntar nossos neurônios... O programa que eu copiei foi o seu, não o meu... É que às vezes, tem bouncing quando se desliga a chave.... O termo anti-debounce não existe (piada interna, descobri dias atrás). Ou é Anti-bouncing ou debounce Desculpe as brincadeiras... (acordei bem-humorada). -
Arduino Interpretar botão fechado com arduino
Maria Cristina Oliveira respondeu ao tópico de eletron1791 em Microcontroladores
Obrigada por lembrar, amigo! Às vezes me confundo, mas já fiz certo! P2_6=!P2_6; while (!P3_0); while (tempo<10000){ //tive que colocar isso porque também tem... Então fica assim... Interessante o programa que você fez (vou copiar pra mim). OBS: Anti-debounce é piada interna... https://www.clubedohardware.com.br/forums/topic/1533966-filtro-anti-debounce-na-linguagem-c/page/2/?tab=comments#comment-8161418 -
Arduino Interpretar botão fechado com arduino
Maria Cristina Oliveira respondeu ao tópico de eletron1791 em Microcontroladores
if (digitalRead(BUTTON_PIN) == 0) { digitalWrite(led, HIGH); delay(100); digitalWrite(led,LOW); } while(digitalRead(BUTTON_PIN) ==0) //aqui no momento eu não sei se coloca ";" ou //não delay(100); // para o caso de ter anti-debounce -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
-
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
@.if OOOps! Errata. No esquema que eu fiz, liguei o P0_3 na chave, quando na verdade, eu usei o P3_0. Troquei as bolas... E não deu para editar. É a pandemia que deixa a gente assim. Esse é o esquema correto: -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
@.if Amigo: Passei aqui só pra te dizer que o teu filtro "ANTI"-debounce funcionou! Parabéns!! Tive que fazer pequenas alterações: relê = 5V X 56 ohms (bobina) resistor de base do transístor = 10k (tudo isso? foi só pra ver se saturava) transístor = BC558 CLOCK = 4MHZ uC = AT89S52 #include<at89x52.h> unsigned int tempo=0; //P3_0 ligado na chave //P2_6 aciona o relê no nível 0 void main(){ while(1){ if(!P3_0){ while(!P3_0 && (tempo<50000)) { tempo++; if (P3_0) tempo=0; } P2_6=!P2_6; while (!P3_0); while (tempo<10000){ //tive que colocar isso porque também tem boucing tempo++; } //quando desliga tempo=0; } }} E tem mais: main: if(!bot0) antdeb –-; else {goto bot0lib}; if(!antdeb)antdeb2--; else {goto main}; if(!antdeb2) goto bot0pres; else {goto main}; bot0lib: ... bot0pres: ... Esse programa que eu fiz e marquei como solução NÃO funcionou e eu sei porque: Eu usei a lógica do ASM na construção do programa na linguagem C. Através dos saltos, meu programa contava as linhas de programação para fazer o delay, mas uma linha de programa na linguagem C representa "n" linhas em ASM. Por isso não funcionou. Misturei tudo !!! O teu programa é a solução mas não consegui remarcar. -
8051 Microcontrolador 8051 acionando um transístor BC 548
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Oi: Eu é que agradeço, amigo! Tempos atrás eu diria que você está falando grego (fluentemente). Mas hoje, felizmente eu consegui entender tudo o que você disse!!!!!!. Realmente eu constatei pelo datasheet, que os acionamentos funcionam melhor em nível baixo, onde há maior fluxo de corrente. Nisso, eu não tinha pensado...Eu estava concentrada no nível lógico 1, não analisei o nível lógico 0. Obrigada, Amigo! Eu só pareço burra...(brincadeira) Reconheço as limitações desse meu uC (8051), mas como eu compro ele a preço de banana (e consegui "desenrolar" bem a programação dele na linguagem C), continuarei utilizando essa tecnologia do passado... Outro abraço pra você, amigo. E obrigada pela aula! -
8051 Microcontrolador 8051 acionando um transístor BC 548
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Oi: Obrigada pela ajuda, amigo! Por inexperiência eu pensava : - " P1.0 só fornece 1mA (8051)... se colocar um resistor, aí é que não vai passar corrente mesmo!" Eu achava que um resistor na base do BC 548 limitaria muito a já fraca corrente do P1.0 a ponto de não saturar o transístor. Agora posso concluir meu projetinho sem receio, mas infelizmente não poderei colocar um relê de 12V (minha fonte é de 5V). Se eu colocar um relê de 12V, terei que trocar de fonte e acrescentar um 7805 + dissipador (para o 8051). Que bom que podemos contar com seus conhecimentos e com sua experiência! -
8051 Microcontrolador 8051 acionando um transístor BC 548
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Oi: Meu caso é diferente. Nesse tópico, o amigo queria ligar o relê diretamente no uC (?????????????????????). Eu quero usar um transístor para fazer a conexão. E logicamente, com um diodo 1N4148 em paralelo com o relê, inversamente polarizado, para evitar problemas. -
Oi: Estou com uma dúvida que a internet ainda não conseguiu solucionar... O pino RA1 (do PIC 16f628) fornece até 25mA em nível alto. Pelas minhas contas, cheguei à conclusão que um resistor de 4K7 na base de um transístor BC 548 fornece ao mesmo, corrente suficiente para saturá-lo (+ ou - 1mA) chaveando assim, um relê de 5v. O pino P1.0 (do port P1 do 8051) fornece até 1mA em nível alto ( se forem usados todos os 8 pinos como saída). Como fica então o cálculo do resistor de base nesse caso? Ou não precisa de resistor de base? Se ligar direto o P1.0 do 8051 na base de um BC 548, não vai danificar o uC? Eu tô com medo de ligar P1.0 direto na base do BC 548, exceder (de alguma forma) a capacidade de fornecimento de corrente do 8051 e queimar o mesmo... OBS: Não quero ter que usar um buffer (ULN 2001)
-
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
-
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
-
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Bem... Como eu não costumo "dar essas mancadas" (filtro anti-debounce), em minha defesa citarei a fonte: Livro: Microcontroladores PIC - Teoria e Montagens Práticas Prof. Eng. Geraldo Carvalho Editora Eltec Página 66, tópico : 4.8 - Filtros Anti De-bounce (Não vou assumir sozinha... ) OBS: Fora isso, o livro é muito bom! Aprendi muita coisa com ele (comprei na Santa Efigênia). -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Epa! Só mais uma coisinha... Eu estava falando errado o tempo todo. "Todas as chaves mecânicas possuem um comportamento indesejável chamado “bouncing“, mas existem várias formas de “debounce” para resolver esse problema." Ou seja, anti-debounce não existe (anti-bouncing = debounce). Desculpem nossa falha... (Droga! O título do post vai ficar errado pra sempre! Não dá para mudar... Agora vou ter que inventar um filtro anti-debounce para justificar o título...) -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
unsigned int tempo=0; while(!bot && (tempo<10000)) //ajuste pra sua realidade { tempo++; //tempo time out if (bot) tempo=0; //se tiver repique recomeça } while (!bot); //tire o dedo do botão Excelente filtro anti-debounce, amigo! Vou testar, mas sei que vai funcionar! Meus filtros são em ASM, mas eu estava precisando de um bom filtro na linguagem C. -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Nunca vi um código anti-debounce assim. Se resolver seria muito bom. Mas acho que não funciona... Esse é um trabalho para o nosso amigo sumido @.if resolver... -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Espera aí.... Deixe eu pensar um pouco... enquanto o antdeb não é zero, tem o loop do else {goto main} Está tentando me confundir?????????????????? Brincadeira... -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Oi: Acompanhe a execução do programa passo a passo ( "gotos") e vai somando o tempo de cada instrução que fica mais fácil de entender. Não testei ainda mas acho que vai funcionar corretamente porque faz exatamente o que o outro código faz em ASM. -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Sempre uso o clock de 4Mhz e o decremento vai somando o tempo de cada instrução. -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
O delay acontece com o decremento dos registradores antdeb e antdeb2. -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira respondeu ao tópico de Maria Cristina Oliveira em Microcontroladores
Ufa! Queimei meus neurônios (não sou loira), mas acho que consegui!!!!! main: if(!bot0) antdeb –-; else {goto bot0lib}; if(!antdeb)antdeb2--; else {goto main}; if(!antdeb2) goto bot0pres; else {goto main}; bot0lib: ... bot0pres: ... Muito simples, fiz agora, às pressas. Deve funcionar, se eu consegui escrever tudo corretamente! OBS:antdeb e antdeb2 são registradores de propósito geral de 8 bits -
PIC filtro anti-debounce na linguagem C
Maria Cristina Oliveira postou um tópico em Microcontroladores
Oi: Esse filtro é perfeito em assembly, mas não estou conseguindo passar esse trecho do programa para a linguagem C. Gostaria de aprender a fazer sem usar #asm e #endasm. Se alguém souber, eu ficaria muito agradecida! main: btfsc bot0 ; testa botão 0 goto bot0lib ; se liberado, vai para bot0lib decfsz antdeb,f ; se pressionado, decrementa filtro goto main ; volta para main decfsz antdeb2,f ; se acabou filtro 1, inicia filtro 2 goto main ; volta para main goto bot0pres ; vai para bot0pres bot0lib: goto main bot0pres: ... ... Quanto às intruções: (BTFSC f,b) - Testa o bit b, do registrador f, pula se for 0 (goto k) - desvia o programa para k (DECFSZ f,d) - Decrementa f, resultado no d, pula se for 0 antdeb e antdeb2 são registradores de propósito geral de 8 bits -
PIC 12f675 com 2,5 volts
Maria Cristina Oliveira respondeu ao tópico de eletron1791 em Microcontroladores
@eletron1791 Oi: Amigo, desculpe a minha ignorância mas, por que um diodo no pino 8 (VSS) do PIC 12F675 ajudaria ele a funcionar com baixa tensão? Acho que faltei a essa aula... -
Outro resistor limitador de corrente para Led
Maria Cristina Oliveira postou um tópico em Microcontroladores
Oi: Em anexo, um presentinho para os colegas. Obs: Coloque os valores de Valimentação, Vled e Corrente e obtenha o valor do resistor limitador de corrente R_Led.xls
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais