Forum: Mikrocontroller und Digitale Elektronik AVR Tiny22L s08


von UncleDave (Gast)


Lesenswert?

Moin Leute,

ich bin gerade erst dabei in die sache einzusteigen und
verzweilfel ein wenig^^

eigendlich wollte ich nur ne kleine sache realisieren
und zwar hab ich hier noch n tiny 22L s08 rumliegen,
der sollte dann folgendes machen

auf einen tasterdruck soll ein ausgang für 2minuten auf 1 gesezt werden
wenn das gute stück dann nich in den sleep modus versetzt werden könnte 
um die baterien zu schonen wäre klasse.

nachdem was ich hier lese is das sicher ne kleinigkeit für euch:)
ich hoff mir kann dabei wer helfen.
schon allein um mal zusehen wie das aussehen muss.

thx schonmal

gruss Dave

von Magnus Müller (Gast)


Lesenswert?

UncleDave wrote:
> ich bin gerade erst dabei in die sache einzusteigen und
> verzweilfel ein wenig^^

Musst du dich nicht schämen. Aller Anfang ist schwer.

> eigendlich wollte ich nur ne kleine sache realisieren
> und zwar hab ich hier noch n tiny 22L s08 rumliegen,
> der sollte dann folgendes machen

lausch

> auf einen tasterdruck soll ein ausgang für 2minuten auf 1 gesezt werden
> wenn das gute stück dann nich in den sleep modus versetzt werden könnte
> um die baterien zu schonen wäre klasse.

Klingt schon mal nett...

> nachdem was ich hier lese is das sicher ne kleinigkeit für euch:)

Mag sein...

> ich hoff mir kann dabei wer helfen.

Sicher...

> schon allein um mal zusehen wie das aussehen muss.
>
> thx schonmal

Du erwartest jetzt aber nicht im Ernst, dass dir hier jemand einfach so 
die Arbeit abnimmt!?!?!!!

Was hast du bis jetzt selbst unternommen, um die "Aufgabe" zu lösen?

von Mark R. (Firma: me) (lechuck)


Lesenswert?

Oder mit anderen Worten: Poste mal deinen Quellcode

von UncleDave (Gast)


Lesenswert?

jop schon verstanden,

die unterschwellige botschaft hab ich schon vernommen:)
der post war eigendlich ne verzweiflungstat,
da ich dachte das ja nicht viel die paar zeilen,..

hab mal sowas mit turbo pascal gemacht, war allerdings in der ausbildung 
und is schon ne weile her:)
so in der art wie,

10 if port0 =1 goto
20 sleep
40
...
allerdings dann begriffen hab das die geschichte ganz andere ausmasse 
annimmt.

denke ma ich muss echt ganz von 0 anfangen.
spiel gerad mit dem gedanken mir n buch darüber zuzulegen, wäre wohl die 
beste lösung.
kann mir da wer eins empfehlen?


greetz Dave

von UncleDave (Gast)


Lesenswert?

moin Leute,

bin mittlerweile schon etwas weiter gekommen,
hab mir n pic 12f508 bestellt, da ich da ne feine seite gefunden hab 
mich einzulesen

event könnt sich wer mal mein code kurz betrachten
so wie ich das nun interprtieren kann sollte
GP0 am start auf 1 liegen,
danacht läuft ne schleife, sollten so um die 2500µ sec sein
anschliessend GP0 auf 0
und ab in den schlafmodus,
über den resettaster bei bedarf wiederholbar
1
;**************************************************************************
2
;*        Pinbelegung
3
;*        -------------------------
4
;*        GP:  0> LED
5
;*             3> Reset
6
;**************************************************************************
7
;
8
;    2min timer an pin GP0
9
;    Prozessor 12F508  
10
;    Prozessor-Takt 4 MHz intern
11
;
12
;**************************************************************************
13
14
  #include <p12f508.inc>
15
16
  _config _cp_off & wdt_off
17
  
18
  TOCS                        ; 1/4 des taktes =1Mhz
19
  PSA          ; teiler Verwenden  
20
  PS2, PS1 ,PS0, 111      ; 256:1 teiler =256µs=1 
21
  
22
23
  #Define LED GPIO,0
24
25
26
  BSF LED      ;LED an
27
loop
28
  MOVLW    250        ; 5 ins Arbeitsregister laden
29
  MOVWF    0x20     ; die 5 wird in die Speicherzelle 0x20 kopiert
30
  nop
31
  nop  
32
  nop
33
  nop
34
  nop
35
  nop
36
  nop
37
  nop
38
  nop
39
  decfsz  0x20,1
40
  goto  loop
41
  BCF LED          ;LED aus
42
  Sleep                ;n8i
43
44
end
45
46
***************************************************************************
47
* mit resettaster soll die ganze geschichte von vorn beginnen

bei der realisierung im sec takt tu ich mich immo noch schwer,
werd wohl noch viel lesen müssen^^
testen kann ich leider erst am we.
aber es geht voran :)
nicht das hier jemand meint ich will selbst nix machen und hoffe darauf 
das mir wer das abnimmt:)^^

von UncleDave (Gast)


Lesenswert?

auf ein neues,
hab mir aus ner alten uhr n quarz besorgt,
mit teiler 32:1 sollte das ganze nicht so aufwendig werden:)
1
;****************************************************************************************
2
;*
3
;*        Pinbelegung
4
;*        -------------------------
5
;*        GP:  0> LED
6
;*         3> Reset
7
;*
8
;****************************************************************************************
9
;
10
;    2min timer an pin GP0
11
;    Prozessor 12F508  
12
;    Prozessor-Takt 32 KHz extern
13
;
14
;****************************************************************************************
15
16
  #include <p12f508.inc>
17
18
                
19
  __CONFIG        _PWRTE_ON & _WDT_OFF & _LP_OSC  ;Power on Timer, kein Watchdog, 
20
              ;LP-Oscillator
21
22
  #Define LED GPIO,0
23
  movlw   B'10000100'        ;vorteiler 32:1<-?
24
25
;****************************************************************************************
26
27
  
28
  BSF LED    ; LED an
29
  
30
loop      ;
31
  MOVLW    12     ; 12 ins Arbeitsregister laden
32
  MOVWF    0x20   ; die 12 wird in die Speicherzelle 0x20 kopiert
33
  nop
34
  nop
35
  nop
36
  nop
37
  nop
38
  nop
39
  nop
40
  nop
41
  nop
42
  decfsz  0x20,1  ; verringert 0x20 um 1
43
  goto  loop
44
  BCF LED    ; LED aus
45
  Sleep
46
end
bin mir nicht ganz sicher ob ich den teiler so richtig eingestellt hab.
greetz Dave

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.