Ir ao conteúdo
  • Cadastre-se
b166er

Tratamento de Sinal(Onda quadrada)

Recommended Posts

Hai! Galera geek... ¬¬ :eek:

Sou novato aqui no forum, primeiro posto, em compensação já chego com uma grande duvida, mais espero q o pessoal aqui possa me ajudar, eu pelo menos me dar uma ideia para terminar esse projeto. Então lá vai. :lol:

Tô terminando um programa em C, para um micro controlador com a seguinte função: Pro uma porta X ele recebe um sinal de onda quadrada com uma frequencia de 91.666 KHz e pela outra porta Y ele recebe um sinal tambem de onda quadrada com uma largura da parte baixa do sinal de 10 ms. Parte alta do sinal q chega a porta Y não me importa, o q me interessa e toda vez q ele identificar uma parte baixa, um vale de 10 ms ele conta um pulso.

Só q como a rede q me envia esses pulsos tem oscilações e ruidos, qulquer coisas q faça com q o sinal vá a nivel logico zero, ele identifica como pulso, pois ele ta programado para contyar pulsos por cada decida. :mad: :mad:

Ai ta a duvida, não sei tratar esse sinal, e gostaria q ele só conta-se um pulso somente quando esse vale, ou seja quando ele for nivel logico 0, tiver no minimo 5 ms de parte baixa.

Alguem entendeu ?? :mellow:

Se sim, por favor tentem me ajudar ou mandar e-mail pra mim furucuteu@yahoo.com.br

Se não obrigoado por ter pelo menos lido o posto.

Vou deixando aqui uma parte do meu codigo fonte para ver se ajuda no entendimento.

while(TRUE)

{

While(end_teste = 0)

{

if (flg_initst == 1)

{

u0mr = 0;

while(endteste_M1 == 0)

{

LED_OFF;

if (PortaM1 == 1 && DecidaM == 0) DecidaM = 1;

else if (PortaM1 == 0 && DecidaM == 1)

{

txs = 0x01;

if(++NumPulsoM > Totalpulsos)

{

txs = 0x00;

xx = (unsigned char) tx;

yy = (unsigned char) prex;

prex = 0xFF;

tx = 0xFF;

XY = (((unsigned int)xx) << 8) + (unsigned int)yy;

PulsoM1[im1]= ((unsigned long int)(cont65536 * 0xFFFF) + (unsigned long int)((unsigned int)0xFFFF - XY));

cont65536 = 0x00;

NumPulsoM = 0x00;

if((++Im1) >= CONTPORM)

{

endteste_M1 = 0x01;

LED_ON;

}

}

DecidaM = 0;

}

}

}

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante

Salve, b166er.

Posta o desenho do circuito elétrico.

O problema é hardware e não software.

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×