D1 to podczerwona dioda LED
T1 to fototranzystor do poczerwieni
G1 to 3 baterie 1,5 V
C1 kondensator stabilizujący napiecie 100nF
Czy ten schemat jest poprawny? Obstawiam iż nie.. więc gdzie jest błąd?
Kod: Zaznacz cały
void pobierz()
{
Włącz diode podczerwoną
Czekaj 100 ms
Zwróć dane z fotorezystora IR
Czekaj 100 ms
Wyłącz diodę podczerwoną
}
int main()
{
Włącz diode LED1
Czekaj 3000 msy
Wyłącz diode LED1
Czekaj 3600000 ms
while()
{
double X1 = pobierz();
double X2 = X1;
while(X2 - X1 > 0.5 || X1 - X2 > 0.5) //sprawdzanie czy pomiar nie różni się o ileś od zapamiętanego na początku
{
Czekaj 60000 ms
X2 = pobierz();
}
for(int a=0;a<5;a++)
{
Zapal diodę LED2
delay_ms(1000);
Zgaś diodę LED2
}
}
czekaj 1800000 ms
}
}
Kod: Zaznacz cały
DDRB = 0x07; //binarnie 000 111Kod: Zaznacz cały
PORTB = 0x01;//binarnie 001
W fizycznym układzie kondensator powinien znajdować się jak najbliżej procesora, na schemacie nie ma to znaczenia. Po tej nie trafionej podpowiedzi Artyliusza procesor zasilany jest cały czas, za to mamy możliwość odłączenia kondensatora blokującego zasilanie - zupełny bezsens.Artyliusz pisze:Kondensator powinien znajdować się odwrotnie, to znaczy tak gdzie jest teraz kondensator wstaw baterię, a na miejsce baterii kondensator równolegle. Kondensator służy do filtracji i powinien znajdować się jak najbliżej wejścia zasilania mikrokontrolera. W tym wypadku nie ma filtracji i względnej stabilizacji.