Forum: Mikrocontroller und Digitale Elektronik Ausgang setzen


von Volker (Gast)


Lesenswert?

Hallo zusammen,

ich hab eigentlich eine ganz einfache frage, ich würde gerne einen 
Ausgang von meinem Microcontroller auf "1" und wenn das geklappt hat 
wieder auf "0" setzen.

bisher habe ich folgend Programm geschrieben:
#include <avr/io.h>

int main (void) {

   // PC0 als Ausgang setzen
   DDRC  = (1<<PC0);
   // PC0 auf 1 setzen


   while(1) {

   }
   return 0;

}

allerdings wird mein Ausgang nicht gesetzt, kann mir jemand sagen was 
ich falsch mache, bzw, wie muss ich mein Programm ergänzen?

sorry bin totaler Anfänger

von troll (Gast)


Lesenswert?

bitmanipulation

Mit DDRx bestimmst du nur die Richtung vom Port (Ein/Ausgang).
Wenn Ausgang musst du PORTx beschreiben um die Pins zu setzen / zu 
löschen.
Guckst du Datenblatt.

von Al3ko -. (al3ko)


Lesenswert?

> allerdings wird mein Ausgang nicht gesetzt, kann mir jemand sagen was
> ich falsch mache, bzw, wie muss ich mein Programm ergänzen?
1
> #include <avr/io.h>
2
int main (void) {
3
 
4
    // PC0 als Ausgang setzen
5
    DDRC  = (1<<PC0);
6
    // PC0 auf 1 setzen
7
  PORTC |= (1<<PC0);
8
 
9
    while(1) {
10
 
11
    }
12
    return 0;
13
 
14
 }

von Volker (Gast)


Lesenswert?

ok, und wie setzte ich ihn wieder auf "0"

von Karl H. (kbuchegg)


Lesenswert?

Lies bitte die Links!

Genau aus dem Grund hat sich nämlich mal wer hingesetzt und das alles in 
Artikln zusammengefasst, damit man nicht bei jedem wieder bei 0 anfangen 
muss mit erklären

Bitmanipulation
AVR-GCC-Tutorial

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.