Drodzy forumowicze czy ktoś mógłby wytłumaczyć mi jak należy użyć funkcji PIN w programie, aby sczytać stan na porcie uC.
Jestem mocno początkujący w programowaniu uC, a chciałbym napisać program sterujący pracą dwóch silników. Założenie jest takie, że pod port B w Atmedze podpiąłem 4 przyciski odpowiadające za kierunki przód, tył, lewo, prawo. A do portu D podpięte są na razie diody symulujące stany na wyjściach uC. Docelowo podpięty będzie tam mostek H. Ale nie mogę jak na razie uporać się sie ze sterowaniem stanami na wyjściu za pomocą przycisków.
Na razie udało mi sie stworzyć coś takiego, jak wydać funkcja odpowiedzialna za zmianę stanów to if, ale nie wiem czy jest to poprawne.
Konstruktywna krytyka i wszelkie uwagi mile widziane.
Proszę poprawić temat, reg. pkt 11.1.
Robak
Jestem mocno początkujący w programowaniu uC, a chciałbym napisać program sterujący pracą dwóch silników. Założenie jest takie, że pod port B w Atmedze podpiąłem 4 przyciski odpowiadające za kierunki przód, tył, lewo, prawo. A do portu D podpięte są na razie diody symulujące stany na wyjściach uC. Docelowo podpięty będzie tam mostek H. Ale nie mogę jak na razie uporać się sie ze sterowaniem stanami na wyjściu za pomocą przycisków.
Na razie udało mi sie stworzyć coś takiego, jak wydać funkcja odpowiedzialna za zmianę stanów to if, ale nie wiem czy jest to poprawne.
Konstruktywna krytyka i wszelkie uwagi mile widziane.
#define F_CPU 1000000L
#include <avr/io.h>
int main(void)
{
DDRD = 0xff;
PORTD = 0xff; // DIODY
DDRB = 0xff;
PORTB = 0x01; //Przyciski
while(1)
{
if(bit_is_set(PORTB, PB3))
{
PORTD = 0x0f;
}
else
{
}
return(0);
}
}Proszę poprawić temat, reg. pkt 11.1.
Robak