Estou com uma dúvida que não consigo resolver, estou montando uma célula de carga e nesta célula preciso ter dois botões onde os mesmos farão a seguinte mudança.
Botão zerar, este botão deverá zerar o residuo que aparece na entrada do ´processador e o outro botão mudará a de Nm para LbFt.
Colocarei aqui a imgem parcial do circuito onde tenho circuito de condicionamento de sinal e tambem o circuito que simula o strain gage.
cpp code
#include <16F877a.h> //Inclui arquivo header do PIC 1gf877
#device ADC = 10 //Define 10 bits para o resultado da conversão AD
#use delay (clock=10000000) /*Definição da frequência do cristal para cálculo dos delays*/
#fuses HS, NOWDT, PUT,BROWNOUT, NOLVP //Configuração dos bits de controle
//Função principal
void main()
{
int8 i;
int32 a; /*a = é o canal adc */
float p,a1,aux,aux1; /* p = valor do ADC e a1 = valor convertido*/
setup_adc(ADC_CLOCK_DIV_32);
setup_adc_ports(AN0_AN1_VSS_VREF);
i=0;
aux1=0;
while (true)
{
set_adc_channel(0);
delay_ms(20);
a=read_adc();
delay_ms(20);
p = 5.0 * (a/1024.0);
if (p>0.9) //Faz a correção para zero, neste caso 0.9 é o residuo do sensor em repouso
{
aux = p-0.9;
a1 = ((aux-aux1)* 1000); //Constante para conversão
delay_ms(200);
}
else
{
aux = p-0.9;
aux1 = p -0.9;
a1=((p - aux) * 0.00);
delay_ms(200);
}
}
}