Taste abfragen

Gast #5232
Lesenswert?
• ▲
▼
Hallo Leute,
vielleicht liegt es daran das es schon so spaet ist aber kann
mir einer erkaleren warum das nicht klappt ?

#include <io.h>
#include <progmem.h>
#include <iomacros.h>
unsigned int wert=0;

int main (void)
{
  outp(0x00, DDRD);
  for(;;)
  wert=(inp(PORTD));
}


Vielen Dank im voraus

Michael
Gast #5235
Lesenswert?
• ▲
▼
War doch ein bisschen spaet.

Wenn ich dieses Programm im AVR Studio simuliere muesste
eine gedrueckte Taste von PORTD als Hex-Wert in meiner Variablen Wert
erscheinen. Tut es aber nicht.


Gruss

Michael
Gast #5237
Lesenswert?
• ▲
▼
Geht aber leider immer noch nicht PIND hatte ich schon ausprobiert.
Liegt es vielleicht an meinem AVR-Studio ???
Vielleicht werden die variablen nicht richtig ausgegeben?

Loesung waere super.

Gruss

Michael
Gast #5239
Lesenswert?
• ▲
▼
Hallo erstma' ... ich (als neuling ) sas gerade am gleichen problem ... 
wenn ich von PINn lese gets tatsechlich ... aber wiso muss ich das ? ich 
blicke durch das Datenblatt wohl nicht so ganz durch...
Gast #5240
Lesenswert?
• ▲
▼
Pro Port gibt es 3 Register:
DDRn  Richtung ( Ein- Ausgang ) einstellen
Portn Schreib- und lesbares Register in dem der "Sollwert" der Portpins 
geschrieben wird.
Pinn  Tatsächlicher Zustand am Portpin.
Gast #5243
Lesenswert?
• ▲
▼
Nabend, bit_is_set ist mir garnicht bekannt... ich denke da eher an:

if (inp(PINA) == 0b00000100)
{
  ...
}

oder (da avrgcc ja von hausaus keine binärzahlen akzeptiert):

if (inp(PINA) == 0x04)
{
  ...
}
Gast #5245
Lesenswert?
• ▲
▼
bit_is_set(PINA,3)

ist ein Makro welches in der io.h Headerdatei definiert ist wenn das 3. 
Bit an PINA gesetzt ist wird eine 1 weitergegeben  wenn nicht eine 0


bei
bit_is_clear(PINA,3)
ist es genau anderstherum

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.