kann man bei sleep eine bestimmte zeit vorgeben wie lange er warten soll in sec oder ms
Fast so wie beim Menschen auch - man stellt einen Wecker(Timer) VOR dem Einschlafen, aktiviert ihn und läßt sich vom Timer-Interrupt aus dem Schlaf reißen.
Der Sleep-befehl funktioniert wie das echte Leben. Du stehst morgens auf, nachdem der Wecker geklingelt hat. Der Controller wacht auf, wenn ein Interrupt ihn weckt. Welche Interrupts den Controller aufwecken steht im Datenblatt. MW
Geht es dir wirklich darum den Prozessor in einen Sleep-Modus zubringen, d.h. zwecks Stromsparens ihn größten Teils abzuschalten oder möchtest du nur deine Programmausführung für eine gewisse Zeit unterbrechen? Grüße
pass auf ich schreib gerade das programm hab ein teil schon fertig .include "2313def.inc" ldi r16, 0xFF ;PORTB als ausgang definieren out DDRB, r16 ldi r16, 0x00 ;PORTD als eingang definieren out DDRD, r16 anfang: sbi PORTB, 1 sbi PORTB, 2 sbi PORTB, 3 ;Ampel im ersten zustand loop: sbic PIND, 0 rjmp loop sbi PORTB, 4 ; Grüne led in der Dreierbank aus cbi PORTB, 3 ; Gelbe led in der Dreierbank an ;Hier Programmstopp sbi PORTB, 3 ;Gelbe led in der Dreierbank aus
Also wenn Du BasCom meinst, das ist genau genommen keine Freeware, aber es gibt eine kostenlose und voll funktionsfähige Demo. Einzige Einschränkund der Demo: Die Programmgröße ist begrenzt, allerdings sehr großzügig. Man kann da übrigens auch Basic und Assembler mixen. http://www.mcselec.com/download.htm
aber gibs keine andere möglichkeit in avr studio eine programmstop zu generieren das is doch bestimmt eine schleife oder so
ja klar, das geht auch, nur verschachtelten Schleifen, damit es lange genug dauert..
Hi, für Assembler gibt es ein Programm welches dir die benötigten Schleifen für den gewünschten DELAY erstellt. In der Oberfläche gibst du nur ein paar Eckdaten ein, wie Systemtakt, Länge des Delays und welche Register verwendet werden dürfen. Darauf generiert dir die Software den Assembler Quellcode der Schleifen. http://www.home.unix-ag.org/tjabo/avr/AVRdelayloop.html Wirklich sehr praktisch Grüße
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.