36 lines
465 B
C
36 lines
465 B
C
|
#include <avr/io.h>
|
||
|
#include <avr/interrupt.h>
|
||
|
#include <util/delay.h>
|
||
|
#include "ds18b20.h"
|
||
|
#include "main.h"
|
||
|
#include "io.h"
|
||
|
|
||
|
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;
|
||
|
}
|