-
Posts
26 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por AllanRoncali
-
-
Por acaso você está questionando a opção sexual da Isadora ???????
Cuidado que ele pode te processar por discriminação !!!!
Mas algo me diz que existe um dedo de algum administrador do Fórum nessa suposta "troca de identidade" , quem sabe o @Bcpetronzio tenha "colocado a mão" nisso kkk !
Paulo
kkkk alem da galera ajudar a resolver problema de programação eles divertem a gente!! site nota 10!! kkkkkkkkkkkkkkkkkkkkkkk
-
Esse problema de ruído no botão chama-se Bouncing. E as técnicas de eliminar chamam-se Debouncing. Pesquise aqui no Fórum , tem muita coisa sobre isso.
Paulo
ja ouvi falar disso mas quando eu estudava assembly!!! vou pesquisar agora!!! grato!!!!
ja ouvi falar disso mas quando eu estudava assembly!!! vou pesquisar agora!!! grato!!!!
entendi o que é!!! eu coloco um delay antes do teste do botao!!!
tipo assim:
if(botao = 1)
{
delay_ms(100);
if(botão = 1)
{
// Botão acionado.
}
else if(botão = 1)
{
// nao esperou tempo suficiente
}
{
ja ouvi falar disso mas quando eu estudava assembly!!! vou pesquisar agora!!! grato!!!!
entendi o que é!!! eu coloco um delay antes do teste do botao!!!
tipo assim:
if(botao = 1)
{
delay_ms(100);
if(botão = 1)
{
// Botão acionado.
}
else if(botão = 1)
{
// nao esperou tempo suficiente
}
{
mas ai eu também posso mudar o tempo dos meus efeitos!!
-
É por causa dos delays chamados dentro dos métodos de efeitos. O botão demora cerca de 1 segundo para mudar..
acabei de achar na minha apostila o condicional switch!! foi exatamente o que eu nao tinha entendido quando estudei a apostila!!! kkkkkkkk
com relaçao ao tempo eu vou modificar todos os efeitos e colocar tempo menor!!!
acabei de achar na minha apostila o condicional switch!! foi exatamente o que eu nao tinha entendido quando estudei a apostila!!! kkkkkkkk
com relaçao ao tempo eu vou modificar todos os efeitos e colocar tempo menor!!!
a questao de reduzir o tempo deu certo!!
pessoal!! fiquei muito grato pela força!!! Deus abençoes vocês!!!
-
Tente assim então:
unsigned char flag = 0;unsigned char ap = 0;void main(){ do { if (input(mode) && !ap) { flag = !flag; ap = 1; } if (!input(mode) && ap) ap = 0; if (flag) efeito1(); else efeito2(); } while (true);}
legal!! funcionou!!! pra dois efeitos!! to tentando entender a logica dele pra ver se consigo inserir mais efeitos, mas não ta compilando!!!
olha so:
unsigned char flag = 0;unsigned char ap = 0;//programa principalvoid main(){do{if (input(mode) && !ap){flag = !flag;ap = 1;}if (!input(mode) && ap)ap = 0;if (flag)efeito1();elseefeito2();elseefeito3();}while (true);}ai eu criei mais uma sub-rotina pra efeito3!!sera que nao precisaria então de um contador que tivesse um limite de falou igual a quantidade de efeitos?? dessa forma poderia enumerar os efeitos e o valor do contador seleciona o efeito de numero equivalente ao valor do contador! mais ou menos assim:#define RA0 modechar a = 1char contador = 0char limite = 3inicio{se (!input (mode));a + contador = contador;{se (contador == 1)efeito1();senao (contador == 2)efeito2();senao (contador == 3)efeito3();se (limite>3; contador = 0)}}valeu!!!Pra 3 tem que ser assim:
unsigned char flag = 0;unsigned char ap = 0;void main(){ unsigned char quantidadeEfeitos = 3;//Mude a quantidade de efeitos aqui.. do { if (input(mode) && !ap) { flag++; ap = 1; if (flag >= quantidadeEfeitos) flag = 0; } if (!input(mode) && ap) ap = 0; switch (flag) { case 0: efeito1(); break; case 1: efeito2(); break; case 2: efeito3(); break; //Insira mais efeitos aqui.. } } while (true);}
me mandou antes de eu terminar de por outra duvida!!! kkkkkkkkkkkkkkk
O que eu falei sobre ruídos, pode ser que você não perceba na simulação, mas na montagem real vai perceber sim ....
Paulo
realmente o ruido apareceu!!! o simulador leva tempo pra perceber o pulso no mode!!
legal!! funcionou!!! pra dois efeitos!! to tentando entender a logica dele pra ver se consigo inserir mais efeitos, mas não ta compilando!!!
olha so:
unsigned char flag = 0;unsigned char ap = 0;//programa principalvoid main(){do{if (input(mode) && !ap){flag = !flag;ap = 1;}if (!input(mode) && ap)ap = 0;if (flag)efeito1();elseefeito2();elseefeito3();}while (true);}ai eu criei mais uma sub-rotina pra efeito3!!sera que nao precisaria então de um contador que tivesse um limite de falou igual a quantidade de efeitos?? dessa forma poderia enumerar os efeitos e o valor do contador seleciona o efeito de numero equivalente ao valor do contador! mais ou menos assim:#define RA0 modechar a = 1char contador = 0char limite = 3inicio{se (!input (mode));a + contador = contador;{se (contador == 1)efeito1();senao (contador == 2)efeito2();senao (contador == 3)efeito3();se (limite>3; contador = 0)}}valeu!!!me mandou antes de eu terminar de por outra duvida!!! kkkkkkkkkkkkkkk
realmente o ruido apareceu!!! o simulador leva tempo pra perceber o pulso no mode!!
o codigo rodou!!! so leva tempo pro programa reconhecer o botao mode
-
Tente assim então:
unsigned char flag = 0;unsigned char ap = 0;void main(){ do { if (input(mode) && !ap) { flag = !flag; ap = 1; } if (!input(mode) && ap) ap = 0; if (flag) efeito1(); else efeito2(); } while (true);}
legal!! funcionou!!! pra dois efeitos!! to tentando entender a logica dele pra ver se consigo inserir mais efeitos, mas não ta compilando!!!
olha so:
unsigned char flag = 0;unsigned char ap = 0;//programa principalvoid main(){do{if (input(mode) && !ap){flag = !flag;ap = 1;}if (!input(mode) && ap)ap = 0;if (flag)efeito1();elseefeito2();elseefeito3();}while (true);}ai eu criei mais uma sub-rotina pra efeito3!!sera que nao precisaria então de um contador que tivesse um limite de falou igual a quantidade de efeitos?? dessa forma poderia enumerar os efeitos e o valor do contador seleciona o efeito de numero equivalente ao valor do contador! mais ou menos assim:#define RA0 modechar a = 1char contador = 0inicio{se (!input (mode));a + contador = contador;} -
kkkkkkkkkkkkkkkkk e eu tava escrevendo isso!! pelo menos to tentando pensar!!! kkkkkkkkkkkkkkkkkkkkkkk
// programa principal
void main(){do{if(input(mode)){ a++;if ( a == 1 )efeito1();else if ( a == 2 )efeito2();if (a >a = 0;}while (true);}} -
Na vdd eunquero colocar mais efeitos mas preciso entender a logica!!! Fiz um algoritmo e esse programa que eu fiz foicompilado e rodou no pic!! So nao fez o que eu queria q fizesse mas com a ajuda de vocês com certeza vou conseguir!!! Vou ver os codigos q vocês mandaram!!! Muito grato!!!
Tente assim:
// programa principalvoid main(){ do { if (input(mode)) efeito1(); else efeito2(); } while (true);}
fala meu caro!!! tudo bom?? o codigo que você me passou rodou lindamente!!! é o mais proximo do objetivo!!! so que tem um porém!!! quando você pressiona a tecla ela muda o efeito mas nao trava!! quando solta o botao mode ela volta pro efeito anterior!!! como resolvo isso??
-
boa tarde meus caros!! estou montando um sequencial de leds com 16 canais usando o PIC16F877A e preciso de ajuda para resolver o problema no código!! o objetivo do programa é seguir uma sequencia de efeitos e que também seja possível mudar essa sequencia d para uma diferente pressionando um botão que denominarei de "mode".
o codigo que eu fiz esta assim:
#include <16F877A.h>#device adc=16#FUSES NOWDT //No Watch Dog Timer#FUSES HS //High speed Osc (> 4mhz for PCM/PCH) (>10mhz for PCD)#FUSES PUT //Power Up Timer#FUSES NOBROWNOUT //No brownout reset#use delay(clock=16000000)// entrada#define mode pin_a0 // declaradas entrada//Subrotinasvoid efeito1(void){output_b(0b00000000);output_d(0b11111111);delay_ms(500);output_b(0b11111111);output_d(0b00000000);delay_ms(500);}void efeito2(void){output_b(0b10101010);output_d(0b01010101);delay_ms(500);output_b(0b10101010);output_d(0b01010101);delay_ms(500);}// programa principalvoid main(){do{efeito1();}while (input(mode));do{efeito2();}while (input(mode));}segue em anexo também o esquema do circuitoalguem poderia me ajudar??grato!!!
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
Sequencial de LED 16 canais
em Microcontroladores
Postado
meus caros!!! alguem tem alguma sugestao de como montar um conversor DC/DC?? procurei um esquema aqui mas todos que eu vi eram muito confusos ou suporta baixa corrente!! tive uma ideia de usar bateria de tablet (3,7V e 5000mAh) deve suportar o circuito todo por um bom tempo!!!