Gast
#1740491
Guten Abend. Ich habe mir eine ATMega 8 zugelegt, mit dem ich ein wenig
experimentieren möchte. Ich habe mir das Toturial angeschaut soweit ich
konnte. Ich möchte an einem Pin eine logische "1" anlegten. Dieses tue
ich über einen Taster, der das Potential 5 V schaltet.
Ich möchte diesen Pin nun abfragen. Wenn ich den Taster einmal betätigt
habe, dann soll dieses in einer Variable gespeichert werden, so dass
z.B. nun ein anderer Pin auf High schaltet.
Ich habe nun mal angefangen:
#include <avr/io.h>
int main (void)
{
int x = 0; //Variable x mit dem Anfangszustand 0
DDRC = 0x00; //Port C arbeitet als Eingang
DDRB = 0xff; //Port B arbeitet als Ausgang
while (x =0) //solange an Pin 1 des Portes C Low
{
if { PINC & 0x01} //Wenn an PC 1 Low, dann
{
x = 1; //setze Variable x auf den Wert 1
}
}
if (x == 1) //wenn x den Wert 1 (Taster wurde
gedrückt)
{
PORTB == 0x00; //schalte PB0 auf High
}
}
Kann das Programm fuktionieren? Irgendetwas klappt hier nicht. Kann man
was verbessern?