Mam pytanie dlaczego caly portd daje mi jedynke podczas gdy mam wcisniety pina (5bit na 1), symulator pokazuje ze powinno byc wszedzie zero i dioda nigdy sie nie zapali (niezaleznie od pina). Wydaje mi sie jakby u mnie w programi 0 bylo jedynka a 1 zerem pomozecie ???
Przeniesiono z Programowanie Ogólne. - arnoldziq
Dodano po 17 [minuty]:
Kiedy elsa zmienie na takiego to program dziala juz poprawnie
else {
PORTD |= _BV(5);
//PORTD = 0b00100000;
}
ale problem polega na tym ze to co jest wyzej powinno dawac caly czas zero a daje na portd 1 dlaczego ????
#include <avr/io.h>
void Inicjalizacja(void)
{
DDRD=0xff;
PORTD=0x00;
DDRA=0x00;
PORTA=0xff;
}
int main(void)
{
Inicjalizacja();
while(1)
{
if(bit_is_clear(PINA, 5)) {
PORTD &= ~_BV(5);
//PORTD = 0b00000000;
}
else {
PORTD &= _BV(5);
//PORTD = 0b00100000;
}
}
}
Przeniesiono z Programowanie Ogólne. - arnoldziq
Dodano po 17 [minuty]:
Kiedy elsa zmienie na takiego to program dziala juz poprawnie
else {
PORTD |= _BV(5);
//PORTD = 0b00100000;
}
ale problem polega na tym ze to co jest wyzej powinno dawac caly czas zero a daje na portd 1 dlaczego ????
