www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Kondensator entladen


Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, bin einigermaßen neu im Mikrokontrollergeschäft, bitte helft mir 
doch bei einer Frage.

Will gerade das Drumpad auf der ispf-Seite nachbauen und hab mal ne 
Frage zum Code. Man muss ja den Kondensator bei gespieltem Ton ja über 
einen Port entladen. Im Programm funktioniert das offensichtlich durch

PORTC&= ~(1<<Channel); /* discharge capacicator */
          TData[Channel]=0;

gehört die zweite Zeile auch dazu??

und was bedeutet eigentlich dieses " ~(1<<Channel)  " ?

Kann ich auch schreiben: Port_DataDirBit(Port_sowieso, Port_IN);  ?

Oder muss ich irgendwie was mit "LOW" schreiben?

Wann muss ich Ihn dann wieder auf high setzen und wie geht das?
Er braucht ja einige Zeit zum entladen oder?


Vielen Dank

Thomas

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas schrieb:
> und was bedeutet eigentlich dieses " ~(1<<Channel)  " ?

http://www.mikrocontroller.net/articles/Bitmanipulation

Autor: Tüll (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas schrieb:
> Oder muss ich irgendwie was mit "LOW" schreiben?

Ne das tönt eher nach Arduino.
In C machst du das eben mit PORTC &= ~(1<<Channel);
(Bit Nr. "Channel" von PortC wird so auf 0 gesetzt).

Besuch mal den Link von obigem Beitrag und lies besser auch mal das 
ganze Tutorial hier durch.

Der 10nF Kondensator sollte sehr schnell entladen sein. Kannst aber 
schon nicht gerade in der nächsten Anweisung den Port wieder 
umschalten...
Man kann das ausrechnen, aber ich weiss nicht gerade auswendig wie.

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Antworten

Um den "Entladungspin" dann wieder "zu" zu schalten kann ich dann etwas 
später

PORTC|=(1<<Channel);

schreiben oder?

Danke
Thomas

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.