#define F_CPU 16000000UL
#include <avr/io.h>
#include <util/delay.h>
#include "libserial.h"
void esperar_ms(int ms) {
while (ms > 0) {
_delay_ms(1);
ms--;
}
}
int main(void) {
USART_Init();
DDRB |= (1 << DDB3);
ADMUX |= (1 << REFS0); // Tensão Vcc=5V, A0
ADCSRA |= (1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0);
ADCSRA |= (1 << ADEN);
while (1) {
PORTB |= (1 << PORTB3);
// A1
ADMUX &= ~(1 << MUX1);
ADMUX |= (1 << MUX0);
ADCSRA = ADCSRA | (1 << ADSC);
while(ADCSRA & (1 << ADSC));
int valor_adc1 = ADC;
USART_Tx_String("Valor 1: ");
USART_Tx_Integer(valor_adc1);
esperar_ms(valor_adc1);
PORTB &= ~(1 << PORTB3);
// A2
ADMUX &= ~(1 << MUX0);
ADMUX |= (1 << MUX1);
ADCSRA = ADCSRA | (1 << ADSC);
while(ADCSRA & (1 << ADSC));
int valor_adc2 = ADC;
USART_Tx_String(", Valor 2: ");
USART_Tx_Integer(valor_adc2);
esperar_ms(valor_adc2);
USART_Tx_String("\n");
}
}