Perancangan Alat Pengisi Cairan Dalam Gelas Secara Otomatis Menggunakan Sensor Ultrasonik & Sensor Hambatan Geser Berbasis Atmega8535
LISTING PROGRAM
#include
#include
// Alphanumeric LCD functions
#include
#include
// Declare your global variables here
unsigned char x,buflcd[16];
unsigned int nilai_ADC,counter,set;
float
nilai_total, nilai_hasil, nilai_rata,jarak,nilai_jarak,jarak_rata;
int frekuensi=0;
float pulsa,vol,flowrate;
bit mode_auto,mode_volume,tbl_set;
#define ADC_samp 25
#define triger PORTC.6
#define pin_triger DDRC.6
#define echo PINC.7
#define pin_echo DDRC.7
#define switch1 PIND.7
#define tombol1 PINB.7
#define tombol3 PINC.4
#define tombol2 PINC.3
#define pompa_aktif PORTC.5
// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void)
{
// Place your code here
frekuensi++;
}
// Timer1 overflow interrupt service routine
interrupt [TIM1_OVF] void timer1_ovf_isr(void)
{
// Reinitialize Timer1 value
TCNT1H=0x85EE >> 8;
TCNT1L=0x85EE & 0xff;
// Place your code here
pulsa=frekuensi;
frekuensi=0;
flowrate=pulsa/7.5;
vol=vol+pulsa;
}
void tampil_lcd(char x,char y,char flash *teks)
{
Universitas Sumatera Utara
lcd_gotoxy(x,y);
lcd_putsf(teks);
//lcd_clear();
}
// Voltage Reference: AVCC pin
#define ADC_VREF_TYPE ((0
#include
#include
// Alphanumeric LCD functions
#include
#include
// Declare your global variables here
unsigned char x,buflcd[16];
unsigned int nilai_ADC,counter,set;
float
nilai_total, nilai_hasil, nilai_rata,jarak,nilai_jarak,jarak_rata;
int frekuensi=0;
float pulsa,vol,flowrate;
bit mode_auto,mode_volume,tbl_set;
#define ADC_samp 25
#define triger PORTC.6
#define pin_triger DDRC.6
#define echo PINC.7
#define pin_echo DDRC.7
#define switch1 PIND.7
#define tombol1 PINB.7
#define tombol3 PINC.4
#define tombol2 PINC.3
#define pompa_aktif PORTC.5
// External Interrupt 0 service routine
interrupt [EXT_INT0] void ext_int0_isr(void)
{
// Place your code here
frekuensi++;
}
// Timer1 overflow interrupt service routine
interrupt [TIM1_OVF] void timer1_ovf_isr(void)
{
// Reinitialize Timer1 value
TCNT1H=0x85EE >> 8;
TCNT1L=0x85EE & 0xff;
// Place your code here
pulsa=frekuensi;
frekuensi=0;
flowrate=pulsa/7.5;
vol=vol+pulsa;
}
void tampil_lcd(char x,char y,char flash *teks)
{
Universitas Sumatera Utara
lcd_gotoxy(x,y);
lcd_putsf(teks);
//lcd_clear();
}
// Voltage Reference: AVCC pin
#define ADC_VREF_TYPE ((0