Power SWR Meter Atmega8
Power SWR Meter Atmega8
h>
#include <util/delay.h>
#include <stdlib.h>
#include "lcd1602.h"
// Format SWR
void formatSWR(float swr, char *buf) {
if (swr >= 10.0)
dtostrf(swr, 4, 1, buf);
else
dtostrf(swr, 4, 2, buf);
}
int main(void) {
lcd_init();
lcd_clear();
// Inisialisasi ADC
ADCSRA = (1 << ADEN) | (1 << ADPS2) | (1 << ADPS1);
char buf[10];
while (1) {
uint16_t adcFWD = readADC_avg(0);
uint16_t adcREF = readADC_avg(1);
// Tampilkan FWD
lcd_gotoxy(0, 0);
lcd_puts("FWD:");
formatPower(fwd, buf);
lcd_puts(buf);
lcd_gotoxy(9, 1);
lcd_puts("SWR:");
formatSWR(swr, buf);
lcd_puts(buf);
_delay_ms(300);
}
}