6 Ocak 2021 Çarşamba

Analog giriş ile 74hc164 Keypad yapma ccs compiler

Analog giriş ile 74hc164 Keypad yapma

 

#include <12f683.h>

#device ADC=8

#fuses NOWDT,INTRC_IO,NOMCLR,BROWNOUT

#use delay (clock=4000000)


#use fast_io(a)

#define data pin_a2   // data sabiti pin_a0'a eşitleniyor

#define clock pin_a1  // clock sabiti pin_a1'e eşitleniyor


#define display1 pin_a5


//int digit[16]={0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7C, 0x07, 0x7F, 0x6F};

int digit[16]={252,96,218,242,102,182,190,224,254,246};


int j=0,birler=0;


unsigned long int okunan;

int voltaj;



void main ( )

{

set_tris_a(0x01);

output_a(0x01);

 

setup_adc(adc_clock_div_32);

setup_adc_ports(sAN0);


while(true)  

{

set_adc_channel(0);

delay_us(20);

okunan = read_adc();

voltaj = (okunan * 0.00488)*100;


if(voltaj==113)

{

birler =  0;

for(j=0;j<8;j++){

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}


if(voltaj==103)

{

birler =  1;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

 

if(voltaj==95)

{

birler =  2;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

 

if(voltaj==88)

{

birler =  3;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

if(voltaj==82)

{

birler =  4;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

 

if(voltaj==78)

{

birler =  5;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

 

if(voltaj==73)

{

birler =  6;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

if(voltaj==69)

{

birler =  7;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

 

if(voltaj==65)

{

birler =  8;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

if(voltaj==62)

{

birler =  9;

for(j=0;j<8;j++)

{

output_bit(data,bit_test(digit[birler],j));

output_high(clock); // Clock sinyali lojik-1 yapılıyor

output_low(clock);  // Clock sinyali lojik-0 yapılıyor

}

output_a(digit[pin_a5] |(0x04));

delay_ms(200);

}

delay_ms(200);

}

}





Hiç yorum yok:

Yorum Gönder

Her yorum bilgidir. Araştırmaya devam...