Delay loop generator

Avra
Schreiberling
Avatar
Geschlecht:
Herkunft: Belgrade, Serbia
Alter: 54
Homepage: rs.linkedin.com/in…
Beiträge: 653
Dabei seit: 07 / 2002
Betreff:

Delay loop generator

 · 
Gepostet: 03.01.2008 - 09:42 Uhr  ·  #1
Merlin
Administrator
Avatar
Geschlecht:
Alter: 25
Beiträge: 1474
Dabei seit: 03 / 2005
Betreff:

Re: Delay loop generator

 · 
Gepostet: 03.01.2008 - 10:25 Uhr  ·  #2
There are a few gotchas here.

R17 and R18 are an unexpected choice. R17 is _ACCA, but _ACCB (the obvious partner) is R16.

R17 in particular is well used so you need to PUSH and POP both registers which takes up a number of cycles (2 each - a total of 8 cycles).

Obviously you need to disable and enable interrupts, which might need to be taken into account.

Finally, in AVRCo assembler, the labels must be on separate lines.

Regards

Merlin.
Avra
Schreiberling
Avatar
Geschlecht:
Herkunft: Belgrade, Serbia
Alter: 54
Homepage: rs.linkedin.com/in…
Beiträge: 653
Dabei seit: 07 / 2002
Betreff:

Re: Delay loop generator

 · 
Gepostet: 03.01.2008 - 11:17 Uhr  ·  #3
I am aware of needed changes (it is designed for AVR Studio, not for AvrCo), but it is interesting anyway for some special applications. Registers are chosen from a drop list so we can choose ones which are more friendly with AvrCo and avoid PUSH/POP. I don't need this delay very often so it would not pay off to make this small application that generates real AvrCo code by my self, so I can live with it's faults that can be hand corrected.
Merlin
Administrator
Avatar
Geschlecht:
Alter: 25
Beiträge: 1474
Dabei seit: 03 / 2005
Betreff:

Re: Delay loop generator

 · 
Gepostet: 03.01.2008 - 11:27 Uhr  ·  #4
Ah I see.

I missed the fact that it is an application that generates the code - even though it is obvious. Doh!

My apologies.

Merlin.
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 25
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: Delay loop generator

 · 
Gepostet: 03.01.2008 - 12:02 Uhr  ·  #5
Hello Avra,

and what about the "uDelay" of AVRco? Or the sDelay? Or the mDelay? Or SysTimers?
Is there really a need for such a delay generator?

rolf
Avra
Schreiberling
Avatar
Geschlecht:
Herkunft: Belgrade, Serbia
Alter: 54
Homepage: rs.linkedin.com/in…
Beiträge: 653
Dabei seit: 07 / 2002
Betreff:

Re: Delay loop generator

 · 
Gepostet: 04.01.2008 - 09:38 Uhr  ·  #6
Once I needed that to generate very short and specific signals in interrupt. Another appliance that comes to my mind is tv/video signal generation. Speaking of video, that's one of the reasons I am looking forward for XMEGA. :lupe: With fast 2Msps ADC, frame grabbing is possible without external components (it can all fit in RAM since I need just 1 FPS and 32x32 in 16 grays).
Avra
Schreiberling
Avatar
Geschlecht:
Herkunft: Belgrade, Serbia
Alter: 54
Homepage: rs.linkedin.com/in…
Beiträge: 653
Dabei seit: 07 / 2002
Betreff:

Re: Delay loop generator

 · 
Gepostet: 07.10.2010 - 09:16 Uhr  ·  #7
Avra
Schreiberling
Avatar
Geschlecht:
Herkunft: Belgrade, Serbia
Alter: 54
Homepage: rs.linkedin.com/in…
Beiträge: 653
Dabei seit: 07 / 2002
Betreff:

Re: Delay loop generator

 · 
Gepostet: 05.01.2011 - 02:59 Uhr  ·  #8
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.
MySQL Queries: 15 · Cache Hits: 14   109   123 · Page-Gen-Time: 0.037517s · Speichernutzung: 2 MB · GZIP: ein · Viewport: SMXL-HiDPI