Ir ao conteúdo
  • Cadastre-se

Voltímetro com display 7segmentos


mirandat

Posts recomendados

Bom dia!

estou precisando de uma ajuda..

estou fazendo um voltímetro para mostrar a tensão de até 12V com o pic, através do display de 7 segmentos..

quero colocar 3 display, mas por enquanto estou testando só com dois..

no primeiro display ele mostra a tensão, arredondada.. até 9V, mais que isso ele não aparece nada, é como se eu não estivesse mandando nada para esse display, e no segundo display, aparece algum valor, mas q não tem nada ve com que eu estou mostrando com o potenciomentro..

Se eu alguém poder da uma olhada no meu programa, acho que pode esta errado a equação que estou fazendo para mostrar a centena e dezena, ms n sei como poderia melhorar...

#include <16f877A.h>
#device ADC=10
#FUSES XT
#use delay(clock=4M)
#include <math.h>




int c,d,u;
int tensão;
float p,q2;
float valor2;


void main() {


byte const digito[11] = { 0b10111111, // 0 Define cada segmento
0b10000110, // 1 dos valores mostrados
0b11011011, // 2 no display de LEDs
0b11001111, // 3 em binário para ficar
0b11100110, // 4 mais fácil de codificar
0b11101101, // 5 cada dígito dos valores
0b11111101, // 6 mostrados no display.
0b10000111, // 7
0b11111111, // 8
0b11100111};// 9

setup_adc_ports(AN0);
setup_adc(ADC_CLOCK_DIV_2);
set_adc_channel(0); //CANAL AN0
delay_us(20);

while (true) {
tensão = read_adc(); //Lectura canal0
p = (tensão * 5)/1024.0;
q2= p*2;


c=(float)(q2*100);
d=(float)((q2)-(c*10)); /*extrai o segundo piso*/
//u=(int)floor((q2)-(1/c) -(10*d)); /*extrai o terceiro piso*/




output_bit(pin_c5,1);
output_b(digito[c]);
delay_ms(1000);
output_bit(pin_c5,0);

output_bit(pin_c6,1);
output_b(digito[d]);
delay_ms(1000);
output_bit(pin_c6,0);



//! output_bit(pin_c7,1);
//! output_b(digito[u]);
//! delay_ms(1000);
//! output_bit(pin_c7,0);
}
}

ahh então eu estava usando floor da biblioteca math, mas vi que não mudou nada usando o float nas equações

espero que alguém possa me ajudar :D

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...

Olhe aqui: http://www.sabereletronica.com.br/artigos-2/950-voltmetro-com-pic-voltpic

O código-fonte pode ser baixado no site da mesma revista. Acredito que lhe ajude.

Na montagem do circuito do artigo, eu colocaria resistores nas linhas de barramento de dados e não ligaria direto (como está no esquema).

Bons trabalhos.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!