Menampilkan Data adc pada Seven Segment
Biasanya kita sering menampilkan data adc 8 bit dan 10 bit dari mikrokontroller menggunakan lcd. Memang…..menampilkan data lcd menggunakan lcd sangat sederhana, tetapi kita harus mengeluarkan uang lebih untuk membeli lcd. Disini saya tidak menggunakan lcd melainkan menggunakan 4 buah sevensegment.
Berikut adalah gambar rangkaian pada proteus :
Untuk programnya dapat dilihat dibawah ini :
Chip type : ATmega8
Program type : Application
AVR Core Clock frequency : 11,059200 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 256
*****************************************************/
#include <mega8.h>
#include <delay.h>
unsigned char data1;
unsigned char bil [10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
#define ADC_VREF_TYPE 0x20
unsigned char read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCH;
}
// Declare your global variables here
void lihat(unsigned char angka)
{
char i,rat,pul,sat;
rat=angka/100;
angka=angka%100;
pul=angka/10;
sat=angka%10;
for (i=0;i<100;i++)
{
PORTB=0x04;
PORTD=bil[sat];
delay_ms(2);
PORTB=0x02;
PORTD=bil[pul];
delay_ms(2);
PORTB=0x01;
PORTD=bil[rat];
delay_ms(2);
}
}
while (1)
{
// Place your code here
data1=read_adc(0);
lihat(data1);
};
demikian gambar rangkaian dan programnya…..selamat berkreasi.,
semoga bermanfaat 😀
pada Desember 24, 2012 pada 2:08 pm
boleh ni buat belajar 🙂
pada Desember 24, 2012 pada 10:49 pm
selamat belajar mas 😀
pada Desember 27, 2012 pada 1:53 am
mampir ke tempat ane gan 🙂
pada Desember 27, 2012 pada 7:27 pm
dimana alamate gan??