mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Sleep Pic C++


Autor: kurtz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

wie versetze ich den Pic in Schlaf und lasse Ihn wieder aufwachen alle x 
minuten oder per Interrupt. Vorallem wie schreibt man das C++ Programm 
dafür wenn ich sleep(); schreiben möchte und dann eine Routine 
aufgerufen wird welche die Assembler settings macht.

Vielen Dank

Autor: Schoasch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit welchem Compiler schreibst du denn dein Programm? WElchen PIC 
verwendest du?

mfg Schoasch

Autor: kurtz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
c18

p81f4520

Autor: Schoasch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Hast du es schonmal mit:
Sleep();
probiert? (Betonung liegt auf die Grosschreibung ;-))

Ansonst wirf einen Blick in die Header, da findest du dann folgende 
Zeile:
#define Sleep()  {_asm sleep _endasm}

mfg Schoasch

PS.: Soweit ich weis ist der C18 kein C++ Compiler, oder irre ich mich 
da jetzt?!

Autor: Schoasch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aja und zum aufwecken steht folgendes im Datenblatt:
*********
Entering the Sleep mode from any other mode does not
require a clock switch. This is because no clocks are
needed once the controller has entered Sleep. If the
WDT is selected, the INTRC source will continue to
operate. If the Timer1 oscillator is enabled, it will also
continue to run.
When a wake event occurs in Sleep mode (by interrupt,
Reset or WDT time-out), the device will not be clocked
until the clock source selected by the SCS1:SCS0 bits
becomes ready (see Figure 3-6), or it will be clocked
from the internal oscillator block if either the Two-
Speed Start-up or the Fail-Safe Clock Monitor are
enabled (see Section 23.0 “Special Features of the
CPU”). In either case, the OSTS bit is set when the
primary clock is providing the device clocks. The
IDLEN and SCS bits are not affected by the wake-up.
*****

Autor: kurtz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ah "s"leep();

hatte ich versucht

aber nicht "S"

mal sehen. THX

Wie lasse ich den Pic jetzt nach x minuten wieder aufwachen und vorallem 
wie schreibe ich den C++ code das er per Int aufgeweckt wird?

danke

Autor: Willivonbienemaya .. (willivonbienemaya)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vor allem ist das C, nicht C++ und
vor allem lies mal das posting über deiner Frage.

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.