2017-11-24 13:29:36 +02:00
|
|
|
#include <avr/io.h>
|
|
|
|
#include <avr/interrupt.h>
|
|
|
|
#include <util/delay.h>
|
|
|
|
#include "ds18b20.h"
|
|
|
|
#include "main.h"
|
|
|
|
#include "io.h"
|
|
|
|
|
2017-11-24 17:24:12 +02:00
|
|
|
#ifdef DEBUG
|
|
|
|
#include "debug.h"
|
|
|
|
#endif /* DEBUG */
|
|
|
|
|
2017-11-24 13:29:36 +02:00
|
|
|
void initIO()
|
|
|
|
{
|
|
|
|
DDRD |= (1 << LED_1);
|
|
|
|
}
|
|
|
|
|
|
|
|
void readTemp()
|
|
|
|
{
|
|
|
|
double d;
|
|
|
|
|
|
|
|
sei();
|
|
|
|
for (;;) {
|
|
|
|
d = ds18b20_gettemp();
|
|
|
|
if (d >= 21)
|
|
|
|
PORTD |= (1 << LED_1);
|
|
|
|
else
|
|
|
|
PORTD &= ~(1 << LED_1);
|
|
|
|
|
|
|
|
_delay_ms(500);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
int main(void)
|
|
|
|
{
|
|
|
|
initIO();
|
|
|
|
readTemp();
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|