Forum: Mikrocontroller und Digitale Elektronik Atmega4809 CCL für was?


von Anselm 6. (anselm68)


Lesenswert?

Hallöchen,

wie so oft bei mir fremden Dingen frage ich mich (Euch):
Was kann man sinnvolles mit dieser CCL anfangen?

Gruß und ein schönes laaanges Wochenende
Anselm

von Karl M. (Gast)


Lesenswert?


von Luca E. (derlucae98)


Lesenswert?


von Thomas W. (diddl)


Lesenswert?

Anselm 6. schrieb:
> Was kann man sinnvolles mit dieser CCL anfangen?

Ich habe da einen Datenstrom der ziemlich schnell herein kommt, so alle 
2µs ein Byte (alle 250 nS ein Bit).

Der Datenstrom kommt in ein 8 Bit Schieberegister, was die Sache etwas 
entschärft.

Der Datenstrom tritt spontan auf, wenn 8 Bit gelesen sind, dann kommt 
ein Signal für 250 nS.


Klar geht das auch ohne CCL!

Allerdings darf man sich dann nicht sehr spielen …

Eine Interrupt Routine in C geschrieben braucht zur Initialisierung 
schon zu lange bei einem 16MHz getakteten AVR.

Ohne C, nur in Assembler geht es gerade noch.
Aber da darf kein Anderer Interrupt laufen!

Am besten geht es noch mit Polling des IO.
Aber dann tut der AVR nur noch pollen …

============

Lange Rede kurzer Sinn …

Es gibt zwei Lösungsansätze die beide im Einsatz sind:

- ein kleiner Tiny2313, der nur pollt und die Daten buffert

- eine Hardware (8 Flipflops) die ein Byte cashed



Und nun gibt es eine dritte Lösung, das CCL des Atmega4809.

von Lowkick (Gast)


Lesenswert?

Thomas W. schrieb:

> Und nun gibt es eine dritte Lösung, das CCL des Atmega4809.

Gehe bitte etwas näher auf die Lösung ein. Welche Teile übernimmt das 
CCL?

von Thomas W. (diddl)


Lesenswert?

Lowkick schrieb:
> Gehe bitte etwas näher auf die Lösung ein. Welche Teile übernimmt das
> CCL?

So wie ich das verstanden habe, entspricht es genau der "alten" Lösung 
2, nur dass man sich die 8 Flip-Flops spart.

Neun IO, 8 Daten vom Schieberegister, der neunte IO übernimmt die Daten 
vom Schieberegister wenn das Signal kommt.

Der AVR hat nun 2 µs Zeit, das virtuelle Port zu lesen, anstatt von nur 
250 nS. Er kann sich also nun etwas mehr Zeit lassen.

----------

Mir persönlich gefällt die Lösung mit dem zusätzlichen ATTiny etwas 
besser.
Der konnte sogar mehrere Bytes buffern.
Aber es ist halt eine Kostenfrage.

von Lothar (Gast)


Lesenswert?


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.