Witam.
Właśnie uczę sie programować mikrokontroler MSP430G2553 (LaunchPad) w języku C.
Niestety napotykam na problemy... obsługę wyjść już opanowałem.Przyszedł czas na wejścia
chciałbym aby na wciśnięcie przycisku dioda zapalała się, a zwolnienie przycisku ma spowodować zgaszenie diody (lub odwrotnie)
Napisałem program, niestety coś jest nie tak bo program nie działa (ale przez kompilator przechodzi bez problemu).
Byłbym bardzo wdzięczny, gdybyś ktoś poświęcił chwilę i zobaczył co jest nie tak, gdyż już dosyć długi czas nad tym siedzie, próbuję różnych sposobów ale niestety nie wychodzi.
Pozdrawiam i z góry bardzo dziękuję
Oto kod programu.
#include <msp430.h>
int main(void)
{
WDTCTL = WDTPW + WDTHOLD;
P1DIR |= BIT0; // port P1.0 jako wyjście (dioda LED)
P1OUT &=~BIT0; // stan niski na P1.0
P1DIR &=~ BIT3; // port P1.3 jako wejście
P1REN |= BIT3; // włącz rezystor podciągający
for(;;)
{
{
if( (P1IN & BIT3) == 0 ) // sprawdź stanu przycisku
{
P1OUT |= BIT0; // gdy przycisk jest wciśnięty
} // włącz diodę LED
else
{ // gdy przycisk jest zwolniony
P1OUT &=~ BIT0; // wyłącz diodę LED
}
}
}