Eingang prüfen

Gast #3074239
Lesenswert?
• ▲
▼
Hallo
Ich versuche schin seit Stunden, zu prüfen ob am Eingang PA0 eine 
Spannung anliegt, falls ja, sollte eine LED an PB0 angehen. Jedoch 
leuchtet die LED immer!
So sieht mein C-Code aus:
1
#include <avr/io.h>
2

3
int main(void)
4
{
5
  DDRA  &= ~ (1<<PA0); 
6
           // (3)
7
  DDRB = 1<<PB0;
8
  // (4)
9

10
  
11

12

13
  while (1)
14
  {
15
    if(PINA & (1<<PINA0)) 
16
    {                // (5)
17
      PORTB = 1<<PB0;
18
    }
19
  }
20
    
21
  return 0;
22
}
#3074560
Lesenswert?
• ▲
▼
Und noch was:

Der Eingang darf nicht offen sein. Denn "Nichts" ist nicht gleich Low.

"Nichts" ist einfach nur ein offener Eingang und somit ein undefinierter 
Zustand. Da kann auch in Abhängigkeit vom dem, was da an magnetischen 
Wellen durch die Luft schwirrt, High rauskommen oder besser gesagt 
reingehen.
Gerade gings noch, jetzt klingelt das Handy und schon gehts nicht mehr.

mfg.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.